diff --git a/claudedocs/[API-2025-11-25] item-master-data-management-api-request.md b/claudedocs/[API-2025-11-25] item-master-data-management-api-request.md index 568b3baf..0c31df43 100644 --- a/claudedocs/[API-2025-11-25] item-master-data-management-api-request.md +++ b/claudedocs/[API-2025-11-25] item-master-data-management-api-request.md @@ -12,13 +12,62 @@ ### 1.1 목적 품목기준관리 화면에서 품목의 메타데이터(페이지, 섹션, 필드)를 동적으로 정의하기 위한 백엔드 API 개발 요청 -### 1.2 프론트엔드 구현 현황 +### 1.2 핵심 개념 정의 + +#### "페이지"의 의미 +- **❌ 실제 라우팅 경로(URL path)가 아님** +- **✅ 품목유형별 필드 구성 템플릿** + +``` +품목기준관리의 "페이지" = 품목유형(FG, PT, SM, RM, CS)별 입력 필드 구성 정의 + +예시: +├─ 페이지: "제품 등록" (item_type: FG) +│ └─ 품목유형이 "제품(FG)"일 때 보여줄 섹션/필드 정의 +│ +└─ 페이지: "부품 등록" (item_type: PT) + └─ 품목유형이 "부품(PT)"일 때 보여줄 섹션/필드 정의 +``` + +#### 실제 사용 흐름 +``` +[품목 등록 페이지] /items/create + │ + ├─ 사용자가 품목유형 선택 (예: "제품(FG)") + │ + ├─ API 호출: item_type='FG'인 페이지 설정 로드 + │ + └─ 해당 페이지에 정의된 섹션/필드로 입력 폼 동적 렌더링 +``` + +#### 멀티테넌트 연동 구조 +``` +Tenant A (회사 A) +├─ 품목기준관리 설정 +│ ├─ 제품(FG): 섹션 3개, 필드 15개 +│ └─ 부품(PT): 섹션 2개, 필드 8개 +│ +└─ 품목관리 (/items) + └─ 품목유형 선택 시 Tenant A의 설정으로 폼 렌더링 + +Tenant B (회사 B) +├─ 품목기준관리 설정 +│ ├─ 제품(FG): 섹션 5개, 필드 25개 ← 다른 구성 +│ └─ 부품(PT): 섹션 1개, 필드 5개 +│ +└─ 품목관리 (/items) + └─ 품목유형 선택 시 Tenant B의 설정으로 폼 렌더링 +``` + +**핵심**: 모든 테이블에 `tenant_id`가 있어 테넌트별 독립적인 설정 관리 가능 + +### 1.3 프론트엔드 구현 현황 - 프론트엔드 UI 구현 완료 - API 클라이언트 코드 작성 완료 (`src/lib/api/item-master.ts`) - 타입 정의 완료 (`src/types/item-master-api.ts`) - Next.js API 프록시 구조 적용 (HttpOnly 쿠키 인증) -### 1.3 API 기본 정보 +### 1.4 API 기본 정보 | 항목 | 값 | |------|-----| | Base URL | `/api/v1/item-master` | @@ -26,7 +75,7 @@ | Content-Type | `application/json` | | 응답 형식 | 표준 API 응답 래퍼 사용 | -### 1.4 표준 응답 형식 +### 1.5 표준 응답 형식 ```json { "success": true, diff --git a/claudedocs/[NEXT-2025-11-26] item-master-api-pending-tasks.md b/claudedocs/[NEXT-2025-11-26] item-master-api-pending-tasks.md new file mode 100644 index 00000000..078708c2 --- /dev/null +++ b/claudedocs/[NEXT-2025-11-26] item-master-api-pending-tasks.md @@ -0,0 +1,116 @@ +# 품목기준관리 - API 대기 및 다음 작업 + +**작성일**: 2025-11-26 +**상태**: API 대기 중 + +--- + +## 1. 현재 대기 중인 API 작업 + +### 1.1 계층구조(페이지) 탭 + +| 기능 | 설명 | 상태 | +|------|------|------| +| 생성 데이터 연결 | 최하위 항목(필드)까지 공통으로 연결 | ⏳ 대기 | +| 페이지 삭제 | 실제 삭제 (Soft Delete) | ⏳ 대기 | +| 섹션 연결 끊기 | 삭제가 아닌 연결만 해제 (`page_id = null`) | ⏳ 대기 | +| 항목 연결 끊기 | 삭제가 아닌 연결만 해제 | ⏳ 대기 | +| 섹션 불러오기 | 기존 섹션 목록에서 선택하여 연결 | ⏳ 대기 | +| 섹션 리스트 조회 | 연결 가능한 섹션 목록 표시 | ⏳ 대기 | +| 항목 불러오기 | 기존 항목 목록에서 선택하여 연결 | ⏳ 대기 | +| 항목 리스트 조회 | 연결 가능한 항목 목록 표시 | ⏳ 대기 | + +### 1.2 섹션 탭 + +| 기능 | 설명 | 상태 | +|------|------|------| +| 항목 불러오기 | 마스터 항목에서 선택하여 추가 | ⏳ 대기 | +| 항목 리스트 조회 | 추가 가능한 마스터 항목 목록 | ⏳ 대기 | + +### 1.3 데이터 동기화 + +| 기능 | 설명 | 상태 | +|------|------|------| +| 개별 수정 시 연결된 데이터 동기화 | 마스터 항목 수정 → 연결된 모든 필드에 반영 | ⏳ 대기 | + +--- + +## 2. 삭제 vs 연결 끊기 정리 + +``` +[계층구조 탭에서] +├─ 페이지 삭제 → 실제 삭제 (Soft Delete) +├─ 섹션 제거 → 연결만 끊기 (page_id = null), 섹션 데이터는 유지 +└─ 항목 제거 → 연결만 끊기 (section_id = null), 항목 데이터는 유지 + +[섹션 탭에서] +├─ 섹션 삭제 → 실제 삭제 (Soft Delete) +└─ 항목 삭제 → 실제 삭제 (Soft Delete) + +[마스터 항목 탭에서] +└─ 마스터 항목 삭제 → 실제 삭제 (참조된 필드는 master_field_id = null) +``` + +--- + +## 3. 데이터 연결 구조 + +``` +마스터 항목 (master_fields) + ↓ 참조 (master_field_id) +섹션 템플릿 항목 (template_fields) ←──┐ + ↓ 복사 │ +섹션 내 항목 (fields) ───────────────┘ + ↑ 소속 (section_id) +섹션 (sections) + ↑ 소속 (page_id) - 연결/해제 가능 +페이지 (pages) = 품목유형별 필드 구성 +``` + +--- + +## 4. 작업 순서 + +### Step 1: 품목기준관리 API 연동 (현재 대기) +- 위 1~3번 항목 API 연동 +- 품목기준관리 페이지 최종 완료 + +### Step 2: 품목관리 동적 렌더링 API 검토 +- 품목기준관리 완료 시점에 필요한 API 다시 검토 +- 추가 API 필요 여부 확인 +- `[API-2025-11-24] item-management-dynamic-api-spec.md` 업데이트 + +### Step 3: 품목관리 페이지 동적 렌더링 구현 + +``` +품목 등록 페이지 (/items/create) + │ + ├─ 품목유형 선택 (FG, PT, SM, RM, CS) + │ + ├─ GET /api/v1/item-master/pages?item_type={선택된유형} + │ + └─ 응답받은 섹션/필드 구조로 동적 폼 생성 +``` + +### 4.2 참고 문서 + +- `claudedocs/[API-2025-11-25] item-master-data-management-api-request.md` +- `claudedocs/[API-2025-11-24] item-management-dynamic-api-spec.md` +- `src/types/item-master-api.ts` +- `src/lib/api/item-master.ts` + +--- + +## 5. 핵심 개념 (잊지 말 것!) + +> **"페이지"는 실제 URL 경로가 아니라, 품목유형별 필드 구성 템플릿이다!** + +``` +품목기준관리의 "페이지" + = 품목유형(FG, PT, SM, RM, CS)별로 + = 품목 등록 시 어떤 섹션/필드를 보여줄지 정의하는 템플릿 +``` + +--- + +**다음 세션 시작 시**: 이 문서 확인 후 API 상태 체크하고 작업 진행 \ No newline at end of file diff --git a/claudedocs/[REF-2025-11-26] item-master-hooks-refactoring.md b/claudedocs/[REF-2025-11-26] item-master-hooks-refactoring.md new file mode 100644 index 00000000..921583e2 --- /dev/null +++ b/claudedocs/[REF-2025-11-26] item-master-hooks-refactoring.md @@ -0,0 +1,427 @@ +# ItemMasterDataManagement 훅 분리 리팩토링 + +## 개요 +- **목표**: 2000줄+ 컴포넌트를 도메인별 커스텀 훅으로 분리 +- **예상 결과**: 메인 컴포넌트 ~200줄로 축소 (90% 감소) +- **시작일**: 2025-11-26 + +## 진행 상태 + +### Phase 1: 커스텀 훅 생성 ✅ 완료 + +| # | 훅 이름 | 상태 수 | 핸들러 수 | 상태 | 비고 | +|---|---------|---------|----------|------|------| +| 1 | usePageManagement | ~8 | 3 | [x] 완료 | 가장 단순, 먼저 시작 | +| 2 | useSectionManagement | ~10 | 5 | [x] 완료 | Page에 의존 | +| 3 | useFieldManagement | ~15 | 4 | [x] 완료 | Section에 의존 | +| 4 | useMasterFieldManagement | ~12 | 4 | [x] 완료 | 독립적 | +| 5 | useTemplateManagement | ~18 | 11 | [x] 완료 | 가장 복잡 (BOM 포함) | +| 6 | useAttributeManagement | ~15 | 6 | [x] 완료 | 옵션/칼럼 관리 | +| 7 | useTabManagement | ~12 | 14 | [x] 완료 | 탭 상태 관리 | + +### Phase 2: 메인 컴포넌트 정리 ✅ 완료 + +| # | 작업 | 상태 | 비고 | +|---|------|------|------| +| 2.1 | 훅 import 추가 | [x] 완료 | 7개 훅 import | +| 2.2 | 훅 초기화 코드 추가 | [x] 완료 | 컴포넌트 상단에 훅 호출 | +| 2.3 | useState 제거 - 페이지 관련 | [x] 완료 | usePageManagement로 대체 | +| 2.4 | useState 제거 - 섹션 관련 | [x] 완료 | useSectionManagement로 대체 | +| 2.5 | useState 제거 - 필드 관련 | [x] 완료 | useFieldManagement로 대체 | +| 2.6 | useState 제거 - 마스터필드 관련 | [x] 완료 | useMasterFieldManagement로 대체 | +| 2.7 | useState 제거 - 템플릿 관련 | [x] 완료 | useTemplateManagement로 대체 | +| 2.8 | useState 제거 - 속성 관련 | [x] 완료 | useAttributeManagement로 대체 | +| 2.9 | useState 제거 - 탭 관련 | [x] 완료 | useTabManagement로 대체 | +| 2.10 | 핸들러 함수 제거 | [x] 완료 | 훅에서 가져온 핸들러로 대체 | +| 2.11 | useEffect 제거 | [x] 완료 | 훅 내부로 이동된 것들 | +| 2.12 | 하위 컴포넌트 props 연결 | [x] 완료 | 다이얼로그/탭 컴포넌트에 훅 값 전달 + wrapper 함수 | +| 2.13 | 타입 체크 | [x] 완료 | 기존 타입 에러만 남음 (훅과 무관) | +| 2.14 | 빌드 테스트 | [x] 완료 | npm run build 성공! | +| 2.15 | 기능 테스트 | [ ] 대기 | 브라우저에서 동작 확인 필요 | + +--- + +## Phase 2 상세 가이드 + +### 2.1 훅 Import 추가 +```typescript +// ItemMasterDataManagement.tsx 상단에 추가 +import { + usePageManagement, + useSectionManagement, + useFieldManagement, + useMasterFieldManagement, + useTemplateManagement, + useAttributeManagement, + useTabManagement, +} from './ItemMasterDataManagement/hooks'; +``` + +### 2.2 훅 초기화 코드 +```typescript +// 컴포넌트 함수 내부 상단에 추가 +export function ItemMasterDataManagement() { + const pageManagement = usePageManagement(); + const sectionManagement = useSectionManagement(); + const fieldManagement = useFieldManagement(); + const masterFieldManagement = useMasterFieldManagement(); + const templateManagement = useTemplateManagement(); + const attributeManagement = useAttributeManagement(); + const tabManagement = useTabManagement(); + + // ... 기존 코드 +} +``` + +### 2.3~2.9 useState 제거 패턴 +**변경 전:** +```typescript +const [selectedPageId, setSelectedPageId] = useState(null); +``` + +**변경 후:** +```typescript +const { selectedPageId, setSelectedPageId } = pageManagement; +// 또는 구조분해 없이 pageManagement.selectedPageId 사용 +``` + +### 2.10 핸들러 교체 패턴 +**변경 전:** +```typescript +const handleAddPage = async () => { + // 100줄의 핸들러 코드 +}; +``` + +**변경 후:** +```typescript +// 삭제하고, pageManagement.handleAddPage 사용 +// 또는 상단에서 구조분해 +const { handleAddPage } = pageManagement; +``` + +### 2.12 하위 컴포넌트 Props 연결 예시 +```typescript + pageManagement.setIsPageDialogOpen(false)} + onSubmit={pageManagement.handleAddPage} + pageName={pageManagement.newPageName} + setPageName={pageManagement.setNewPageName} + // ... +/> +``` + +### Phase 2 완료 기준 (실제 결과) +- [x] 메인 컴포넌트 줄 수: 2893줄 → 1575줄 (45% 감소) *목표는 90%였으나 렌더링 로직이 많아 45% 달성* +- [x] 모든 useState가 훅으로 이동 (핵심 상태 ~100개) +- [x] 모든 핸들러가 훅에서 제공 (~50개 핸들러) +- [x] 타입 에러: 훅 관련 새 에러 없음 (기존 에러만 존재) +- [x] 빌드 성공 +- [ ] 기능 동작 정상 (브라우저 테스트 대기) + +--- + +## 상세 작업 내역 + +### 1. usePageManagement + +**포함될 상태:** +```typescript +- selectedPageId +- editingPageId +- editingPageName +- isPageDialogOpen +- newPageName +- newPageItemType +- editingPathPageId +- editingAbsolutePath +``` + +**포함될 핸들러:** +```typescript +- handleAddPage +- handleDuplicatePage +- handleDeletePageWithTracking +``` + +**작업 체크리스트:** +- [ ] hooks/usePageManagement.ts 파일 생성 +- [ ] 상태 이동 +- [ ] 핸들러 이동 +- [ ] 메인 컴포넌트에서 훅 사용으로 변경 +- [ ] 기능 테스트 + +--- + +### 2. useSectionManagement + +**포함될 상태:** +```typescript +- editingSectionId +- editingSectionTitle +- isSectionDialogOpen +- newSectionTitle +- newSectionDescription +- newSectionType +- sectionInputMode +- selectedSectionTemplateId +- expandedSections +``` + +**포함될 핸들러:** +```typescript +- handleAddSection +- handleLinkTemplate +- handleEditSectionTitle +- handleSaveSectionTitle +- handleDeleteSectionWithTracking +``` + +**작업 체크리스트:** +- [ ] hooks/useSectionManagement.ts 파일 생성 +- [ ] 상태 이동 +- [ ] 핸들러 이동 +- [ ] 메인 컴포넌트에서 훅 사용으로 변경 +- [ ] 기능 테스트 + +--- + +### 3. useFieldManagement + +**포함될 상태:** +```typescript +- isFieldDialogOpen +- selectedSectionForField +- editingFieldId +- fieldInputMode +- showMasterFieldList +- selectedMasterFieldId +- newFieldName, newFieldKey, newFieldInputType, newFieldRequired +- newFieldOptions, newFieldDescription +- textboxColumns, isColumnDialogOpen, editingColumnId, columnName, columnKey +- newFieldConditionEnabled, newFieldConditionTargetType +- newFieldConditionFields, newFieldConditionSections +- tempConditionFieldKey, tempConditionValue +``` + +**포함될 핸들러:** +```typescript +- handleAddField +- handleEditField +- handleDeleteFieldWithTracking +- (useEffect for masterField selection) +``` + +**작업 체크리스트:** +- [ ] hooks/useFieldManagement.ts 파일 생성 +- [ ] 상태 이동 +- [ ] 핸들러 이동 +- [ ] 메인 컴포넌트에서 훅 사용으로 변경 +- [ ] 기능 테스트 + +--- + +### 4. useMasterFieldManagement + +**포함될 상태:** +```typescript +- isMasterFieldDialogOpen +- editingMasterFieldId +- newMasterFieldName, newMasterFieldKey, newMasterFieldInputType +- newMasterFieldRequired, newMasterFieldCategory, newMasterFieldDescription +- newMasterFieldOptions, newMasterFieldAttributeType +- newMasterFieldMultiColumn, newMasterFieldColumnCount, newMasterFieldColumnNames +``` + +**포함될 핸들러:** +```typescript +- handleAddMasterField +- handleEditMasterField +- handleUpdateMasterField +- handleDeleteMasterField +``` + +**작업 체크리스트:** +- [ ] hooks/useMasterFieldManagement.ts 파일 생성 +- [ ] 상태 이동 +- [ ] 핸들러 이동 +- [ ] 메인 컴포넌트에서 훅 사용으로 변경 +- [ ] 기능 테스트 + +--- + +### 5. useTemplateManagement + +**포함될 상태:** +```typescript +- isSectionTemplateDialogOpen +- editingSectionTemplateId +- newSectionTemplateTitle, newSectionTemplateDescription +- newSectionTemplateCategory, newSectionTemplateType +- isLoadTemplateDialogOpen, selectedTemplateId +- expandedTemplateId +- isTemplateFieldDialogOpen, currentTemplateId, editingTemplateFieldId +- templateFieldName, templateFieldKey, templateFieldInputType +- templateFieldRequired, templateFieldOptions, templateFieldDescription +- templateFieldMultiColumn, templateFieldColumnCount, templateFieldColumnNames +- templateFieldInputMode, templateFieldShowMasterFieldList, templateFieldSelectedMasterFieldId +``` + +**포함될 핸들러:** +```typescript +- handleAddSectionTemplate +- handleEditSectionTemplate +- handleUpdateSectionTemplate +- handleDeleteSectionTemplate +- handleLoadTemplate +- handleAddTemplateField +- handleEditTemplateField +- handleDeleteTemplateField +- handleAddBOMItemToTemplate +- handleUpdateBOMItemInTemplate +- handleDeleteBOMItemFromTemplate +``` + +**작업 체크리스트:** +- [ ] hooks/useTemplateManagement.ts 파일 생성 +- [ ] 상태 이동 +- [ ] 핸들러 이동 +- [ ] 메인 컴포넌트에서 훅 사용으로 변경 +- [ ] 기능 테스트 + +--- + +### 6. useAttributeManagement + +**포함될 상태:** +```typescript +- unitOptions, materialOptions, surfaceTreatmentOptions +- customAttributeOptions +- isOptionDialogOpen, editingOptionType +- newOptionValue, newOptionLabel, newOptionColumnValues +- newOptionInputType, newOptionRequired, newOptionOptions +- newOptionPlaceholder, newOptionDefaultValue +- isColumnManageDialogOpen, managingColumnType +- attributeColumns +- newColumnName, newColumnKey, newColumnType, newColumnRequired +``` + +**포함될 핸들러:** +```typescript +- handleAddOption +- handleDeleteOption +- (useEffect for attribute sync) +``` + +**작업 체크리스트:** +- [ ] hooks/useAttributeManagement.ts 파일 생성 +- [ ] 상태 이동 +- [ ] 핸들러 이동 +- [ ] 메인 컴포넌트에서 훅 사용으로 변경 +- [ ] 기능 테스트 + +--- + +### 7. useTabManagement + +**포함될 상태:** +```typescript +- customTabs +- activeTab +- attributeSubTabs, activeAttributeTab +- isAddTabDialogOpen, isManageTabsDialogOpen +- newTabLabel, editingTabId, deletingTabId, isDeleteTabDialogOpen +- isManageAttributeTabsDialogOpen, isAddAttributeTabDialogOpen +- newAttributeTabLabel, editingAttributeTabId +- deletingAttributeTabId, isDeleteAttributeTabDialogOpen +``` + +**포함될 핸들러:** +```typescript +- handleAddTab +- handleEditTab +- handleDeleteTab +- handleAddAttributeTab +- (useEffect for attributeSubTabs sync) +``` + +**작업 체크리스트:** +- [ ] hooks/useTabManagement.ts 파일 생성 +- [ ] 상태 이동 +- [ ] 핸들러 이동 +- [ ] 메인 컴포넌트에서 훅 사용으로 변경 +- [ ] 기능 테스트 + +--- + +## 작업 로그 + +### 2025-11-26 +- 체크리스트 문서 생성 +- 분석 완료: 총 7개 훅으로 분리 예정 +- ✅ usePageManagement.ts 생성 완료 (타입 에러 없음) +- ✅ useSectionManagement.ts 생성 완료 (타입 에러 없음) +- ✅ useFieldManagement.ts 생성 완료 (타입 에러 수정 완료) +- ✅ useMasterFieldManagement.ts 생성 완료 (타입 에러 수정: 'ㄹ' 오타 제거) +- ✅ useTemplateManagement.ts 생성 완료 (타입 에러 없음, ~350줄) +- ✅ useAttributeManagement.ts 생성 완료 (타입 에러 없음, ~250줄) +- ✅ useTabManagement.ts 생성 완료 (타입 에러 없음, ~330줄) +- 🎉 **Phase 1 완료!** 모든 7개 훅 생성 완료 +- 📁 hooks/index.ts에 모든 훅 export 완료 + +### Phase 2 완료 (2025-11-26 추가) +- ✅ 메인 컴포넌트에서 훅 import 및 연결 완료 +- ✅ props drilling 정리 - wrapper 함수 패턴 적용 +- ✅ 렌더링 로직만 남기기 - 2893줄 → 1575줄 (45% 감소) +- ✅ 빌드 테스트 성공 +- ⏳ 기능 테스트 - 브라우저에서 확인 필요 + +### 주요 기술 결정 (Phase 2) +1. **Wrapper 함수 패턴**: 훅 함수에 selectedPage 바인딩 필요한 경우 wrapper 사용 + - `handleAddSectionWrapper`, `handleLinkTemplateWrapper` 등 +2. **타입 호환성**: setter 함수 타입 불일치는 `as any`로 우회 + - `setNewSectionTypeWrapper`, `setNewPageItemTypeWrapper` +3. **기존 타입 에러**: `default_properties` 등 기존 타입 정의 문제는 Phase 2 범위 외 + +### 다음 단계 +- [ ] 기능 테스트 (브라우저) +- [ ] 추가 최적화 (선택) + +--- + +## 참고 사항 + +### 훅 간 의존성 +``` +usePageManagement (독립) + ↓ +useSectionManagement (selectedPageId 필요) + ↓ +useFieldManagement (selectedSectionId 필요) + +useMasterFieldManagement (독립) +useTemplateManagement (독립, but masterFields 참조) +useAttributeManagement (독립, but masterFields와 연동) +useTabManagement (독립) +``` + +### 파일 구조 (목표) +``` +ItemMasterDataManagement/ +├── hooks/ +│ ├── index.ts +│ ├── usePageManagement.ts +│ ├── useSectionManagement.ts +│ ├── useFieldManagement.ts +│ ├── useMasterFieldManagement.ts +│ ├── useTemplateManagement.ts +│ ├── useAttributeManagement.ts +│ └── useTabManagement.ts +├── tabs/ +├── dialogs/ +├── components/ +├── utils/ +├── types.ts +└── index.tsx (메인 컴포넌트, ~200줄 목표) +``` \ No newline at end of file diff --git a/src/components/items/BOMManagementSection.tsx b/src/components/items/BOMManagementSection.tsx index c2ae94ac..18e1d3f1 100644 --- a/src/components/items/BOMManagementSection.tsx +++ b/src/components/items/BOMManagementSection.tsx @@ -41,6 +41,13 @@ export function BOMManagementSection({ const [unit, setUnit] = useState('EA'); const [itemType, setItemType] = useState('part'); const [note, setNote] = useState(''); + const [isSubmitted, setIsSubmitted] = useState(false); + + // 유효성 검사 + const isItemCodeEmpty = !itemCode.trim(); + const isItemNameEmpty = !itemName.trim(); + const qty = parseFloat(quantity); + const isQuantityInvalid = isNaN(qty) || qty <= 0; const handleOpenDialog = (item?: BOMItem) => { if (item) { @@ -61,16 +68,25 @@ export function BOMManagementSection({ setNote(''); } setIsDialogOpen(true); + setIsSubmitted(false); + }; + + const handleClose = () => { + setIsDialogOpen(false); + setEditingId(null); + setItemCode(''); + setItemName(''); + setQuantity('1'); + setUnit('EA'); + setItemType('part'); + setNote(''); + setIsSubmitted(false); }; const handleSave = () => { - if (!itemCode.trim() || !itemName.trim()) { - return toast.error('품목코드와 품목명을 입력해주세요'); - } - - const qty = parseFloat(quantity); - if (isNaN(qty) || qty <= 0) { - return toast.error('올바른 수량을 입력해주세요'); + setIsSubmitted(true); + if (isItemCodeEmpty || isItemNameEmpty || isQuantityInvalid) { + return; } const itemData = { @@ -89,7 +105,7 @@ export function BOMManagementSection({ toast.success('BOM 품목이 추가되었습니다'); } - setIsDialogOpen(false); + handleClose(); }; const handleDelete = (id: number) => { @@ -170,10 +186,7 @@ export function BOMManagementSection({ { - setIsDialogOpen(open); - if (!open) { - setEditingId(null); - } + if (!open) handleClose(); }} > @@ -191,7 +204,11 @@ export function BOMManagementSection({ value={itemCode} onChange={(e) => setItemCode(e.target.value)} placeholder="예: PART-001" + className={isSubmitted && isItemCodeEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isItemCodeEmpty && ( +

품목코드를 입력해주세요

+ )}
@@ -199,7 +216,11 @@ export function BOMManagementSection({ value={itemName} onChange={(e) => setItemName(e.target.value)} placeholder="예: 샤프트" + className={isSubmitted && isItemNameEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isItemNameEmpty && ( +

품목명을 입력해주세요

+ )}
@@ -213,7 +234,11 @@ export function BOMManagementSection({ placeholder="1" min="0" step="0.01" + className={isSubmitted && isQuantityInvalid ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isQuantityInvalid && ( +

올바른 수량을 입력해주세요 (0보다 큰 숫자)

+ )}
@@ -257,9 +282,7 @@ export function BOMManagementSection({
- +
diff --git a/src/components/items/ItemMasterDataManagement.tsx b/src/components/items/ItemMasterDataManagement.tsx index 65611b2a..2dc6c32e 100644 --- a/src/components/items/ItemMasterDataManagement.tsx +++ b/src/components/items/ItemMasterDataManagement.tsx @@ -4,10 +4,10 @@ import { useState, useEffect } from 'react'; import { PageLayout } from '@/components/organisms/PageLayout'; import { PageHeader } from '@/components/organisms/PageHeader'; import { useItemMaster } from '@/contexts/ItemMasterContext'; -import type { ItemPage, ItemSection, ItemField, FieldDisplayCondition, ItemMasterField, ItemFieldProperty, SectionTemplate, BOMItem, TemplateField } from '@/contexts/ItemMasterContext'; +import type { SectionTemplate, BOMItem } from '@/contexts/ItemMasterContext'; import { MasterFieldTab, HierarchyTab, SectionsTab } from './ItemMasterDataManagement/tabs'; import { FieldDialog } from './ItemMasterDataManagement/dialogs/FieldDialog'; -import { type ConditionalFieldConfig } from './ItemMasterDataManagement/components/ConditionalDisplayUI'; +// ConditionalFieldConfig type removed - not currently used import { FieldDrawer } from './ItemMasterDataManagement/dialogs/FieldDrawer'; import { TabManagementDialogs } from './ItemMasterDataManagement/dialogs/TabManagementDialogs'; import { OptionDialog } from './ItemMasterDataManagement/dialogs/OptionDialog'; @@ -25,7 +25,6 @@ import { getErrorMessage, ApiError } from '@/lib/api/error-handler'; import { LoadingSpinner } from '@/components/ui/loading-spinner'; import { ErrorMessage } from '@/components/ui/error-message'; import { - transformPageResponse, transformPagesResponse, transformSectionTemplatesResponse, transformMasterFieldsResponse, @@ -36,13 +35,9 @@ import { Database, Plus, Trash2, - FolderTree, - Folder, FileText, Settings, - ListTree, Package, - Layers } from 'lucide-react'; import { Button } from '@/components/ui/button'; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card'; @@ -50,17 +45,16 @@ import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs'; import { Badge } from '@/components/ui/badge'; import { toast } from 'sonner'; -// 로컬 타입 import -import type { OptionColumn, MasterOption } from './ItemMasterDataManagement/types'; -// Utils import -import { generateAbsolutePath } from './ItemMasterDataManagement/utils/pathUtils'; - -// 초기 데이터 -const INITIAL_UNIT_OPTIONS: MasterOption[] = []; - -const INITIAL_MATERIAL_OPTIONS: MasterOption[] = []; - -const INITIAL_SURFACE_TREATMENT_OPTIONS: MasterOption[] = []; +// 커스텀 훅 import +import { + usePageManagement, + useSectionManagement, + useFieldManagement, + useMasterFieldManagement, + useTemplateManagement, + useAttributeManagement, + useTabManagement, +} from './ItemMasterDataManagement/hooks'; const ITEM_TYPE_OPTIONS = [ { value: 'FG', label: '제품 (FG)' }, @@ -83,32 +77,194 @@ export function ItemMasterDataManagement() { const { itemPages, loadItemPages, - addItemPage, + addItemPage: _addItemPage, updateItemPage, deleteItemPage, - addSectionToPage, + addSectionToPage: _addSectionToPage, updateSection, deleteSection, - addFieldToSection, - updateField, + addFieldToSection: _addFieldToSection, + updateField: _updateField, deleteField, reorderFields, itemMasterFields, loadItemMasterFields, - addItemMasterField, - updateItemMasterField, - deleteItemMasterField, + addItemMasterField: _addItemMasterField, + updateItemMasterField: _updateItemMasterField, + deleteItemMasterField: _deleteItemMasterField, sectionTemplates, loadSectionTemplates, - addSectionTemplate, - updateSectionTemplate, - deleteSectionTemplate, + addSectionTemplate: _addSectionTemplate, + updateSectionTemplate: _updateSectionTemplate, + deleteSectionTemplate: _deleteSectionTemplate, resetAllData, - tenantId + tenantId: _tenantId } = useItemMaster(); console.log('ItemMasterDataManagement: Current sectionTemplates', sectionTemplates); + // ===== 커스텀 훅 초기화 ===== + const pageManagement = usePageManagement(); + const sectionManagement = useSectionManagement(); + const fieldManagement = useFieldManagement(); + const masterFieldManagement = useMasterFieldManagement(); + const templateManagement = useTemplateManagement(); + const attributeManagement = useAttributeManagement(); + const tabManagement = useTabManagement(); + + // 훅에서 필요한 값들 구조분해 + const { + selectedPageId, setSelectedPageId, selectedPage, + editingPageId, setEditingPageId, editingPageName, setEditingPageName, + isPageDialogOpen, setIsPageDialogOpen, + newPageName, setNewPageName, newPageItemType, setNewPageItemType, + editingPathPageId, setEditingPathPageId, editingAbsolutePath, setEditingAbsolutePath, + handleAddPage, handleDuplicatePage, handleDeletePage: _handleDeletePage, + handleUpdatePageName: _handleUpdatePageName, handleUpdateAbsolutePath: _handleUpdateAbsolutePath, + } = pageManagement; + + const { + editingSectionId, setEditingSectionId, + editingSectionTitle, setEditingSectionTitle, + isSectionDialogOpen, setIsSectionDialogOpen, + newSectionTitle, setNewSectionTitle, + newSectionDescription, setNewSectionDescription, + newSectionType, setNewSectionType, + sectionInputMode, setSectionInputMode, + selectedSectionTemplateId, setSelectedSectionTemplateId, + expandedSections: _expandedSections, setExpandedSections: _setExpandedSections, + handleAddSection, handleLinkTemplate, + handleEditSectionTitle, handleSaveSectionTitle, + handleDeleteSection: _handleDeleteSection, toggleSection: _toggleSection, + } = sectionManagement; + + const { + isFieldDialogOpen, setIsFieldDialogOpen, + selectedSectionForField, setSelectedSectionForField, + editingFieldId, setEditingFieldId, + fieldInputMode, setFieldInputMode, + showMasterFieldList, setShowMasterFieldList, + selectedMasterFieldId, setSelectedMasterFieldId, + newFieldName, setNewFieldName, + newFieldKey, setNewFieldKey, + newFieldInputType, setNewFieldInputType, + newFieldRequired, setNewFieldRequired, + newFieldOptions, setNewFieldOptions, + newFieldDescription, setNewFieldDescription, + textboxColumns, setTextboxColumns, + isColumnDialogOpen, setIsColumnDialogOpen, + editingColumnId, setEditingColumnId, + columnName, setColumnName, + columnKey, setColumnKey, + newFieldConditionEnabled, setNewFieldConditionEnabled, + newFieldConditionTargetType, setNewFieldConditionTargetType, + newFieldConditionFields, setNewFieldConditionFields, + newFieldConditionSections, setNewFieldConditionSections, + tempConditionValue, setTempConditionValue, + handleAddField, handleEditField, handleDeleteField: _handleDeleteField, + } = fieldManagement; + + const { + isMasterFieldDialogOpen, setIsMasterFieldDialogOpen, + editingMasterFieldId, setEditingMasterFieldId, + newMasterFieldName, setNewMasterFieldName, + newMasterFieldKey, setNewMasterFieldKey, + newMasterFieldInputType, setNewMasterFieldInputType, + newMasterFieldRequired, setNewMasterFieldRequired, + newMasterFieldCategory, setNewMasterFieldCategory, + newMasterFieldDescription, setNewMasterFieldDescription, + newMasterFieldOptions, setNewMasterFieldOptions, + newMasterFieldAttributeType, setNewMasterFieldAttributeType, + newMasterFieldMultiColumn, setNewMasterFieldMultiColumn, + newMasterFieldColumnCount, setNewMasterFieldColumnCount, + newMasterFieldColumnNames, setNewMasterFieldColumnNames, + handleAddMasterField, handleEditMasterField, + handleUpdateMasterField, handleDeleteMasterField, + } = masterFieldManagement; + + const { + isSectionTemplateDialogOpen, setIsSectionTemplateDialogOpen, + editingSectionTemplateId, setEditingSectionTemplateId, + newSectionTemplateTitle, setNewSectionTemplateTitle, + newSectionTemplateDescription, setNewSectionTemplateDescription, + newSectionTemplateCategory, setNewSectionTemplateCategory, + newSectionTemplateType, setNewSectionTemplateType, + isLoadTemplateDialogOpen, setIsLoadTemplateDialogOpen, + selectedTemplateId, setSelectedTemplateId, + isTemplateFieldDialogOpen, setIsTemplateFieldDialogOpen, + currentTemplateId: _currentTemplateId, setCurrentTemplateId, + editingTemplateFieldId, setEditingTemplateFieldId, + templateFieldName, setTemplateFieldName, + templateFieldKey, setTemplateFieldKey, + templateFieldInputType, setTemplateFieldInputType, + templateFieldRequired, setTemplateFieldRequired, + templateFieldOptions, setTemplateFieldOptions, + templateFieldDescription, setTemplateFieldDescription, + templateFieldMultiColumn, setTemplateFieldMultiColumn, + templateFieldColumnCount, setTemplateFieldColumnCount, + templateFieldColumnNames, setTemplateFieldColumnNames, + templateFieldInputMode, setTemplateFieldInputMode, + templateFieldShowMasterFieldList, setTemplateFieldShowMasterFieldList, + templateFieldSelectedMasterFieldId, setTemplateFieldSelectedMasterFieldId, + handleAddSectionTemplate, handleEditSectionTemplate, + handleUpdateSectionTemplate, handleDeleteSectionTemplate, + handleLoadTemplate, handleAddTemplateField, + handleEditTemplateField, handleDeleteTemplateField, + handleAddBOMItemToTemplate, handleUpdateBOMItemInTemplate, + handleDeleteBOMItemFromTemplate, + } = templateManagement; + + const { + unitOptions, setUnitOptions, + materialOptions, setMaterialOptions, + surfaceTreatmentOptions, setSurfaceTreatmentOptions, + customAttributeOptions, setCustomAttributeOptions, + isOptionDialogOpen, setIsOptionDialogOpen, + editingOptionType, setEditingOptionType, + newOptionValue, setNewOptionValue, + newOptionLabel, setNewOptionLabel, + newOptionColumnValues, setNewOptionColumnValues, + newOptionInputType, setNewOptionInputType, + newOptionRequired, setNewOptionRequired, + newOptionOptions, setNewOptionOptions, + newOptionPlaceholder, setNewOptionPlaceholder, + newOptionDefaultValue, setNewOptionDefaultValue, + isColumnManageDialogOpen, setIsColumnManageDialogOpen, + managingColumnType, setManagingColumnType, + attributeColumns, setAttributeColumns, + newColumnName, setNewColumnName, + newColumnKey, setNewColumnKey, + newColumnType, setNewColumnType, + newColumnRequired, setNewColumnRequired, + handleAddOption, handleDeleteOption, + handleAddColumn: _handleAddColumn, handleDeleteColumn: _handleDeleteColumn, + } = attributeManagement; + + const { + customTabs, setCustomTabs, + activeTab, setActiveTab, + attributeSubTabs, setAttributeSubTabs, + activeAttributeTab, setActiveAttributeTab, + isAddTabDialogOpen, setIsAddTabDialogOpen, + isManageTabsDialogOpen, setIsManageTabsDialogOpen, + newTabLabel, setNewTabLabel, + editingTabId, setEditingTabId, + deletingTabId, setDeletingTabId, + isDeleteTabDialogOpen, setIsDeleteTabDialogOpen, + isManageAttributeTabsDialogOpen, setIsManageAttributeTabsDialogOpen, + isAddAttributeTabDialogOpen, setIsAddAttributeTabDialogOpen, + newAttributeTabLabel, setNewAttributeTabLabel, + editingAttributeTabId, setEditingAttributeTabId, + deletingAttributeTabId, setDeletingAttributeTabId, + isDeleteAttributeTabDialogOpen, setIsDeleteAttributeTabDialogOpen, + handleAddTab, handleUpdateTab, handleDeleteTab, confirmDeleteTab, + handleAddAttributeTab, handleUpdateAttributeTab, + handleDeleteAttributeTab, confirmDeleteAttributeTab, + moveTabUp, moveTabDown, + moveAttributeTabUp, moveAttributeTabDown, + getTabIcon, handleEditTabFromManage, + } = tabManagement; + // 모든 페이지의 섹션을 하나의 배열로 평탄화 const _itemSections = itemPages.flatMap(page => page.sections.map(section => ({ @@ -126,7 +282,7 @@ export function ItemMasterDataManagement() { // API 로딩 및 에러 상태 관리 const [isInitialLoading, setIsInitialLoading] = useState(true); // 초기 데이터 로딩 - const [_isLoading, setIsLoading] = useState(false); // 개별 작업 로딩 + const [_isLoading, _setIsLoading] = useState(false); // 개별 작업 로딩 const [error, setError] = useState(null); // 에러 메시지 // 초기 데이터 로딩 @@ -192,154 +348,8 @@ export function ItemMasterDataManagement() { loadInitialData(); }, []); - // 동적 탭 관리 - SSR 호환: 항상 기본값으로 시작 - const [customTabs, setCustomTabs] = useState>(() => { - return [ - { id: 'hierarchy', label: '계층구조', icon: 'FolderTree', isDefault: true, order: 1 }, - { id: 'sections', label: '섹션', icon: 'Layers', isDefault: true, order: 2 }, - { id: 'items', label: '항목', icon: 'ListTree', isDefault: true, order: 3 }, - { id: 'attributes', label: '속성', icon: 'Settings', isDefault: true, order: 4 } - ]; - }); - - - const [activeTab, setActiveTab] = useState('hierarchy'); - - // 속성 하위 탭 관리 (API에서 로드) - const [attributeSubTabs, setAttributeSubTabs] = useState>([]); - - // 마스터 항목이 추가/수정될 때 속성 탭 자동 생성 - useEffect(() => { - // 새로 추가할 탭들을 먼저 수집 - const newTabs: Array<{id: string; label: string; key: string; isDefault: boolean; order: number}> = []; - const updatedTabs: Array<{id: string; label: string; key: string; isDefault: boolean; order: number}> = []; - - itemMasterFields.forEach(field => { - // 이미 탭이 있는지 확인 - const existingTab = attributeSubTabs.find(tab => tab.key === field.id.toString()); - - if (!existingTab) { - // 새로운 탭 추가 대상 - const maxOrder = Math.max(...attributeSubTabs.map(t => t.order), ...newTabs.map(t => t.order), -1); - const newTab = { - id: `attr-${field.id.toString()}`, - label: field.field_name, - key: field.id.toString(), - isDefault: false, - order: maxOrder + 1 - }; - newTabs.push(newTab); - } else if (existingTab.label !== field.field_name) { - // 이름이 변경된 경우 - updatedTabs.push({ ...existingTab, label: field.field_name }); - } - }); - - // 상태 업데이트는 한 번만 수행 - if (newTabs.length > 0 || updatedTabs.length > 0) { - setAttributeSubTabs(prev => { - // 기존 탭 업데이트 - let result = prev.map(tab => { - const updated = updatedTabs.find(ut => ut.key === tab.key); - return updated || tab; - }); - - // 새 탭 추가 - result = [...result, ...newTabs]; - - // 중복 제거 (key 기준) - const uniqueTabs = result.filter((tab, index, self) => - index === self.findIndex(t => t.key === tab.key) - ); - - return uniqueTabs; - }); - } - }, [itemMasterFields]); - - - const [activeAttributeTab, setActiveAttributeTab] = useState('units'); - const [isAddTabDialogOpen, setIsAddTabDialogOpen] = useState(false); - const [isManageTabsDialogOpen, setIsManageTabsDialogOpen] = useState(false); - const [newTabLabel, setNewTabLabel] = useState(''); - const [editingTabId, setEditingTabId] = useState(null); - const [deletingTabId, setDeletingTabId] = useState(null); - const [isDeleteTabDialogOpen, setIsDeleteTabDialogOpen] = useState(false); - - // 속성 하위 탭 관리 상태 - const [isManageAttributeTabsDialogOpen, setIsManageAttributeTabsDialogOpen] = useState(false); - const [isAddAttributeTabDialogOpen, setIsAddAttributeTabDialogOpen] = useState(false); - const [newAttributeTabLabel, setNewAttributeTabLabel] = useState(''); - const [editingAttributeTabId, setEditingAttributeTabId] = useState(null); - const [deletingAttributeTabId, setDeletingAttributeTabId] = useState(null); - const [isDeleteAttributeTabDialogOpen, setIsDeleteAttributeTabDialogOpen] = useState(false); - - const [unitOptions, setUnitOptions] = useState(INITIAL_UNIT_OPTIONS); - const [materialOptions, setMaterialOptions] = useState(INITIAL_MATERIAL_OPTIONS); - const [surfaceTreatmentOptions, setSurfaceTreatmentOptions] = useState(INITIAL_SURFACE_TREATMENT_OPTIONS); - const [customAttributeOptions, setCustomAttributeOptions] = useState>({}); - - const [isOptionDialogOpen, setIsOptionDialogOpen] = useState(false); - const [editingOptionType, setEditingOptionType] = useState(null); - const [newOptionValue, setNewOptionValue] = useState(''); - const [newOptionLabel, setNewOptionLabel] = useState(''); - const [newOptionColumnValues, setNewOptionColumnValues] = useState>({}); - // 확장된 입력방식 관련 상태 - const [newOptionInputType, setNewOptionInputType] = useState<'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea'>('textbox'); - const [newOptionRequired, setNewOptionRequired] = useState(false); - const [newOptionOptions, setNewOptionOptions] = useState(''); // dropdown 옵션 (쉼표 구분) - const [newOptionPlaceholder, setNewOptionPlaceholder] = useState(''); - const [newOptionDefaultValue, setNewOptionDefaultValue] = useState(''); - - // 칼럼 관리 상태 - const [isColumnManageDialogOpen, setIsColumnManageDialogOpen] = useState(false); - const [managingColumnType, setManagingColumnType] = useState(null); - const [attributeColumns, setAttributeColumns] = useState>({}); - - // 칼럼 추가 폼 상태 - const [newColumnName, setNewColumnName] = useState(''); - const [newColumnKey, setNewColumnKey] = useState(''); - const [newColumnType, setNewColumnType] = useState<'text' | 'number'>('text'); - const [newColumnRequired, setNewColumnRequired] = useState(false); - - // 계층구조 상태 - const [selectedPageId, setSelectedPageId] = useState(itemPages[0]?.id || null); - const selectedPage = itemPages.find(p => p.id === selectedPageId); - const [_expandedSections, setExpandedSections] = useState>({}); - const [editingSectionId, setEditingSectionId] = useState(null); - const [editingSectionTitle, setEditingSectionTitle] = useState(''); - - // 기존 페이지들에 절대경로 자동 생성 (마이그레이션) - useEffect(() => { - let needsUpdate = false; - itemPages.forEach(page => { - if (!page.absolute_path) { - const absolutePath = generateAbsolutePath(page.item_type, page.page_name); - updateItemPage(page.id, { absolute_path: absolutePath }); - needsUpdate = true; - } - }); - if (needsUpdate) { - console.log('절대경로가 자동으로 생성되었습니다'); - } - }, []); // 빈 의존성 배열로 최초 1회만 실행 - - const [editingPageId, setEditingPageId] = useState(null); - const [editingPageName, setEditingPageName] = useState(''); - - const [isPageDialogOpen, setIsPageDialogOpen] = useState(false); - const [newPageName, setNewPageName] = useState(''); - const [newPageItemType, setNewPageItemType] = useState<'FG' | 'PT' | 'SM' | 'RM' | 'CS'>('FG'); - - const [editingPathPageId, setEditingPathPageId] = useState(null); - const [editingAbsolutePath, setEditingAbsolutePath] = useState(''); - - const [isSectionDialogOpen, setIsSectionDialogOpen] = useState(false); - const [newSectionTitle, setNewSectionTitle] = useState(''); - const [newSectionDescription, setNewSectionDescription] = useState(''); - const [newSectionType, setNewSectionType] = useState<'fields' | 'bom'>('fields'); - const [sectionInputMode, setSectionInputMode] = useState<'custom' | 'template'>('custom'); - const [selectedSectionTemplateId, setSelectedSectionTemplateId] = useState(null); + // ===== 훅으로 이동된 상태들 (참조용 주석) ===== + // 탭, 속성, 페이지, 섹션 관련 상태는 위의 훅에서 관리됩니다. // 모바일 체크 const [isMobile, setIsMobile] = useState(false); @@ -350,1420 +360,74 @@ export function ItemMasterDataManagement() { return () => window.removeEventListener('resize', checkMobile); }, []); - const [isFieldDialogOpen, setIsFieldDialogOpen] = useState(false); - const [selectedSectionForField, setSelectedSectionForField] = useState(null); - const [editingFieldId, setEditingFieldId] = useState(null); - const [fieldInputMode, setFieldInputMode] = useState<'master' | 'custom'>('custom'); // 마스터 항목 선택 vs 직접 입력 - const [showMasterFieldList, setShowMasterFieldList] = useState(false); // 마스터 항목 목록 표시 여부 - const [selectedMasterFieldId, setSelectedMasterFieldId] = useState(''); - const [newFieldName, setNewFieldName] = useState(''); - const [newFieldKey, setNewFieldKey] = useState(''); - const [newFieldInputType, setNewFieldInputType] = useState<'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea'>('textbox'); - const [newFieldRequired, setNewFieldRequired] = useState(false); - const [newFieldOptions, setNewFieldOptions] = useState(''); - const [newFieldDescription, setNewFieldDescription] = useState(''); - - // 텍스트박스 컬럼 관리 - const [textboxColumns, setTextboxColumns] = useState>([]); - const [isColumnDialogOpen, setIsColumnDialogOpen] = useState(false); - const [editingColumnId, setEditingColumnId] = useState(null); - const [columnName, setColumnName] = useState(''); - const [columnKey, setColumnKey] = useState(''); - - // 조건부 항목 상태 - const [newFieldConditionEnabled, setNewFieldConditionEnabled] = useState(false); - const [newFieldConditionTargetType, setNewFieldConditionTargetType] = useState<'field' | 'section'>('field'); - const [newFieldConditionFields, setNewFieldConditionFields] = useState([]); - const [newFieldConditionSections, setNewFieldConditionSections] = useState([]); - // 임시 입력용 - const [_tempConditionFieldKey, setTempConditionFieldKey] = useState(''); - const [tempConditionValue, setTempConditionValue] = useState(''); + // 필드, 마스터필드, 템플릿 관련 상태는 위의 훅에서 관리됩니다. - // 마스터 항목 관리 상태 - const [isMasterFieldDialogOpen, setIsMasterFieldDialogOpen] = useState(false); - const [editingMasterFieldId, setEditingMasterFieldId] = useState(null); - const [newMasterFieldName, setNewMasterFieldName] = useState(''); - const [newMasterFieldKey, setNewMasterFieldKey] = useState(''); - const [newMasterFieldInputType, setNewMasterFieldInputType] = useState<'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea'>('textbox'); - const [newMasterFieldRequired, setNewMasterFieldRequired] = useState(false); - const [newMasterFieldCategory, setNewMasterFieldCategory] = useState('공통'); - const [newMasterFieldDescription, setNewMasterFieldDescription] = useState(''); - const [newMasterFieldOptions, setNewMasterFieldOptions] = useState(''); - const [newMasterFieldAttributeType, setNewMasterFieldAttributeType] = useState<'custom' | 'unit' | 'material' | 'surface'>('custom'); - const [newMasterFieldMultiColumn, setNewMasterFieldMultiColumn] = useState(false); - const [newMasterFieldColumnCount, setNewMasterFieldColumnCount] = useState(2); - const [newMasterFieldColumnNames, setNewMasterFieldColumnNames] = useState(['컬럼1', '컬럼2']); - - // 섹션 템플릿 관리 상태 - const [isSectionTemplateDialogOpen, setIsSectionTemplateDialogOpen] = useState(false); - const [editingSectionTemplateId, setEditingSectionTemplateId] = useState(null); - const [newSectionTemplateTitle, setNewSectionTemplateTitle] = useState(''); - const [newSectionTemplateDescription, setNewSectionTemplateDescription] = useState(''); - const [newSectionTemplateCategory, setNewSectionTemplateCategory] = useState([]); - const [newSectionTemplateType, setNewSectionTemplateType] = useState<'fields' | 'bom'>('fields'); - - // 섹션 템플릿 불러오기 다이얼로그 - const [isLoadTemplateDialogOpen, setIsLoadTemplateDialogOpen] = useState(false); - const [selectedTemplateId, setSelectedTemplateId] = useState(null); - - // 섹션 템플릿 확장 상태 - const [_expandedTemplateId, _setExpandedTemplateId] = useState(null); - - // 섹션 템플릿 항목 추가 다이얼로그 - const [isTemplateFieldDialogOpen, setIsTemplateFieldDialogOpen] = useState(false); - const [currentTemplateId, setCurrentTemplateId] = useState(null); - const [editingTemplateFieldId, setEditingTemplateFieldId] = useState(null); - const [templateFieldName, setTemplateFieldName] = useState(''); - const [templateFieldKey, setTemplateFieldKey] = useState(''); - const [templateFieldInputType, setTemplateFieldInputType] = useState<'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea'>('textbox'); - const [templateFieldRequired, setTemplateFieldRequired] = useState(false); - const [templateFieldOptions, setTemplateFieldOptions] = useState(''); - const [templateFieldDescription, setTemplateFieldDescription] = useState(''); - const [templateFieldMultiColumn, setTemplateFieldMultiColumn] = useState(false); - const [templateFieldColumnCount, setTemplateFieldColumnCount] = useState(2); - const [templateFieldColumnNames, setTemplateFieldColumnNames] = useState(['컬럼1', '컬럼2']); - // 템플릿 필드 마스터 항목 관련 상태 - const [templateFieldInputMode, setTemplateFieldInputMode] = useState<'custom' | 'master'>('custom'); - const [templateFieldShowMasterFieldList, setTemplateFieldShowMasterFieldList] = useState(false); - const [templateFieldSelectedMasterFieldId, setTemplateFieldSelectedMasterFieldId] = useState(''); - - // BOM 관리 상태 + // BOM 관리 상태 (훅에 없음) const [_bomItems, setBomItems] = useState([]); - // 속성 변경 시 연동된 마스터 항목의 옵션 자동 업데이트 - useEffect(() => { - itemMasterFields.forEach(field => { - // default_properties가 null/undefined인 경우 스킵 - if (!field.default_properties) return; - const attributeType = (field.default_properties as any).attributeType; - if (attributeType && attributeType !== 'custom' && field.default_properties?.inputType === 'dropdown') { - let newOptions: string[] = []; - if (attributeType === 'unit') { - newOptions = unitOptions.map(opt => opt.label); - } else if (attributeType === 'material') { - newOptions = materialOptions.map(opt => opt.label); - } else if (attributeType === 'surface') { - newOptions = surfaceTreatmentOptions.map(opt => opt.label); - } else { - // 사용자 정의 속성 - const customOptions = customAttributeOptions[attributeType] || []; - newOptions = customOptions.map(opt => opt.label); - } + // ===== 이하 핸들러들은 훅으로 이동되어 제거됨 ===== + // handleAddOption, handleDeleteOption → useAttributeManagement + // handleAddPage, handleDuplicatePage → usePageManagement + // handleAddSection, handleLinkTemplate, handleEditSectionTitle, handleSaveSectionTitle → useSectionManagement + // handleAddField, handleEditField → useFieldManagement + // handleAddMasterField, handleEditMasterField, handleUpdateMasterField, handleDeleteMasterField → useMasterFieldManagement + // handleAddSectionTemplate 등 템플릿 관련 → useTemplateManagement + // handleAddTab 등 탭 관련 → useTabManagement - const currentOptions = field.default_properties?.options || []; - const optionsChanged = JSON.stringify(currentOptions.sort()) !== JSON.stringify(newOptions.sort()); - - if (optionsChanged && newOptions.length > 0) { - updateItemMasterField(field.id, { - ...field, - default_properties: { - ...(field.default_properties || {}), - options: newOptions - } - }); - } - } - }); - }, [unitOptions, materialOptions, surfaceTreatmentOptions, customAttributeOptions, itemMasterFields]); - - - const handleAddOption = () => { - if (!editingOptionType || !newOptionValue.trim() || !newOptionLabel.trim()) - return toast.error('모든 항목을 입력해주세요'); - - // dropdown일 경우 옵션 필수 체크 - if (newOptionInputType === 'dropdown' && !newOptionOptions.trim()) { - return toast.error('드롭다운 옵션을 입력해주세요'); - } - - // 칼럼 필수 값 체크 - const currentColumns = attributeColumns[editingOptionType] || []; - for (const column of currentColumns) { - if (column.required && !newOptionColumnValues[column.key]?.trim()) { - return toast.error(`${column.name}은(는) 필수 입력 항목입니다`); - } - } - - const newOption: MasterOption = { - id: `${editingOptionType}-${Date.now()}`, - value: newOptionValue, - label: newOptionLabel, - isActive: true, - inputType: newOptionInputType, - required: newOptionRequired, - options: newOptionInputType === 'dropdown' ? newOptionOptions.split(',').map(o => o.trim()).filter(o => o) : undefined, - placeholder: newOptionPlaceholder || undefined, - defaultValue: newOptionDefaultValue || undefined, - columnValues: Object.keys(newOptionColumnValues).length > 0 ? { ...newOptionColumnValues } : undefined - }; - - if (editingOptionType === 'unit') { - setUnitOptions([...unitOptions, newOption]); - } else if (editingOptionType === 'material') { - setMaterialOptions([...materialOptions, newOption]); - } else if (editingOptionType === 'surface') { - setSurfaceTreatmentOptions([...surfaceTreatmentOptions, newOption]); - } else { - // 사용자 정의 속성 탭 - setCustomAttributeOptions(prev => ({ - ...prev, - [editingOptionType]: [...(prev[editingOptionType] || []), newOption] - })); - } - - setNewOptionValue(''); - setNewOptionLabel(''); - setNewOptionColumnValues({}); - setNewOptionInputType('textbox'); - setNewOptionRequired(false); - setNewOptionOptions(''); - setNewOptionPlaceholder(''); - setNewOptionDefaultValue(''); - setIsOptionDialogOpen(false); - toast.success('속성이 추가되었습니다 (저장 필요)'); - }; - - const handleDeleteOption = (type: string, id: string) => { - if (type === 'unit') { - setUnitOptions(unitOptions.filter(o => o.id !== id)); - } else if (type === 'material') { - setMaterialOptions(materialOptions.filter(o => o.id !== id)); - } else if (type === 'surface') { - setSurfaceTreatmentOptions(surfaceTreatmentOptions.filter(o => o.id !== id)); - } else { - // 사용자 정의 속성 탭 - setCustomAttributeOptions(prev => ({ - ...prev, - [type]: (prev[type] || []).filter(o => o.id !== id) - })); - } - toast.success('삭제되었습니다'); - }; - - // 절대경로 자동 생성 함수 - // 계층구조 핸들러 - const handleAddPage = async () => { - if (!newPageName.trim()) return toast.error('섹션명을 입력해주세요'); - - try { - setIsLoading(true); - const absolutePath = generateAbsolutePath(newPageItemType, newPageName); - - // Context의 addItemPage 사용 (API 호출 + state 업데이트) - // ⚠️ 이전 코드는 여기서 API 호출 후 addItemPage도 호출해서 API가 2번 호출되는 버그가 있었음 - const newPage = await addItemPage({ - page_name: newPageName, - item_type: newPageItemType, - absolute_path: absolutePath, - is_active: true, - sections: [], - order_no: 0, - }); - - // 새로 생성된 페이지를 선택 - setSelectedPageId(newPage.id); - - // 폼 초기화 - setNewPageName(''); - setNewPageItemType('FG'); - setIsPageDialogOpen(false); - - toast.success('페이지가 추가되었습니다'); - } catch (err) { - if (err instanceof ApiError && err.errors) { - // Validation 에러 (422) - const errorMessages = Object.entries(err.errors) - .map(([field, messages]) => `${field}: ${messages.join(', ')}`) - .join('\n'); - toast.error(errorMessages); - } else { - const errorMessage = getErrorMessage(err); - toast.error(errorMessage); - } - console.error('❌ Failed to create page:', err); - } finally { - setIsLoading(false); - } - }; - - const handleDuplicatePage = async (pageId: number) => { - const originalPage = itemPages.find(p => p.id === pageId); - if (!originalPage) return toast.error('페이지를 찾을 수 없습니다'); - - try { - setIsLoading(true); - - // 페이지 복제 - const duplicatedPageName = `${originalPage.page_name} (복제)`; - const absolutePath = generateAbsolutePath(originalPage.item_type, duplicatedPageName); - - // Context의 addItemPage 사용 (API 호출 + state 업데이트) - const newPage = await addItemPage({ - page_name: duplicatedPageName, - item_type: originalPage.item_type, - sections: [], // 섹션은 별도 API로 복제해야 함 - is_active: true, - absolute_path: absolutePath, - order_no: 0, - }); - - // 서버에서 반환된 ID로 선택 - setSelectedPageId(newPage.id); - toast.success('페이지가 복제되었습니다'); - - // TODO: 원본 페이지의 섹션들도 복제 필요 (별도 API 호출) - } catch (err) { - const errorMessage = getErrorMessage(err); - toast.error(errorMessage); - console.error('❌ Failed to duplicate page:', err); - } finally { - setIsLoading(false); - } - }; - - const handleAddSection = () => { - if (!selectedPage || !newSectionTitle.trim()) return toast.error('하위섹션 제목을 입력해주세요'); - const sectionType: 'BASIC' | 'BOM' | 'CUSTOM' = newSectionType === 'bom' ? 'BOM' : 'BASIC'; - const newSection: ItemSection = { - id: Date.now(), - page_id: selectedPage.id, - section_name: newSectionTitle, - section_type: sectionType, - description: newSectionDescription || undefined, - order_no: selectedPage.sections.length + 1, - is_collapsible: true, - is_default_open: true, - created_at: new Date().toISOString(), - updated_at: new Date().toISOString(), - fields: [], - bomItems: sectionType === 'BOM' ? [] : undefined - }; - - console.log('Adding section to page:', { - pageId: selectedPage.id, - page_name: selectedPage.page_name, - sectionTitle: newSection.section_name, - sectionType: newSection.section_type, - currentSectionCount: selectedPage.sections.length, - newSection: newSection - }); - - // 1. 페이지에 섹션 추가 - addSectionToPage(selectedPage.id, newSection); - // 섹션은 페이지의 일부이므로 sections로 별도 추적하지 않음 - - // 2. 섹션관리 탭에도 템플릿으로 자동 추가 (계층구조 섹션 = 섹션 탭 섹션) - // 프론트엔드 형식: template_name, section_type ('BASIC' | 'BOM' | 'CUSTOM') - const newTemplateData = { - tenant_id: tenantId ?? 0, - template_name: newSection.section_name, - section_type: newSection.section_type as 'BASIC' | 'BOM' | 'CUSTOM', - description: newSection.description ?? null, - default_fields: null, - created_by: null, - updated_by: null, - }; - addSectionTemplate(newTemplateData); - - console.log('Section added to both page and template:', { - sectionId: newSection.id, - templateTitle: newTemplateData.title - }); - - setNewSectionTitle(''); - setNewSectionDescription(''); - setNewSectionType('fields'); - setIsSectionDialogOpen(false); - toast.success(`${newSectionType === 'bom' ? 'BOM' : '일반'} 섹션이 페이지에 추가되고 템플릿으로도 등록되었습니다!`); - }; - - // 섹션 템플릿을 페이지에 연결 (SectionDialog에서 사용) - const handleLinkTemplate = (template: SectionTemplate) => { - if (!selectedPage) { - toast.error('페이지를 먼저 선택해주세요'); - return; - } - - // 템플릿을 섹션으로 변환하여 페이지에 추가 - const newSection: Omit = { - page_id: selectedPage.id, - section_name: template.template_name, - section_type: template.section_type, - description: template.description || undefined, - order_no: selectedPage.sections.length + 1, - is_collapsible: true, - is_default_open: true, - fields: template.fields ? template.fields.map((field, idx) => ({ - id: Date.now() + idx, - section_id: 0, // 추후 업데이트됨 - field_name: field.name, - field_type: field.property.inputType, - order_no: idx + 1, - is_required: field.property.required, - placeholder: field.description || null, - default_value: null, - display_condition: null, - validation_rules: null, - options: field.property.options - ? field.property.options.map(opt => ({ label: opt, value: opt })) - : null, - properties: field.property.multiColumn ? { - multiColumn: true, - columnCount: field.property.columnCount, - columnNames: field.property.columnNames - } : null, - created_at: new Date().toISOString(), - updated_at: new Date().toISOString() - })) : [], - bomItems: template.section_type === 'BOM' ? (template.bomItems || []) : undefined - }; - - console.log('Linking template to page:', { - templateId: template.id, - templateName: template.template_name, - pageId: selectedPage.id, - newSection - }); - - addSectionToPage(selectedPage.id, newSection); - - // 다이얼로그 상태 초기화 - setSectionInputMode('custom'); - setSelectedSectionTemplateId(null); - setNewSectionTitle(''); - setNewSectionDescription(''); - setNewSectionType('fields'); - setIsSectionDialogOpen(false); - - toast.success(`"${template.template_name}" 템플릿이 페이지에 연결되었습니다!`); - }; - - const handleEditSectionTitle = (sectionId: string, currentTitle: string) => { - setEditingSectionId(sectionId); - setEditingSectionTitle(currentTitle); - }; - - const handleSaveSectionTitle = () => { - if (!selectedPage || !editingSectionId || !editingSectionTitle.trim()) - return toast.error('하위섹션 제목을 입력해주세요'); - - updateSection(Number(editingSectionId), { section_name: editingSectionTitle }); - setEditingSectionId(null); - toast.success('하위섹션 제목이 수정되었습니다 (저장 필요)'); - }; - - const _handleMoveSectionUp = (sectionId: number) => { - if (!selectedPage) return; - - const sections = [...selectedPage.sections]; - const index = sections.findIndex(s => s.id === sectionId); - - if (index <= 0) return; // 첫 번째 섹션이거나 못 찾음 - - // 배열에서 위치 교환 - [sections[index - 1], sections[index]] = [sections[index], sections[index - 1]]; - - // order 값 재설정 - const updatedSections = sections.map((section, idx) => ({ - ...section, - order: idx + 1 - })); - - // 페이지 업데이트 - updateItemPage(selectedPage.id, { sections: updatedSections }); - toast.success('섹션 순서가 변경되었습니다'); - }; - - const _handleMoveSectionDown = (sectionId: number) => { - if (!selectedPage) return; - - const sections = [...selectedPage.sections]; - const index = sections.findIndex(s => s.id === sectionId); - - if (index < 0 || index >= sections.length - 1) return; // 마지막 섹션이거나 못 찾음 - - // 배열에서 위치 교환 - [sections[index], sections[index + 1]] = [sections[index + 1], sections[index]]; - - // order 값 재설정 - const updatedSections = sections.map((section, idx) => ({ - ...section, - order: idx + 1 - })); - - // 페이지 업데이트 - updateItemPage(selectedPage.id, { sections: updatedSections }); - toast.success('섹션 순서가 변경되었습니다'); - }; - - const handleAddField = () => { - if (!selectedPage || !selectedSectionForField || !newFieldName.trim() || !newFieldKey.trim()) - return toast.error('모든 필수 항목을 입력해주세요'); - - // 조건부 표시 설정 - const displayCondition: FieldDisplayCondition | undefined = newFieldConditionEnabled - ? { - targetType: newFieldConditionTargetType, - fieldConditions: newFieldConditionTargetType === 'field' && newFieldConditionFields.length > 0 - ? newFieldConditionFields - : undefined, - sectionIds: newFieldConditionTargetType === 'section' && newFieldConditionSections.length > 0 - ? newFieldConditionSections - : undefined - } - : undefined; - - // 텍스트박스 컬럼 설정 - const hasColumns = newFieldInputType === 'textbox' && textboxColumns.length > 0; - - // 마스터 항목에서 가져온 경우 master_field_id 설정 - const masterFieldId = fieldInputMode === 'master' && selectedMasterFieldId - ? Number(selectedMasterFieldId) - : null; - - const newField: ItemField = { - id: editingFieldId ? Number(editingFieldId) : Date.now(), - section_id: Number(selectedSectionForField), - master_field_id: masterFieldId, // 마스터 항목 연결 정보 - field_name: newFieldName, - field_type: newFieldInputType, - order_no: 0, - is_required: newFieldRequired, - placeholder: newFieldDescription || null, - default_value: null, - display_condition: displayCondition as Record | null || null, - validation_rules: null, - options: newFieldInputType === 'dropdown' && newFieldOptions.trim() - ? newFieldOptions.split(',').map(o => ({ label: o.trim(), value: o.trim() })) - : null, - properties: hasColumns ? { - multiColumn: true, - columnCount: textboxColumns.length, - columnNames: textboxColumns.map(c => c.name) - } : null, - created_at: new Date().toISOString(), - updated_at: new Date().toISOString() - }; - - if (editingFieldId) { - console.log('Updating field:', { pageId: selectedPage.id, sectionId: selectedSectionForField, fieldId: editingFieldId, fieldName: newField.field_name }); - updateField(Number(editingFieldId), newField); - - // 항목관리 탭의 마스터 항목도 업데이트 (동일한 fieldKey가 있으면) - const existingMasterField = itemMasterFields.find(mf => mf.id.toString() === newField.field_name); - if (existingMasterField) { - const updatedMasterField: ItemMasterField = { - ...existingMasterField, - field_name: newField.field_name, - description: newField.placeholder, - default_properties: newField.properties, - updated_at: new Date().toISOString() - }; - updateItemMasterField(existingMasterField.id, updatedMasterField); - } - - toast.success('항목이 섹션에 수정되었습니다!'); - } else { - console.log('Adding field to section:', { pageId: selectedPage.id, sectionId: selectedSectionForField, fieldName: newField.field_name }); - - // 1. 섹션에 항목 추가 - addFieldToSection(Number(selectedSectionForField), newField); - - // 2. 마스터 항목 선택이 아닌 경우에만 새 마스터 항목 자동 생성 - // (마스터 항목 선택 시에는 이미 master_field_id로 연결되어 있음) - const isFromMasterField = masterFieldId !== null; - const existingMasterField = itemMasterFields.find(mf => mf.id.toString() === newField.field_name); - if (!isFromMasterField && !existingMasterField) { - // API 스펙: field_type은 소문자만 허용 (textbox, number, dropdown, checkbox, date, textarea) - const newMasterField: ItemMasterField = { - id: Date.now(), - field_name: newField.field_name, - field_type: newField.field_type, // API 스펙에 맞게 소문자 그대로 전달 - description: newField.placeholder, - default_properties: newField.properties, - category: selectedPage.item_type, // 현재 페이지의 품목유형을 카테고리로 설정 - created_at: new Date().toISOString(), - updated_at: new Date().toISOString() - }; - addItemMasterField(newMasterField); - - console.log('Field added to both section and master fields:', { - fieldId: newField.id, - masterFieldId: newMasterField.id - }); - - // 3. dropdown 타입이고 옵션이 있으면 속성관리 탭에도 자동 추가 - if (newField.properties?.inputType === 'dropdown' && newField.options && newField.options.length > 0) { - const existingCustomOptions = customAttributeOptions[newField.field_name]; - if (!existingCustomOptions || existingCustomOptions.length === 0) { - const customOptions = newField.options.map((option: { label: string; value: string }, index: number) => ({ - id: `CUSTOM-${newField.field_name}-${Date.now()}-${index}`, - value: option.value, - label: option.label, - isActive: true - })); - - setCustomAttributeOptions(prev => ({ - ...prev, - [newField.field_name]: customOptions - })); - - // 속성관리 탭에 하위 탭으로 추가 - const existingTab = attributeSubTabs.find(tab => tab.key === newField.field_name); - if (!existingTab) { - const maxOrder = Math.max(...attributeSubTabs.map(t => t.order), -1); - const newTab = { - id: `attr-${newField.field_name}`, - label: newField.field_name, - key: newField.field_name, - isDefault: false, - order: maxOrder + 1 - }; - setAttributeSubTabs(prev => { - // 추가 전 중복 체크 (혹시 모를 race condition 대비) - const alreadyExists = prev.find(t => t.key === newTab.key); - if (alreadyExists) return prev; - - const updated = [...prev, newTab]; - // 중복 제거 - return updated.filter((tab, index, self) => - index === self.findIndex(t => t.key === tab.key) - ); - }); - console.log('New attribute tab added:', newTab); - } - - console.log('Dropdown options added to custom attributes:', { - attributeKey: newField.field_name, - options: customOptions - }); - - toast.success(`항목이 추가되고 "${newField.field_name}" 속성 탭이 속성관리에 등록되었습니다!`); - } else { - toast.success('항목이 섹션에 추가되고 마스터 항목으로도 등록되었습니다!'); - } - } else { - toast.success('항목이 섹션에 추가되고 마스터 항목으로도 등록되었습니다!'); - } - } else { - toast.success('항목이 섹션에 추가되었습니다! (이미 마스터 항목에 존재함)'); - } - } - - // 폼 초기화 - setNewFieldName(''); - setNewFieldKey(''); - setNewFieldInputType('textbox'); - setNewFieldRequired(false); - setNewFieldOptions(''); - setNewFieldDescription(''); - setNewFieldConditionEnabled(false); - setNewFieldConditionTargetType('field'); - setNewFieldConditionFields([]); - setNewFieldConditionSections([]); - setTempConditionFieldKey(''); - setTempConditionValue(''); - setEditingFieldId(null); - setIsFieldDialogOpen(false); - }; - - const handleEditField = (sectionId: string, field: ItemField) => { - setSelectedSectionForField(Number(sectionId)); - setEditingFieldId(field.id); - setNewFieldName(field.field_name); - setNewFieldKey(field.id.toString()); - setNewFieldInputType(field.field_type); - setNewFieldRequired(field.is_required); - setNewFieldOptions(field.options?.map(opt => opt.value).join(', ') || ''); - setNewFieldDescription(''); // description은 ItemField에 없음 - - // 조건부 표시 설정 로드 - if (field.display_condition) { - setNewFieldConditionEnabled(true); - setNewFieldConditionTargetType(field.display_condition.targetType); - setNewFieldConditionFields(field.display_condition.fieldConditions || []); - setNewFieldConditionSections(field.display_condition.sectionIds || []); - } else { - setNewFieldConditionEnabled(false); - setNewFieldConditionTargetType('field'); - setNewFieldConditionFields([]); - setNewFieldConditionSections([]); - } - - setIsFieldDialogOpen(true); - }; - - // 마스터 필드 선택 시 폼 자동 채우기 - useEffect(() => { - if (fieldInputMode === 'master' && selectedMasterFieldId) { - const masterField = itemMasterFields.find(f => f.id === Number(selectedMasterFieldId)); - if (masterField) { - setNewFieldName(masterField.field_name); - setNewFieldKey(masterField.id.toString()); - setNewFieldInputType(masterField.default_properties?.inputType); - setNewFieldRequired(masterField.default_properties?.required); - setNewFieldOptions(masterField.default_properties?.options?.join(', ') || ''); - setNewFieldDescription(masterField.description || ''); - } - } else if (fieldInputMode === 'custom') { - // 직접 입력 모드로 전환 시 폼 초기화 - setNewFieldName(''); - setNewFieldKey(''); - setNewFieldInputType('textbox'); - setNewFieldRequired(false); - setNewFieldOptions(''); - setNewFieldDescription(''); - } - }, [fieldInputMode, selectedMasterFieldId, itemMasterFields]); - - // 마스터 항목 관리 핸들러 - const handleAddMasterField = () => { - if (!newMasterFieldName.trim() || !newMasterFieldKey.trim()) - return toast.error('항목명과 필드 키를 입력해주세요'); - - // 속성 목록 초기화 (dropdown 타입이고 옵션이 있으면 각 옵션을 속성으로 추가) - let _properties: ItemFieldProperty[] = []; - - if (newMasterFieldInputType === 'dropdown' && newMasterFieldOptions.trim()) { - const options = newMasterFieldOptions.split(',').map(o => o.trim()); - _properties = options.map((opt, idx) => ({ - id: `prop-${Date.now()}-${idx}`, - key: `${newMasterFieldKey}_${opt.toLowerCase().replace(/\s+/g, '_')}`, - label: opt, - type: 'textbox', - inputType: 'textbox', - required: false, - row: idx + 1, - col: 1 - })); - } - - // API 스펙: field_type은 소문자만 허용 (textbox, number, dropdown, checkbox, date, textarea) - const newMasterField: ItemMasterField = { - id: Date.now(), - field_name: newMasterFieldName, - field_type: newMasterFieldInputType, - category: newMasterFieldCategory || null, - description: newMasterFieldDescription || null, - default_validation: null, - default_properties: { - inputType: newMasterFieldInputType, - required: newMasterFieldRequired, - options: newMasterFieldInputType === 'dropdown' && newMasterFieldOptions.trim() - ? newMasterFieldOptions.split(',').map(o => o.trim()) - : undefined, - attributeType: newMasterFieldInputType === 'dropdown' ? newMasterFieldAttributeType : undefined, - multiColumn: (newMasterFieldInputType === 'textbox' || newMasterFieldInputType === 'textarea') ? newMasterFieldMultiColumn : undefined, - columnCount: (newMasterFieldInputType === 'textbox' || newMasterFieldInputType === 'textarea') && newMasterFieldMultiColumn ? newMasterFieldColumnCount : undefined, - columnNames: (newMasterFieldInputType === 'textbox' || newMasterFieldInputType === 'textarea') && newMasterFieldMultiColumn ? newMasterFieldColumnNames : undefined - }, - created_at: new Date().toISOString(), - updated_at: new Date().toISOString() - }; - - addItemMasterField(newMasterField); - - // dropdown 타입이고 attributeType이 'custom'이며 옵션이 있으면 속성관리 탭에도 자동 추가 - if (newMasterFieldInputType === 'dropdown' && newMasterFieldAttributeType === 'custom' && newMasterFieldOptions.trim()) { - const options = newMasterFieldOptions.split(',').map(o => o.trim()); - const existingCustomOptions = customAttributeOptions[newMasterFieldKey]; - if (!existingCustomOptions || existingCustomOptions.length === 0) { - const customOptions = options.map((option, index) => ({ - id: `CUSTOM-${newMasterFieldKey}-${Date.now()}-${index}`, - value: option, - label: option, - isActive: true - })); - - setCustomAttributeOptions(prev => ({ - ...prev, - [newMasterFieldKey]: customOptions - })); - - // 속성관리 탭에 하위 탭으로 추가 - const existingTab = attributeSubTabs.find(tab => tab.key === newMasterFieldKey); - if (!existingTab) { - const maxOrder = Math.max(...attributeSubTabs.map(t => t.order), -1); - const newTab = { - id: `attr-${newMasterFieldKey}`, - label: newMasterFieldName, - key: newMasterFieldKey, - isDefault: false, - order: maxOrder + 1 - }; - setAttributeSubTabs(prev => { - // 추가 전 중복 체크 (혹시 모를 race condition 대비) - const alreadyExists = prev.find(t => t.key === newTab.key); - if (alreadyExists) return prev; - - const updated = [...prev, newTab]; - // 중복 제거 - return updated.filter((tab, index, self) => - index === self.findIndex(t => t.key === tab.key) - ); - }); - console.log('New attribute tab added from master field:', newTab); - } - - console.log('Master field dropdown options added to custom attributes:', { - attributeKey: newMasterFieldKey, - options: customOptions - }); - } - } - - // 폼 초기화 - setNewMasterFieldName(''); - setNewMasterFieldKey(''); - setNewMasterFieldInputType('textbox'); - setNewMasterFieldRequired(false); - setNewMasterFieldCategory('공통'); - setNewMasterFieldDescription(''); - setNewMasterFieldOptions(''); - setNewMasterFieldAttributeType('custom'); - setNewMasterFieldMultiColumn(false); - setNewMasterFieldColumnCount(2); - setNewMasterFieldColumnNames(['컬럼1', '컬럼2']); - setIsMasterFieldDialogOpen(false); - - toast.success('마스터 항목이 추가되었습니다 (속성 탭에 반영됨, 저장 필요)'); - }; - - const handleEditMasterField = (field: ItemMasterField) => { - setEditingMasterFieldId(field.id); - setNewMasterFieldName(field.field_name); - setNewMasterFieldKey(field.id.toString()); - setNewMasterFieldInputType(field.default_properties?.inputType); - setNewMasterFieldRequired(field.default_properties?.required); - setNewMasterFieldCategory(field.category || '공통'); - setNewMasterFieldDescription(field.description || ''); - setNewMasterFieldOptions(field.default_properties?.options?.join(', ') || ''); - setNewMasterFieldAttributeType((field.default_properties as any).attributeType || 'custom'); - setNewMasterFieldMultiColumn(field.default_properties?.multiColumn || false); - setNewMasterFieldColumnCount(field.default_properties?.columnCount || 2); - setNewMasterFieldColumnNames(field.default_properties?.columnNames || ['컬럼1', '컬럼2']); - setIsMasterFieldDialogOpen(true); - }; - - const handleUpdateMasterField = () => { - if (!editingMasterFieldId || !newMasterFieldName.trim() || !newMasterFieldKey.trim()) - return toast.error('항목명과 필드 키를 입력해주세요'); - - // 속성 목록 업데이트 (dropdown 타입이고 옵션이 있으면 각 옵션을 속성으로 추가) - let _properties2: ItemFieldProperty[] = []; - - if (newMasterFieldInputType === 'dropdown' && newMasterFieldOptions.trim()) { - const options = newMasterFieldOptions.split(',').map(o => o.trim()); - _properties2 = options.map((opt, idx) => ({ - id: `prop-${Date.now()}-${idx}`, - key: `${newMasterFieldKey}_${opt.toLowerCase().replace(/\s+/g, '_')}`, - label: opt, - type: 'textbox', - inputType: 'textbox', - required: false, - row: idx + 1, - col: 1 - })); - } - - updateItemMasterField(editingMasterFieldId, { - field_name: newMasterFieldName, - default_properties: { - inputType: newMasterFieldInputType, - required: newMasterFieldRequired, - row: 1, - col: 1, - options: newMasterFieldInputType === 'dropdown' && newMasterFieldOptions.trim() - ? newMasterFieldOptions.split(',').map(o => o.trim()) - : undefined, - attributeType: newMasterFieldInputType === 'dropdown' ? newMasterFieldAttributeType : undefined, - multiColumn: (newMasterFieldInputType === 'textbox' || newMasterFieldInputType === 'textarea') ? newMasterFieldMultiColumn : undefined, - columnCount: (newMasterFieldInputType === 'textbox' || newMasterFieldInputType === 'textarea') && newMasterFieldMultiColumn ? newMasterFieldColumnCount : undefined, - columnNames: (newMasterFieldInputType === 'textbox' || newMasterFieldInputType === 'textarea') && newMasterFieldMultiColumn ? newMasterFieldColumnNames : undefined - }, - category: newMasterFieldCategory, - description: newMasterFieldDescription || undefined - }); - - // 폼 초기화 - setEditingMasterFieldId(null); - setNewMasterFieldName(''); - setNewMasterFieldKey(''); - setNewMasterFieldInputType('textbox'); - setNewMasterFieldRequired(false); - setNewMasterFieldCategory('공통'); - setNewMasterFieldDescription(''); - setNewMasterFieldOptions(''); - setNewMasterFieldAttributeType('custom'); - setNewMasterFieldMultiColumn(false); - setNewMasterFieldColumnCount(2); - setNewMasterFieldColumnNames(['컬럼1', '컬럼2']); - setIsMasterFieldDialogOpen(false); - - toast.success('마스터 항목이 수정되었습니다 (속성 탭에 반영됨, 저장 필요)'); - }; - - const handleDeleteMasterField = (id: number) => { - if (confirm('이 마스터 항목을 삭제하시겠습니까?')) { - // 삭제할 마스터 항목 찾기 - const fieldToDelete = itemMasterFields.find(f => f.id === id); - - // 마스터 항목 삭제 - deleteItemMasterField(id); - - // 속성 탭에서 해당 탭 제거 - if (fieldToDelete) { - setAttributeSubTabs(prev => prev.filter(tab => tab.key !== fieldToDelete.id.toString())); - - // 삭제된 탭이 현재 활성 탭이면 다른 탭으로 전환 - if (activeAttributeTab === fieldToDelete.id.toString()) { - setActiveAttributeTab('units'); - } - } - - toast.success('마스터 항목이 삭제되었습니다'); - } - }; - - // 페이지 삭제 핸들러 (pendingChanges 제거 포함) + // 페이지 삭제 핸들러 (pendingChanges 제거 포함) - 훅에 없어 유지 const handleDeletePageWithTracking = (pageId: number) => { - // 삭제할 페이지 찾기 const pageToDelete = itemPages.find(p => p.id === pageId); - - // 해당 페이지의 모든 섹션 ID 수집 const sectionIds = pageToDelete?.sections.map(s => s.id) || []; - - // 해당 페이지의 모든 필드 ID 수집 const fieldIds = pageToDelete?.sections.flatMap(s => s.fields?.map(f => f.id) || []) || []; - - // ItemMasterContext의 deleteItemPage 호출 deleteItemPage(pageId); - - console.log('페이지 삭제 완료:', { - pageId, - removedSections: sectionIds.length, - removedFields: fieldIds.length - }); + console.log('페이지 삭제 완료:', { pageId, removedSections: sectionIds.length, removedFields: fieldIds.length }); }; - // 섹션 삭제 핸들러 (pendingChanges 제거 포함) + // 섹션 삭제 핸들러 (pendingChanges 제거 포함) - 훅에 없어 유지 const handleDeleteSectionWithTracking = (pageId: number, sectionId: number) => { - // 삭제할 섹션 찾기 const page = itemPages.find(p => p.id === pageId); const sectionToDelete = page?.sections.find(s => s.id === sectionId); - - // 해당 섹션의 모든 필드 ID 수집 const fieldIds = sectionToDelete?.fields?.map(f => f.id) || []; - - // ItemMasterContext의 deleteSection 호출 deleteSection(Number(sectionId)); - - console.log('섹션 삭제 완료:', { - sectionId, - removedFields: fieldIds.length - }); + console.log('섹션 삭제 완료:', { sectionId, removedFields: fieldIds.length }); }; - // 필드 삭제 핸들러 (pendingChanges 제거 포함) - const handleDeleteFieldWithTracking = (pageId: string, sectionId: string, fieldId: string) => { - // ItemMasterContext의 deleteField 호출 + // 필드 삭제 핸들러 (pendingChanges 제거 포함) - 훅에 없어 유지 + const handleDeleteFieldWithTracking = (_pageId: string, _sectionId: string, fieldId: string) => { deleteField(Number(fieldId)); - console.log('필드 삭제 완료:', fieldId); }; - // 섹션 템플릿 핸들러 - const handleAddSectionTemplate = () => { - if (!newSectionTemplateTitle.trim()) - return toast.error('섹션 제목을 입력해주세요'); - - // Context의 addSectionTemplate이 기대하는 SectionTemplate 형식 사용 - // template_name, section_type ('BASIC' | 'BOM' | 'CUSTOM') - const newTemplateData = { - tenant_id: tenantId ?? 0, - template_name: newSectionTemplateTitle, - section_type: (newSectionTemplateType === 'bom' ? 'BOM' : 'BASIC') as 'BASIC' | 'BOM' | 'CUSTOM', - description: newSectionTemplateDescription || null, - default_fields: null, - category: newSectionTemplateCategory, - created_by: null, - updated_by: null, - }; - - console.log('Adding section template:', newTemplateData); - addSectionTemplate(newTemplateData); - - setNewSectionTemplateTitle(''); - setNewSectionTemplateDescription(''); - setNewSectionTemplateCategory([]); - setNewSectionTemplateType('fields'); - setIsSectionTemplateDialogOpen(false); - toast.success('섹션 템플릿이 추가되었습니다! (템플릿 목록에서 확인 가능)'); + // 절대경로 업데이트 - 로컬에서 처리 + const _handleUpdateAbsolutePathLocal = (pageId: number, newPath: string) => { + updateItemPage(pageId, { absolute_path: newPath }); + toast.success('절대경로가 업데이트되었습니다'); }; - const handleEditSectionTemplate = (template: SectionTemplate) => { - setEditingSectionTemplateId(template.id); - // SectionTemplate 타입에 맞게 template_name, section_type 사용 - setNewSectionTemplateTitle(template.template_name); - setNewSectionTemplateDescription(template.description || ''); - setNewSectionTemplateCategory(template.category || []); - setNewSectionTemplateType(template.section_type === 'BOM' ? 'bom' : 'fields'); - setIsSectionTemplateDialogOpen(true); + // 필드 순서 변경 + const _handleReorderFieldsLocal = (sectionId: number, orderedFieldIds: number[]) => { + reorderFields(sectionId, orderedFieldIds); }; - const handleUpdateSectionTemplate = () => { - if (!editingSectionTemplateId || !newSectionTemplateTitle.trim()) - return toast.error('섹션 제목을 입력해주세요'); - - // Context의 updateSectionTemplate이 기대하는 SectionTemplate 형식 사용 - // template_name, section_type ('BASIC' | 'BOM' | 'CUSTOM') - const updateData = { - template_name: newSectionTemplateTitle, - description: newSectionTemplateDescription || undefined, - category: newSectionTemplateCategory.length > 0 ? newSectionTemplateCategory : undefined, - section_type: (newSectionTemplateType === 'bom' ? 'BOM' : 'BASIC') as 'BASIC' | 'BOM' | 'CUSTOM' - }; - - console.log('Updating section template:', { id: editingSectionTemplateId, updateData }); - updateSectionTemplate(editingSectionTemplateId, updateData); - - setEditingSectionTemplateId(null); - setNewSectionTemplateTitle(''); - setNewSectionTemplateDescription(''); - setNewSectionTemplateCategory([]); - setNewSectionTemplateType('fields'); - setIsSectionTemplateDialogOpen(false); - toast.success('섹션이 수정되었습니다 (저장 필요)'); + // 페이지 이름 업데이트 + const _handleUpdatePageNameLocal = (pageId: number, newName: string) => { + updateItemPage(pageId, { page_name: newName }); + toast.success('페이지 이름이 업데이트되었습니다'); }; - const handleDeleteSectionTemplate = (id: number) => { - if (confirm('이 섹션을 삭제하시겠습니까?')) { - // 섹션 템플릿 삭제 - deleteSectionTemplate(id); + // ===== 래퍼 함수들 (훅 함수에 selectedPage 바인딩 및 타입 호환성) ===== + const handleAddSectionWrapper = () => handleAddSection(selectedPage); + const handleLinkTemplateWrapper = (template: SectionTemplate) => handleLinkTemplate(template, selectedPage); + const handleSaveSectionTitleWrapper = () => handleSaveSectionTitle(selectedPage); + const handleAddFieldWrapper = () => handleAddField(selectedPage); + const handleLoadTemplateWrapper = () => handleLoadTemplate(selectedPage); - toast.success('섹션이 삭제되었습니다'); - } - }; - - // 섹션 템플릿 불러오기 - const handleLoadTemplate = () => { - if (!selectedTemplateId || !selectedPage) { - return toast.error('템플릿을 선택해주세요'); - } - - const template = sectionTemplates.find(t => t.id === Number(selectedTemplateId)); - if (!template) { - return toast.error('템플릿을 찾을 수 없습니다'); - } - - // 템플릿을 복사해서 섹션으로 추가 - // API 스펙: SectionTemplate은 title, type ('fields' | 'bom') 사용 - const newSection: Omit = { - page_id: selectedPage.id, - section_name: template.title, - section_type: template.type === 'bom' ? 'BOM' : 'BASIC', - description: template.description || undefined, - order_no: selectedPage.sections.length + 1, - is_collapsible: true, - is_default_open: true, - fields: [], - bomItems: template.type === 'bom' ? [] : undefined - }; - - console.log('Loading template to section:', template.title, 'type:', template.type, 'newSection:', newSection); - addSectionToPage(selectedPage.id, newSection); - setSelectedTemplateId(null); - setIsLoadTemplateDialogOpen(false); - toast.success('섹션이 불러와졌습니다'); - }; - - // 섹션 템플릿 항목 추가 - const handleAddTemplateField = () => { - if (!currentTemplateId || !templateFieldName.trim() || !templateFieldKey.trim()) { - return toast.error('모든 필수 항목을 입력해주세요'); - } - - const template = sectionTemplates.find(t => t.id === currentTemplateId); - if (!template) return; - - // 항목 탭에 해당 항목이 없으면 자동으로 추가 - const existingMasterField = itemMasterFields.find(f => f.id.toString() === templateFieldKey); - if (!existingMasterField && !editingTemplateFieldId) { - // API 스펙: field_type은 소문자만 허용 (textbox, number, dropdown, checkbox, date, textarea) - const newMasterField: ItemMasterField = { - id: Date.now(), - field_name: templateFieldName, - field_type: templateFieldInputType, - default_properties: { - inputType: templateFieldInputType, - required: templateFieldRequired, - row: 1, - col: 1, - options: templateFieldInputType === 'dropdown' && templateFieldOptions.trim() - ? templateFieldOptions.split(',').map(o => o.trim()) - : undefined, - multiColumn: (templateFieldInputType === 'textbox' || templateFieldInputType === 'textarea') ? templateFieldMultiColumn : undefined, - columnCount: (templateFieldInputType === 'textbox' || templateFieldInputType === 'textarea') && templateFieldMultiColumn ? templateFieldColumnCount : undefined, - columnNames: (templateFieldInputType === 'textbox' || templateFieldInputType === 'textarea') && templateFieldMultiColumn ? templateFieldColumnNames : undefined - } as any, - category: '공통', - description: templateFieldDescription || undefined, - created_at: new Date().toISOString().split('T')[0], - updated_at: new Date().toISOString().split('T')[0] - }; - addItemMasterField(newMasterField); - - // dropdown 타입이고 옵션이 있으면 속성관리 탭에도 자동 추가 - if (templateFieldInputType === 'dropdown' && templateFieldOptions.trim()) { - const options = templateFieldOptions.split(',').map(o => o.trim()); - const existingCustomOptions = customAttributeOptions[templateFieldKey]; - if (!existingCustomOptions || existingCustomOptions.length === 0) { - const customOptions = options.map((option, index) => ({ - id: `CUSTOM-${templateFieldKey}-${Date.now()}-${index}`, - value: option, - label: option, - isActive: true - })); - - setCustomAttributeOptions(prev => ({ - ...prev, - [templateFieldKey]: customOptions - })); - - console.log('Template field dropdown options added to custom attributes:', { - attributeKey: templateFieldKey, - options: customOptions - }); - - toast.success(`항목 탭과 속성관리 탭에 "${templateFieldName}" 속성이 자동으로 추가되었습니다`); - } else { - toast.success('항목 탭에 자동으로 추가되었습니다'); - } - } else { - toast.success('항목 탭에 자동으로 추가되었습니다'); - } - } - - // TemplateField 형식으로 생성 (UI가 기대하는 형식) - const newField: TemplateField = { - id: String(editingTemplateFieldId || Date.now()), - name: templateFieldName, - fieldKey: templateFieldKey, - property: { - inputType: templateFieldInputType, - required: templateFieldRequired, - options: templateFieldInputType === 'dropdown' && templateFieldOptions.trim() - ? templateFieldOptions.split(',').map(o => o.trim()) - : undefined, - multiColumn: (templateFieldInputType === 'textbox' || templateFieldInputType === 'textarea') ? templateFieldMultiColumn : undefined, - columnCount: (templateFieldInputType === 'textbox' || templateFieldInputType === 'textarea') && templateFieldMultiColumn ? templateFieldColumnCount : undefined, - columnNames: (templateFieldInputType === 'textbox' || templateFieldInputType === 'textarea') && templateFieldMultiColumn ? templateFieldColumnNames : undefined - }, - description: templateFieldDescription || undefined - }; - - let updatedFields; - const currentFields = template.default_fields ? (typeof template.default_fields === 'string' ? JSON.parse(template.default_fields) : template.default_fields) : []; - - if (editingTemplateFieldId) { - // f.id는 string, editingTemplateFieldId는 number이므로 String으로 변환하여 비교 - updatedFields = Array.isArray(currentFields) ? currentFields.map((f: any) => String(f.id) === String(editingTemplateFieldId) ? newField : f) : []; - toast.success('항목이 수정되었습니다'); - } else { - updatedFields = Array.isArray(currentFields) ? [...currentFields, newField] : [newField]; - toast.success('항목이 추가되었습니다'); - } - - updateSectionTemplate(currentTemplateId, { default_fields: updatedFields }); - - // 폼 초기화 - setTemplateFieldName(''); - setTemplateFieldKey(''); - setTemplateFieldInputType('textbox'); - setTemplateFieldRequired(false); - setTemplateFieldOptions(''); - setTemplateFieldDescription(''); - setTemplateFieldMultiColumn(false); - setTemplateFieldColumnCount(2); - setTemplateFieldColumnNames(['컬럼1', '컬럼2']); - setEditingTemplateFieldId(null); - setIsTemplateFieldDialogOpen(false); - }; - - // TemplateField 형식으로 수정 (UI가 전달하는 형식) - const handleEditTemplateField = (templateId: number, field: TemplateField) => { - setCurrentTemplateId(templateId); - setEditingTemplateFieldId(Number(field.id)); // TemplateField.id는 string - setTemplateFieldName(field.name); - setTemplateFieldKey(field.fieldKey); - setTemplateFieldInputType(field.property.inputType); - setTemplateFieldRequired(field.property.required); - setTemplateFieldOptions(field.property.options?.join(', ') || ''); - setTemplateFieldDescription(field.description || ''); - setTemplateFieldMultiColumn(field.property.multiColumn || false); - setTemplateFieldColumnCount(field.property.columnCount || 2); - setTemplateFieldColumnNames(field.property.columnNames || ['컬럼1', '컬럼2']); - setIsTemplateFieldDialogOpen(true); - }; - - const handleDeleteTemplateField = (templateId: number, fieldId: string) => { - if (!confirm('이 항목을 삭제하시겠습니까?')) return; - - const template = sectionTemplates.find(t => t.id === templateId); - if (!template) return; - - const currentFields = template.default_fields ? (typeof template.default_fields === 'string' ? JSON.parse(template.default_fields) : template.default_fields) : []; - // f.id는 number 또는 string일 수 있으므로 String으로 변환하여 비교 - const updatedFields = Array.isArray(currentFields) ? currentFields.filter((f: any) => String(f.id) !== String(fieldId)) : []; - updateSectionTemplate(templateId, { default_fields: updatedFields }); - toast.success('항목이 삭제되었습니다'); - }; - - // BOM 관리 핸들러 - const _handleAddBOMItem = (item: Omit) => { - const newItem: BOMItem = { - ...item, - id: Date.now(), - created_at: new Date().toISOString(), - updated_at: new Date().toISOString(), - tenant_id: tenantId ?? 0, - section_id: 0 - }; - setBomItems(prev => [...prev, newItem]); - }; - - const _handleUpdateBOMItem = (id: number, item: Partial) => { - setBomItems(prev => prev.map(bom => bom.id === id ? { ...bom, ...item } : bom)); - }; - - const _handleDeleteBOMItem = (id: number) => { - setBomItems(prev => prev.filter(bom => bom.id !== id)); - }; - - // 템플릿별 BOM 관리 핸들러 - const handleAddBOMItemToTemplate = (templateId: number, item: Omit) => { - const newItem: BOMItem = { - ...item, - id: Date.now(), - created_at: new Date().toISOString(), - updated_at: new Date().toISOString(), - tenant_id: tenantId ?? 0, - section_id: 0 - }; - - const template = sectionTemplates.find(t => t.id === templateId); - if (!template) return; - - const updatedBomItems = [...(template.bomItems || []), newItem]; - updateSectionTemplate(templateId, { bomItems: updatedBomItems }); - }; - - const handleUpdateBOMItemInTemplate = (templateId: number, itemId: number, item: Partial) => { - const template = sectionTemplates.find(t => t.id === templateId); - if (!template || !template.bomItems) return; - - const updatedBomItems = template.bomItems.map(bom => - bom.id === itemId ? { ...bom, ...item } : bom - ); - updateSectionTemplate(templateId, { bomItems: updatedBomItems }); - }; - - const handleDeleteBOMItemFromTemplate = (templateId: number, itemId: number) => { - const template = sectionTemplates.find(t => t.id === templateId); - if (!template || !template.bomItems) return; - - const updatedBomItems = template.bomItems.filter(bom => bom.id !== itemId); - updateSectionTemplate(templateId, { bomItems: updatedBomItems }); - }; - - const _toggleSection = (sectionId: string) => { - setExpandedSections(prev => ({ ...prev, [sectionId]: !prev[sectionId] })); - }; - - // 탭 관리 함수 - const handleAddTab = () => { - if (!newTabLabel.trim()) return toast.error('탭 이름을 입력해주세요'); - - const newTab = { - id: Date.now().toString(), - label: newTabLabel, - icon: 'FileText', - isDefault: false, - order: customTabs.length + 1 - }; - - setCustomTabs(prev => [...prev, newTab]); - setNewTabLabel(''); - setIsAddTabDialogOpen(false); - toast.success('탭이 추가되었습니다'); - }; - - const _handleEditTab = (tabId: string) => { - const tab = customTabs.find(t => t.id === tabId); - if (!tab || tab.isDefault) return; - - setEditingTabId(tabId); - setNewTabLabel(tab.label); - setIsAddTabDialogOpen(true); - }; - - const handleUpdateTab = () => { - if (!newTabLabel.trim() || !editingTabId) return toast.error('탭 이름을 입력해주세요'); - - setCustomTabs(prev => prev.map(tab => - tab.id === editingTabId ? { ...tab, label: newTabLabel } : tab - )); - - setEditingTabId(null); - setNewTabLabel(''); - setIsAddTabDialogOpen(false); - setIsManageTabsDialogOpen(true); - toast.success('탭이 수정되었습니다'); - }; - - const handleDeleteTab = (tabId: string) => { - const tab = customTabs.find(t => t.id === tabId); - if (!tab || tab.isDefault) return toast.error('기본 탭은 삭제할 수 없습니다'); - - setDeletingTabId(tabId); - setIsDeleteTabDialogOpen(true); - }; - - const confirmDeleteTab = () => { - if (!deletingTabId) return; - - setCustomTabs(prev => prev.filter(t => t.id !== deletingTabId)); - if (activeTab === deletingTabId) setActiveTab('categories'); - - setIsDeleteTabDialogOpen(false); - setDeletingTabId(null); - toast.success('탭이 삭제되었습니다'); - }; - - // 속성 하위 탭 관리 함수들 - const handleAddAttributeTab = () => { - if (!newAttributeTabLabel.trim()) return toast.error('탭 이름을 입력해주세요'); - - const newTab = { - id: `attr-${Date.now()}`, - label: newAttributeTabLabel, - key: `custom-${Date.now()}`, - isDefault: false, - order: attributeSubTabs.length - }; - - setAttributeSubTabs(prev => [...prev, newTab]); - setNewAttributeTabLabel(''); - setIsAddAttributeTabDialogOpen(false); - toast.success('속성 탭이 추가되었습니다'); - }; - - const handleUpdateAttributeTab = () => { - if (!newAttributeTabLabel.trim() || !editingAttributeTabId) return toast.error('탭 이름을 입력해주세요'); - - setAttributeSubTabs(prev => prev.map(tab => - tab.id === editingAttributeTabId ? { ...tab, label: newAttributeTabLabel } : tab - )); - - setEditingAttributeTabId(null); - setNewAttributeTabLabel(''); - setIsAddAttributeTabDialogOpen(false); - setIsManageAttributeTabsDialogOpen(true); - toast.success('속성 탭이 수정되었습니다'); - }; - - const handleDeleteAttributeTab = (tabId: string) => { - const tab = attributeSubTabs.find(t => t.id === tabId); - if (!tab || tab.isDefault) return toast.error('기본 속성 탭은 삭제할 수 없습니다'); - - setDeletingAttributeTabId(tabId); - setIsDeleteAttributeTabDialogOpen(true); - }; - - const confirmDeleteAttributeTab = () => { - if (!deletingAttributeTabId) return; - - setAttributeSubTabs(prev => prev.filter(t => t.id !== deletingAttributeTabId)); - if (activeAttributeTab === deletingAttributeTabId) { - const firstTab = attributeSubTabs.find(t => t.id !== deletingAttributeTabId); - if (firstTab) setActiveAttributeTab(firstTab.key); - } - - setIsDeleteAttributeTabDialogOpen(false); - setDeletingAttributeTabId(null); - toast.success('속성 탭이 삭제되었습니다'); - }; - - const moveAttributeTabUp = (tabId: string) => { - const tabIndex = attributeSubTabs.findIndex(t => t.id === tabId); - if (tabIndex <= 0) return; - - const newTabs = [...attributeSubTabs]; - const temp = newTabs[tabIndex - 1].order; - newTabs[tabIndex - 1].order = newTabs[tabIndex].order; - newTabs[tabIndex].order = temp; - - setAttributeSubTabs(newTabs.sort((a, b) => a.order - b.order)); - // hasUnsavedChanges는 computed value이므로 자동 계산됨 - }; - - const moveAttributeTabDown = (tabId: string) => { - const tabIndex = attributeSubTabs.findIndex(t => t.id === tabId); - if (tabIndex >= attributeSubTabs.length - 1) return; - - const newTabs = [...attributeSubTabs]; - const temp = newTabs[tabIndex + 1].order; - newTabs[tabIndex + 1].order = newTabs[tabIndex].order; - newTabs[tabIndex].order = temp; - - setAttributeSubTabs(newTabs.sort((a, b) => a.order - b.order)); - // hasUnsavedChanges는 computed value이므로 자동 계산됨 - }; - - const getTabIcon = (iconName: string) => { - const icons: Record = { - FolderTree, ListTree, FileText, Settings, Layers, Database, Plus, Folder - }; - return icons[iconName] || FileText; - }; - - const moveTabUp = (tabId: string) => { - const tabIndex = customTabs.findIndex(t => t.id === tabId); - if (tabIndex <= 0) return; - - const newTabs = [...customTabs]; - const temp = newTabs[tabIndex - 1].order; - newTabs[tabIndex - 1].order = newTabs[tabIndex].order; - newTabs[tabIndex].order = temp; - - setCustomTabs(newTabs.sort((a, b) => a.order - b.order)); - // hasUnsavedChanges는 computed value이므로 자동 계산됨 - toast.success('탭 순서가 변경되었습니다'); - }; - - const moveTabDown = (tabId: string) => { - const tabIndex = customTabs.findIndex(t => t.id === tabId); - if (tabIndex >= customTabs.length - 1) return; - - const newTabs = [...customTabs]; - const temp = newTabs[tabIndex + 1].order; - newTabs[tabIndex + 1].order = newTabs[tabIndex].order; - newTabs[tabIndex].order = temp; - - setCustomTabs(newTabs.sort((a, b) => a.order - b.order)); - // hasUnsavedChanges는 computed value이므로 자동 계산됨 - toast.success('탭 순서가 변경되었습니다'); - }; - - const handleEditTabFromManage = (tab: typeof customTabs[0]) => { - if (tab.isDefault) return toast.error('기본 탭은 수정할 수 없습니다'); - setEditingTabId(tab.id); - setNewTabLabel(tab.label); - setIsManageTabsDialogOpen(false); - setIsAddTabDialogOpen(true); - }; + // setter 래퍼들 (Dispatch 타입 호환성) + const setNewSectionTypeWrapper: React.Dispatch> = setNewSectionType as any; + const setNewPageItemTypeWrapper: React.Dispatch> = setNewPageItemType as any; + // ===== 유틸리티 함수들 ===== // 현재 섹션의 모든 필드 가져오기 (조건부 필드 참조용) const _getAllFieldsInSection = (sectionId: number) => { if (!selectedPage) return []; @@ -2253,9 +917,12 @@ export function ItemMasterDataManagement() { const masterField = itemMasterFields.find(f => f.id.toString() === currentTabKey); // 마스터 항목이면 해당 항목의 속성값들을 표시 - // Note: default_properties is Record, not an array, so this condition will always be false - // This code block may need refactoring to work with the actual data structure - if (masterField && masterField.default_properties && Array.isArray(masterField.default_properties)) { + // Note: properties is Record | null, convert to array for display + const propertiesArray = masterField?.properties + ? Object.entries(masterField.properties).map(([key, value]) => ({ key, ...value as object })) + : []; + + if (masterField && propertiesArray.length > 0) { return (
@@ -2268,7 +935,7 @@ export function ItemMasterDataManagement() {
- {(masterField.default_properties as any[]).map((property: any) => { + {propertiesArray.map((property: any) => { const inputTypeLabel = property.type === 'textbox' ? '텍스트박스' : property.type === 'number' ? '숫자' : @@ -2521,7 +1188,7 @@ export function ItemMasterDataManagement() { selectedSectionForField={selectedSectionForField} setSelectedSectionForField={setSelectedSectionForField} newSectionType={newSectionType} - setNewSectionType={setNewSectionType} + setNewSectionType={setNewSectionTypeWrapper} updateItemPage={updateItemPage} trackChange={() => {}} deleteItemPage={handleDeletePageWithTracking} @@ -2530,7 +1197,7 @@ export function ItemMasterDataManagement() { setIsSectionDialogOpen={setIsSectionDialogOpen} setIsFieldDialogOpen={setIsFieldDialogOpen} handleEditSectionTitle={handleEditSectionTitle} - handleSaveSectionTitle={handleSaveSectionTitle} + handleSaveSectionTitle={handleSaveSectionTitleWrapper} moveSection={moveSection} deleteSection={handleDeleteSectionWithTracking} updateSection={updateSection} @@ -2663,7 +1330,7 @@ export function ItemMasterDataManagement() { newPageName={newPageName} setNewPageName={setNewPageName} newPageItemType={newPageItemType} - setNewPageItemType={setNewPageItemType} + setNewPageItemType={setNewPageItemTypeWrapper} handleAddPage={handleAddPage} /> @@ -2676,13 +1343,13 @@ export function ItemMasterDataManagement() { setNewSectionTitle={setNewSectionTitle} newSectionDescription={newSectionDescription} setNewSectionDescription={setNewSectionDescription} - handleAddSection={handleAddSection} + handleAddSection={handleAddSectionWrapper} sectionInputMode={sectionInputMode} setSectionInputMode={setSectionInputMode} sectionTemplates={sectionTemplates} selectedTemplateId={selectedSectionTemplateId} setSelectedTemplateId={setSelectedSectionTemplateId} - handleLinkTemplate={handleLinkTemplate} + handleLinkTemplate={handleLinkTemplateWrapper} /> {/* 항목 추가/수정 다이얼로그 - 데스크톱 */} @@ -2725,7 +1392,7 @@ export function ItemMasterDataManagement() { selectedSectionForField={selectedPage?.sections.find(s => s.id === selectedSectionForField) || null} selectedPage={selectedPage || null} itemMasterFields={itemMasterFields} - handleAddField={handleAddField} + handleAddField={handleAddFieldWrapper} setIsColumnDialogOpen={setIsColumnDialogOpen} setEditingColumnId={setEditingColumnId} setColumnName={setColumnName} @@ -2773,7 +1440,7 @@ export function ItemMasterDataManagement() { selectedSectionForField={selectedPage?.sections.find(s => s.id === selectedSectionForField) || null} selectedPage={selectedPage || null} itemMasterFields={itemMasterFields} - handleAddField={handleAddField} + handleAddField={handleAddFieldWrapper} setIsColumnDialogOpen={setIsColumnDialogOpen} setEditingColumnId={setEditingColumnId} setColumnName={setColumnName} @@ -2886,7 +1553,7 @@ export function ItemMasterDataManagement() { sectionTemplates={sectionTemplates} selectedTemplateId={selectedTemplateId} setSelectedTemplateId={setSelectedTemplateId} - handleLoadTemplate={handleLoadTemplate} + handleLoadTemplate={handleLoadTemplateWrapper} /> ); diff --git a/src/components/items/ItemMasterDataManagement/dialogs/ColumnDialog.tsx b/src/components/items/ItemMasterDataManagement/dialogs/ColumnDialog.tsx index 4ec30d0f..4d6e49a7 100644 --- a/src/components/items/ItemMasterDataManagement/dialogs/ColumnDialog.tsx +++ b/src/components/items/ItemMasterDataManagement/dialogs/ColumnDialog.tsx @@ -1,5 +1,6 @@ 'use client'; +import { useState } from 'react'; import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle } from '@/components/ui/dialog'; import { Button } from '@/components/ui/button'; import { Label } from '@/components/ui/label'; @@ -31,9 +32,24 @@ export function ColumnDialog({ textboxColumns, setTextboxColumns, }: ColumnDialogProps) { + const [isSubmitted, setIsSubmitted] = useState(false); + + // 유효성 검사 + const isNameEmpty = !columnName.trim(); + const isKeyEmpty = !columnKey.trim(); + + const handleClose = () => { + setIsColumnDialogOpen(false); + setEditingColumnId(null); + setColumnName(''); + setColumnKey(''); + setIsSubmitted(false); + }; + const handleSubmit = () => { - if (!columnName.trim() || !columnKey.trim()) { - return toast.error('모든 필드를 입력해주세요'); + setIsSubmitted(true); + if (isNameEmpty || isKeyEmpty) { + return; } if (editingColumnId) { @@ -54,20 +70,14 @@ export function ColumnDialog({ toast.success('컬럼이 추가되었습니다'); } - setIsColumnDialogOpen(false); - setEditingColumnId(null); - setColumnName(''); - setColumnKey(''); + handleClose(); + setIsSubmitted(false); }; return ( { - setIsColumnDialogOpen(open); - if (!open) { - setEditingColumnId(null); - setColumnName(''); - setColumnKey(''); - } + if (!open) handleClose(); + else setIsColumnDialogOpen(open); }}> @@ -83,7 +93,11 @@ export function ColumnDialog({ value={columnName} onChange={(e) => setColumnName(e.target.value)} placeholder="예: 가로" + className={isSubmitted && isNameEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isNameEmpty && ( +

컬럼명을 입력해주세요

+ )}
@@ -91,11 +105,15 @@ export function ColumnDialog({ value={columnKey} onChange={(e) => setColumnKey(e.target.value)} placeholder="예: width" + className={isSubmitted && isKeyEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isKeyEmpty && ( +

컬럼 키를 입력해주세요

+ )}
- + diff --git a/src/components/items/ItemMasterDataManagement/dialogs/FieldDialog.tsx b/src/components/items/ItemMasterDataManagement/dialogs/FieldDialog.tsx index 2baa1928..c5e7b14b 100644 --- a/src/components/items/ItemMasterDataManagement/dialogs/FieldDialog.tsx +++ b/src/components/items/ItemMasterDataManagement/dialogs/FieldDialog.tsx @@ -1,5 +1,6 @@ 'use client'; +import { useState } from 'react'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; @@ -121,7 +122,14 @@ export function FieldDialog({ setColumnName, setColumnKey, }: FieldDialogProps) { + const [isSubmitted, setIsSubmitted] = useState(false); + + // 유효성 검사 + const isNameEmpty = !newFieldName.trim(); + const isKeyEmpty = !newFieldKey.trim(); + const handleClose = () => { + setIsSubmitted(false); onOpenChange(false); setEditingFieldId(null); setFieldInputMode('custom'); @@ -268,7 +276,11 @@ export function FieldDialog({ value={newFieldName} onChange={(e) => setNewFieldName(e.target.value)} placeholder="예: 품목명" + className={isSubmitted && isNameEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isNameEmpty && ( +

항목명을 입력해주세요

+ )}
@@ -276,7 +288,11 @@ export function FieldDialog({ value={newFieldKey} onChange={(e) => setNewFieldKey(e.target.value)} placeholder="예: itemName" + className={isSubmitted && isKeyEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isKeyEmpty && ( +

필드 키를 입력해주세요

+ )}
@@ -402,7 +418,12 @@ export function FieldDialog({ - +
diff --git a/src/components/items/ItemMasterDataManagement/dialogs/FieldDrawer.tsx b/src/components/items/ItemMasterDataManagement/dialogs/FieldDrawer.tsx index b3fb5e7e..913f0eb2 100644 --- a/src/components/items/ItemMasterDataManagement/dialogs/FieldDrawer.tsx +++ b/src/components/items/ItemMasterDataManagement/dialogs/FieldDrawer.tsx @@ -189,21 +189,22 @@ export function FieldDrawer({
{ - setSelectedMasterFieldId(field.id); - setNewFieldName(field.name); - setNewFieldKey(field.fieldKey); - setNewFieldInputType(field.property.inputType); - setNewFieldRequired(field.property.required); + setSelectedMasterFieldId(String(field.id)); + setNewFieldName(field.field_name); + setNewFieldKey(`field_${field.id}`); + setNewFieldInputType(field.field_type); + setNewFieldRequired((field.properties as any)?.required ?? false); setNewFieldDescription(field.description || ''); - setNewFieldOptions(field.property.options?.join(', ') || ''); - if (field.property.multiColumn && field.property.columnNames) { + setNewFieldOptions(field.options?.map(o => o.value).join(', ') || ''); + const props = field.properties as any; + if (props?.multiColumn && props?.columnNames) { setTextboxColumns( - field.property.columnNames.map((name, idx) => ({ + props.columnNames.map((name: string, idx: number) => ({ id: `col-${idx}`, name, key: `column${idx + 1}` @@ -215,28 +216,26 @@ export function FieldDrawer({
- {field.name} + {field.field_name} - {INPUT_TYPE_OPTIONS.find(o => o.value === field.property.inputType)?.label} + {INPUT_TYPE_OPTIONS.find(o => o.value === field.field_type)?.label} - {field.property.required && ( + {(field.properties as any)?.required && ( 필수 )}
{field.description && (

{field.description}

)} - {Array.isArray(field.category) && field.category.length > 0 && ( + {field.category && (
- {field.category.map((cat, idx) => ( - - {cat} - - ))} + + {field.category} +
)}
- {selectedMasterFieldId === field.id && ( + {selectedMasterFieldId === String(field.id) && ( )}
@@ -585,22 +584,23 @@ export function FieldDrawer({

{selectedPage.sections - .filter(section => section.type !== 'bom') + .filter(section => section.section_type !== 'BOM') .map(section => ( ))}
diff --git a/src/components/items/ItemMasterDataManagement/dialogs/MasterFieldDialog.tsx b/src/components/items/ItemMasterDataManagement/dialogs/MasterFieldDialog.tsx index 82953a00..0a5d6b46 100644 --- a/src/components/items/ItemMasterDataManagement/dialogs/MasterFieldDialog.tsx +++ b/src/components/items/ItemMasterDataManagement/dialogs/MasterFieldDialog.tsx @@ -1,5 +1,6 @@ 'use client'; +import { useState } from 'react'; import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle } from '@/components/ui/dialog'; import { Button } from '@/components/ui/button'; import { Label } from '@/components/ui/label'; @@ -79,23 +80,45 @@ export function MasterFieldDialog({ handleUpdateMasterField, handleAddMasterField, }: MasterFieldDialogProps) { + const [isSubmitted, setIsSubmitted] = useState(false); + + // 유효성 검사 + const isNameEmpty = !newMasterFieldName.trim(); + const isKeyEmpty = !newMasterFieldKey.trim(); + + const handleClose = () => { + setIsMasterFieldDialogOpen(false); + setEditingMasterFieldId(null); + setNewMasterFieldName(''); + setNewMasterFieldKey(''); + setNewMasterFieldInputType('textbox'); + setNewMasterFieldRequired(false); + setNewMasterFieldCategory('공통'); + setNewMasterFieldDescription(''); + setNewMasterFieldOptions(''); + setNewMasterFieldAttributeType('custom'); + setNewMasterFieldMultiColumn(false); + setNewMasterFieldColumnCount(2); + setNewMasterFieldColumnNames(['컬럼1', '컬럼2']); + setIsSubmitted(false); + }; + + const handleSubmit = () => { + setIsSubmitted(true); + if (!isNameEmpty && !isKeyEmpty) { + if (editingMasterFieldId) { + handleUpdateMasterField(); + } else { + handleAddMasterField(); + } + setIsSubmitted(false); + } + }; + return ( { - setIsMasterFieldDialogOpen(open); - if (!open) { - setEditingMasterFieldId(null); - setNewMasterFieldName(''); - setNewMasterFieldKey(''); - setNewMasterFieldInputType('textbox'); - setNewMasterFieldRequired(false); - setNewMasterFieldCategory('공통'); - setNewMasterFieldDescription(''); - setNewMasterFieldOptions(''); - setNewMasterFieldAttributeType('custom'); - setNewMasterFieldMultiColumn(false); - setNewMasterFieldColumnCount(2); - setNewMasterFieldColumnNames(['컬럼1', '컬럼2']); - } + if (!open) handleClose(); + else setIsMasterFieldDialogOpen(open); }}> @@ -112,7 +135,11 @@ export function MasterFieldDialog({ value={newMasterFieldName} onChange={(e) => setNewMasterFieldName(e.target.value)} placeholder="예: 품목명" + className={isSubmitted && isNameEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isNameEmpty && ( +

항목명을 입력해주세요

+ )}
@@ -120,7 +147,11 @@ export function MasterFieldDialog({ value={newMasterFieldKey} onChange={(e) => setNewMasterFieldKey(e.target.value)} placeholder="예: itemName" + className={isSubmitted && isKeyEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isKeyEmpty && ( +

필드 키를 입력해주세요

+ )}
@@ -251,8 +282,8 @@ export function MasterFieldDialog({ )} - - + diff --git a/src/components/items/ItemMasterDataManagement/dialogs/OptionDialog.tsx b/src/components/items/ItemMasterDataManagement/dialogs/OptionDialog.tsx index 8a132bde..ebcc4df2 100644 --- a/src/components/items/ItemMasterDataManagement/dialogs/OptionDialog.tsx +++ b/src/components/items/ItemMasterDataManagement/dialogs/OptionDialog.tsx @@ -1,5 +1,6 @@ 'use client'; +import { useState } from 'react'; import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle } from '@/components/ui/dialog'; import { Button } from '@/components/ui/button'; import { Label } from '@/components/ui/label'; @@ -72,19 +73,38 @@ export function OptionDialog({ attributeColumns, handleAddOption, }: OptionDialogProps) { + const [isSubmitted, setIsSubmitted] = useState(false); + + // 유효성 검사 + const isValueEmpty = !newOptionValue.trim(); + const isLabelEmpty = !newOptionLabel.trim(); + const isDropdownOptionsEmpty = newOptionInputType === 'dropdown' && !newOptionOptions.trim(); + + const handleClose = () => { + setIsOpen(false); + setNewOptionValue(''); + setNewOptionLabel(''); + setNewOptionColumnValues({}); + setNewOptionInputType('textbox'); + setNewOptionRequired(false); + setNewOptionOptions(''); + setNewOptionPlaceholder(''); + setNewOptionDefaultValue(''); + setIsSubmitted(false); + }; + + const handleSubmit = () => { + setIsSubmitted(true); + if (!isValueEmpty && !isLabelEmpty && !isDropdownOptionsEmpty) { + handleAddOption(); + setIsSubmitted(false); + } + }; + return ( { - setIsOpen(open); - if (!open) { - setNewOptionValue(''); - setNewOptionLabel(''); - setNewOptionColumnValues({}); - setNewOptionInputType('textbox'); - setNewOptionRequired(false); - setNewOptionOptions(''); - setNewOptionPlaceholder(''); - setNewOptionDefaultValue(''); - } + if (!open) handleClose(); + else setIsOpen(open); }}> @@ -109,7 +129,11 @@ export function OptionDialog({ value={newOptionValue} onChange={(e) => setNewOptionValue(e.target.value)} placeholder="예: kg, stainless" + className={isSubmitted && isValueEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isValueEmpty && ( +

값을 입력해주세요

+ )}
@@ -117,7 +141,11 @@ export function OptionDialog({ value={newOptionLabel} onChange={(e) => setNewOptionLabel(e.target.value)} placeholder="예: 킬로그램, 스테인리스" + className={isSubmitted && isLabelEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isLabelEmpty && ( +

라벨을 입력해주세요

+ )}
@@ -151,10 +179,15 @@ export function OptionDialog({ value={newOptionOptions} onChange={(e) => setNewOptionOptions(e.target.value)} placeholder="옵션1, 옵션2, 옵션3 (쉼표로 구분)" + className={isSubmitted && isDropdownOptionsEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> -

- 쉼표로 구분하여 여러 옵션을 입력하세요 -

+ {isSubmitted && isDropdownOptionsEmpty ? ( +

드롭다운 옵션을 입력해주세요

+ ) : ( +

+ 쉼표로 구분하여 여러 옵션을 입력하세요 +

+ )} )} @@ -213,8 +246,8 @@ export function OptionDialog({ )} - - + +
diff --git a/src/components/items/ItemMasterDataManagement/dialogs/PageDialog.tsx b/src/components/items/ItemMasterDataManagement/dialogs/PageDialog.tsx index 74cde3a6..bf7d412c 100644 --- a/src/components/items/ItemMasterDataManagement/dialogs/PageDialog.tsx +++ b/src/components/items/ItemMasterDataManagement/dialogs/PageDialog.tsx @@ -1,5 +1,6 @@ 'use client'; +import { useState } from 'react'; import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle } from '@/components/ui/dialog'; import { Button } from '@/components/ui/button'; import { Label } from '@/components/ui/label'; @@ -33,27 +34,53 @@ export function PageDialog({ setNewPageItemType, handleAddPage, }: PageDialogProps) { + const [isSubmitted, setIsSubmitted] = useState(false); + + // 유효성 검사 + const isPageNameEmpty = !newPageName.trim(); + + const handleSubmit = () => { + setIsSubmitted(true); + if (!isPageNameEmpty) { + handleAddPage(); + setIsSubmitted(false); + } + }; + + const handleClose = () => { + setIsPageDialogOpen(false); + setNewPageName(''); + setNewPageItemType('FG'); + setIsSubmitted(false); + }; + return ( { - setIsPageDialogOpen(open); if (!open) { - setNewPageName(''); - setNewPageItemType('FG'); + handleClose(); + } else { + setIsPageDialogOpen(open); } }}> - 섹션 추가 - 새로운 품목 섹션을 생성합니다 + 페이지 추가 + 품목 유형별 관리 페이지를 생성합니다
- + setNewPageName(e.target.value)} - placeholder="예: 품목 등록" + placeholder="예: 제품 등록" + className={isSubmitted && isPageNameEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isPageNameEmpty && ( +

+ 페이지명을 입력해주세요 +

+ )}
@@ -70,8 +97,8 @@ export function PageDialog({
- - + +
diff --git a/src/components/items/ItemMasterDataManagement/dialogs/PathEditDialog.tsx b/src/components/items/ItemMasterDataManagement/dialogs/PathEditDialog.tsx index 19bf6055..5c4d900f 100644 --- a/src/components/items/ItemMasterDataManagement/dialogs/PathEditDialog.tsx +++ b/src/components/items/ItemMasterDataManagement/dialogs/PathEditDialog.tsx @@ -1,5 +1,6 @@ 'use client'; +import { useState } from 'react'; import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle } from '@/components/ui/dialog'; import { Button } from '@/components/ui/button'; import { Label } from '@/components/ui/label'; @@ -23,12 +24,21 @@ export function PathEditDialog({ updateItemPage, trackChange, }: PathEditDialogProps) { + const [isSubmitted, setIsSubmitted] = useState(false); + + // 유효성 검사 + const isPathEmpty = !editingAbsolutePath.trim(); + const isPathInvalid = editingAbsolutePath.trim() && !editingAbsolutePath.startsWith('/'); + + const handleClose = () => { + setEditingPathPageId(null); + setEditingAbsolutePath(''); + setIsSubmitted(false); + }; + return ( { - if (!open) { - setEditingPathPageId(null); - setEditingAbsolutePath(''); - } + if (!open) handleClose(); }}> @@ -42,25 +52,30 @@ export function PathEditDialog({ value={editingAbsolutePath} onChange={(e) => setEditingAbsolutePath(e.target.value)} placeholder="/제품관리/제품등록" + className={isSubmitted && (isPathEmpty || isPathInvalid) ? 'border-red-500 focus-visible:ring-red-500' : ''} /> -

슬래시(/)로 시작하며, 경로를 슬래시로 구분합니다

+ {isSubmitted && isPathEmpty && ( +

절대경로를 입력해주세요

+ )} + {isSubmitted && isPathInvalid && ( +

절대경로는 슬래시(/)로 시작해야 합니다

+ )} + {!isSubmitted || (!isPathEmpty && !isPathInvalid) ? ( +

슬래시(/)로 시작하며, 경로를 슬래시로 구분합니다

+ ) : null} - + diff --git a/src/components/items/ItemMasterDataManagement/dialogs/SectionDialog.tsx b/src/components/items/ItemMasterDataManagement/dialogs/SectionDialog.tsx index 89dfc454..7f9b30db 100644 --- a/src/components/items/ItemMasterDataManagement/dialogs/SectionDialog.tsx +++ b/src/components/items/ItemMasterDataManagement/dialogs/SectionDialog.tsx @@ -1,12 +1,13 @@ 'use client'; +import { useState } from 'react'; import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle } from '@/components/ui/dialog'; import { Button } from '@/components/ui/button'; import { Label } from '@/components/ui/label'; import { Input } from '@/components/ui/input'; import { Textarea } from '@/components/ui/textarea'; import { Badge } from '@/components/ui/badge'; -import { FileText, Package, Check, X } from 'lucide-react'; +import { FileText, Package, Check } from 'lucide-react'; import type { SectionTemplate } from '@/contexts/ItemMasterContext'; interface SectionDialogProps { @@ -45,6 +46,11 @@ export function SectionDialog({ setSelectedTemplateId, handleLinkTemplate, }: SectionDialogProps) { + const [isSubmitted, setIsSubmitted] = useState(false); + + // 유효성 검사 + const isTitleEmpty = !newSectionTitle.trim(); + const handleClose = () => { setIsSectionDialogOpen(false); setNewSectionType('fields'); @@ -52,6 +58,15 @@ export function SectionDialog({ setNewSectionDescription(''); setSectionInputMode('custom'); setSelectedTemplateId(null); + setIsSubmitted(false); + }; + + const handleSubmit = () => { + setIsSubmitted(true); + if (sectionInputMode === 'custom' && !isTitleEmpty) { + handleAddSection(); + setIsSubmitted(false); + } }; // 템플릿 선택 시 폼에 값 채우기 @@ -220,7 +235,11 @@ export function SectionDialog({ onChange={(e) => setNewSectionTitle(e.target.value)} placeholder={newSectionType === 'bom' ? '예: BOM 구성' : '예: 기본 정보'} disabled={sectionInputMode === 'template'} + className={isSubmitted && isTitleEmpty && sectionInputMode === 'custom' ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isTitleEmpty && sectionInputMode === 'custom' && ( +

섹션 제목을 입력해주세요

+ )}
@@ -269,7 +288,7 @@ export function SectionDialog({ ) : (
@@ -136,8 +162,8 @@ export function SectionTemplateDialog({
- - + diff --git a/src/components/items/ItemMasterDataManagement/dialogs/TemplateFieldDialog.tsx b/src/components/items/ItemMasterDataManagement/dialogs/TemplateFieldDialog.tsx index 1f3d4096..a4703ba1 100644 --- a/src/components/items/ItemMasterDataManagement/dialogs/TemplateFieldDialog.tsx +++ b/src/components/items/ItemMasterDataManagement/dialogs/TemplateFieldDialog.tsx @@ -1,5 +1,6 @@ 'use client'; +import { useState } from 'react'; import { Dialog, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle } from '@/components/ui/dialog'; import { Button } from '@/components/ui/button'; import { Label } from '@/components/ui/label'; @@ -87,7 +88,14 @@ export function TemplateFieldDialog({ selectedMasterFieldId = '', setSelectedMasterFieldId, }: TemplateFieldDialogProps) { + const [isSubmitted, setIsSubmitted] = useState(false); + + // 유효성 검사 + const isNameEmpty = !templateFieldName.trim(); + const isKeyEmpty = !templateFieldKey.trim(); + const handleClose = () => { + setIsSubmitted(false); setIsTemplateFieldDialogOpen(false); setEditingTemplateFieldId(null); setTemplateFieldName(''); @@ -230,7 +238,11 @@ export function TemplateFieldDialog({ value={templateFieldName} onChange={(e) => setTemplateFieldName(e.target.value)} placeholder="예: 품목명" + className={isSubmitted && isNameEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isNameEmpty && ( +

항목명을 입력해주세요

+ )}
@@ -238,7 +250,11 @@ export function TemplateFieldDialog({ value={templateFieldKey} onChange={(e) => setTemplateFieldKey(e.target.value)} placeholder="예: itemName" + className={isSubmitted && isKeyEmpty ? 'border-red-500 focus-visible:ring-red-500' : ''} /> + {isSubmitted && isKeyEmpty && ( +

필드 키를 입력해주세요

+ )}
@@ -334,8 +350,14 @@ export function TemplateFieldDialog({ )} - - + diff --git a/src/components/items/ItemMasterDataManagement/hooks/index.ts b/src/components/items/ItemMasterDataManagement/hooks/index.ts new file mode 100644 index 00000000..c5997da7 --- /dev/null +++ b/src/components/items/ItemMasterDataManagement/hooks/index.ts @@ -0,0 +1,20 @@ +export { usePageManagement } from './usePageManagement'; +export type { UsePageManagementReturn } from './usePageManagement'; + +export { useSectionManagement } from './useSectionManagement'; +export type { UseSectionManagementReturn } from './useSectionManagement'; + +export { useFieldManagement } from './useFieldManagement'; +export type { UseFieldManagementReturn } from './useFieldManagement'; + +export { useMasterFieldManagement } from './useMasterFieldManagement'; +export type { UseMasterFieldManagementReturn } from './useMasterFieldManagement'; + +export { useTemplateManagement } from './useTemplateManagement'; +export type { UseTemplateManagementReturn } from './useTemplateManagement'; + +export { useAttributeManagement } from './useAttributeManagement'; +export type { UseAttributeManagementReturn } from './useAttributeManagement'; + +export { useTabManagement } from './useTabManagement'; +export type { UseTabManagementReturn, CustomTab, AttributeSubTab } from './useTabManagement'; \ No newline at end of file diff --git a/src/components/items/ItemMasterDataManagement/hooks/useAttributeManagement.ts b/src/components/items/ItemMasterDataManagement/hooks/useAttributeManagement.ts new file mode 100644 index 00000000..1d90b77b --- /dev/null +++ b/src/components/items/ItemMasterDataManagement/hooks/useAttributeManagement.ts @@ -0,0 +1,351 @@ +'use client'; + +import { useState, useEffect, useRef } from 'react'; +import { toast } from 'sonner'; +import { useItemMaster } from '@/contexts/ItemMasterContext'; +import type { MasterOption, OptionColumn } from '../types'; + +export interface UseAttributeManagementReturn { + // 속성 옵션 상태 + unitOptions: MasterOption[]; + setUnitOptions: React.Dispatch>; + materialOptions: MasterOption[]; + setMaterialOptions: React.Dispatch>; + surfaceTreatmentOptions: MasterOption[]; + setSurfaceTreatmentOptions: React.Dispatch>; + customAttributeOptions: Record; + setCustomAttributeOptions: React.Dispatch>>; + + // 옵션 다이얼로그 상태 + isOptionDialogOpen: boolean; + setIsOptionDialogOpen: (open: boolean) => void; + editingOptionType: string | null; + setEditingOptionType: (type: string | null) => void; + + // 옵션 폼 상태 + newOptionValue: string; + setNewOptionValue: (value: string) => void; + newOptionLabel: string; + setNewOptionLabel: (label: string) => void; + newOptionColumnValues: Record; + setNewOptionColumnValues: React.Dispatch>>; + newOptionInputType: 'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea'; + setNewOptionInputType: (type: 'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea') => void; + newOptionRequired: boolean; + setNewOptionRequired: (required: boolean) => void; + newOptionOptions: string; + setNewOptionOptions: (options: string) => void; + newOptionPlaceholder: string; + setNewOptionPlaceholder: (placeholder: string) => void; + newOptionDefaultValue: string; + setNewOptionDefaultValue: (value: string) => void; + + // 칼럼 관리 상태 + isColumnManageDialogOpen: boolean; + setIsColumnManageDialogOpen: (open: boolean) => void; + managingColumnType: string | null; + setManagingColumnType: (type: string | null) => void; + attributeColumns: Record; + setAttributeColumns: React.Dispatch>>; + + // 칼럼 폼 상태 + newColumnName: string; + setNewColumnName: (name: string) => void; + newColumnKey: string; + setNewColumnKey: (key: string) => void; + newColumnType: 'text' | 'number'; + setNewColumnType: (type: 'text' | 'number') => void; + newColumnRequired: boolean; + setNewColumnRequired: (required: boolean) => void; + + // 핸들러 + handleAddOption: () => void; + handleDeleteOption: (type: string, id: string) => void; + handleAddColumn: () => void; + handleDeleteColumn: (columnKey: string) => void; + resetOptionForm: () => void; + resetColumnForm: () => void; +} + +export function useAttributeManagement(): UseAttributeManagementReturn { + const { + itemMasterFields, + updateItemMasterField + } = useItemMaster(); + + // 속성 옵션 상태 + const [unitOptions, setUnitOptions] = useState([]); + const [materialOptions, setMaterialOptions] = useState([]); + const [surfaceTreatmentOptions, setSurfaceTreatmentOptions] = useState([]); + const [customAttributeOptions, setCustomAttributeOptions] = useState>({}); + + // 옵션 다이얼로그 상태 + const [isOptionDialogOpen, setIsOptionDialogOpen] = useState(false); + const [editingOptionType, setEditingOptionType] = useState(null); + + // 옵션 폼 상태 + const [newOptionValue, setNewOptionValue] = useState(''); + const [newOptionLabel, setNewOptionLabel] = useState(''); + const [newOptionColumnValues, setNewOptionColumnValues] = useState>({}); + const [newOptionInputType, setNewOptionInputType] = useState<'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea'>('textbox'); + const [newOptionRequired, setNewOptionRequired] = useState(false); + const [newOptionOptions, setNewOptionOptions] = useState(''); + const [newOptionPlaceholder, setNewOptionPlaceholder] = useState(''); + const [newOptionDefaultValue, setNewOptionDefaultValue] = useState(''); + + // 칼럼 관리 상태 + const [isColumnManageDialogOpen, setIsColumnManageDialogOpen] = useState(false); + const [managingColumnType, setManagingColumnType] = useState(null); + const [attributeColumns, setAttributeColumns] = useState>({}); + + // 칼럼 폼 상태 + const [newColumnName, setNewColumnName] = useState(''); + const [newColumnKey, setNewColumnKey] = useState(''); + const [newColumnType, setNewColumnType] = useState<'text' | 'number'>('text'); + const [newColumnRequired, setNewColumnRequired] = useState(false); + + // 이전 옵션 값 추적용 ref (무한 루프 방지) + const prevOptionsRef = useRef(''); + + // 속성 변경 시 연동된 마스터 항목의 옵션 자동 업데이트 + // 주의: itemMasterFields를 의존성에서 제거하여 무한 루프 방지 + useEffect(() => { + // 현재 옵션 상태를 문자열로 직렬화 + const currentOptionsState = JSON.stringify({ + unit: unitOptions.map(o => o.label).sort(), + material: materialOptions.map(o => o.label).sort(), + surface: surfaceTreatmentOptions.map(o => o.label).sort(), + custom: Object.keys(customAttributeOptions).reduce((acc, key) => { + acc[key] = (customAttributeOptions[key] || []).map(o => o.label).sort(); + return acc; + }, {} as Record) + }); + + // 이전 상태와 동일하면 업데이트 스킵 + if (prevOptionsRef.current === currentOptionsState) { + return; + } + prevOptionsRef.current = currentOptionsState; + + // 실제 업데이트가 필요한 경우만 처리 + itemMasterFields.forEach(field => { + // properties가 null/undefined인 경우 스킵 + if (!field.properties) return; + const attributeType = (field.properties as any).attributeType; + if (attributeType && attributeType !== 'custom' && (field.properties as any)?.inputType === 'dropdown') { + let newOptions: string[] = []; + + if (attributeType === 'unit') { + newOptions = unitOptions.map(opt => opt.label); + } else if (attributeType === 'material') { + newOptions = materialOptions.map(opt => opt.label); + } else if (attributeType === 'surface') { + newOptions = surfaceTreatmentOptions.map(opt => opt.label); + } else { + const customOpts = customAttributeOptions[attributeType] || []; + newOptions = customOpts.map(opt => opt.label); + } + + const currentOptions = (field.properties as any)?.options || []; + const optionsChanged = JSON.stringify([...currentOptions].sort()) !== JSON.stringify([...newOptions].sort()); + + if (optionsChanged && newOptions.length > 0) { + updateItemMasterField(field.id, { + properties: { + ...(field.properties || {}), + options: newOptions + } + }); + } + } + }); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [unitOptions, materialOptions, surfaceTreatmentOptions, customAttributeOptions]); + + // 옵션 추가 + const handleAddOption = () => { + if (!editingOptionType || !newOptionValue.trim() || !newOptionLabel.trim()) { + toast.error('모든 항목을 입력해주세요'); + return; + } + + // dropdown일 경우 옵션 필수 체크 + if (newOptionInputType === 'dropdown' && !newOptionOptions.trim()) { + toast.error('드롭다운 옵션을 입력해주세요'); + return; + } + + // 칼럼 필수 값 체크 + const currentColumns = attributeColumns[editingOptionType] || []; + for (const column of currentColumns) { + if (column.required && !newOptionColumnValues[column.key]?.trim()) { + toast.error(`${column.name}은(는) 필수 입력 항목입니다`); + return; + } + } + + const newOption: MasterOption = { + id: `${editingOptionType}-${Date.now()}`, + value: newOptionValue, + label: newOptionLabel, + isActive: true, + inputType: newOptionInputType, + required: newOptionRequired, + options: newOptionInputType === 'dropdown' ? newOptionOptions.split(',').map(o => o.trim()).filter(o => o) : undefined, + placeholder: newOptionPlaceholder || undefined, + defaultValue: newOptionDefaultValue || undefined, + columnValues: Object.keys(newOptionColumnValues).length > 0 ? { ...newOptionColumnValues } : undefined + }; + + if (editingOptionType === 'unit') { + setUnitOptions(prev => [...prev, newOption]); + } else if (editingOptionType === 'material') { + setMaterialOptions(prev => [...prev, newOption]); + } else if (editingOptionType === 'surface') { + setSurfaceTreatmentOptions(prev => [...prev, newOption]); + } else { + setCustomAttributeOptions(prev => ({ + ...prev, + [editingOptionType]: [...(prev[editingOptionType] || []), newOption] + })); + } + + resetOptionForm(); + toast.success('속성이 추가되었습니다 (저장 필요)'); + }; + + // 옵션 삭제 + const handleDeleteOption = (type: string, id: string) => { + if (type === 'unit') { + setUnitOptions(prev => prev.filter(o => o.id !== id)); + } else if (type === 'material') { + setMaterialOptions(prev => prev.filter(o => o.id !== id)); + } else if (type === 'surface') { + setSurfaceTreatmentOptions(prev => prev.filter(o => o.id !== id)); + } else { + setCustomAttributeOptions(prev => ({ + ...prev, + [type]: (prev[type] || []).filter(o => o.id !== id) + })); + } + toast.success('삭제되었습니다'); + }; + + // 칼럼 추가 + const handleAddColumn = () => { + if (!managingColumnType || !newColumnName.trim() || !newColumnKey.trim()) { + toast.error('칼럼명과 키를 입력해주세요'); + return; + } + + const newColumn: OptionColumn = { + id: `col-${Date.now()}`, + key: newColumnKey, + name: newColumnName, + type: newColumnType, + required: newColumnRequired + }; + + setAttributeColumns(prev => ({ + ...prev, + [managingColumnType]: [...(prev[managingColumnType] || []), newColumn] + })); + + resetColumnForm(); + toast.success('칼럼이 추가되었습니다'); + }; + + // 칼럼 삭제 + const handleDeleteColumn = (columnKey: string) => { + if (!managingColumnType) return; + + setAttributeColumns(prev => ({ + ...prev, + [managingColumnType]: (prev[managingColumnType] || []).filter(c => c.key !== columnKey) + })); + toast.success('칼럼이 삭제되었습니다'); + }; + + // 옵션 폼 초기화 + const resetOptionForm = () => { + setNewOptionValue(''); + setNewOptionLabel(''); + setNewOptionColumnValues({}); + setNewOptionInputType('textbox'); + setNewOptionRequired(false); + setNewOptionOptions(''); + setNewOptionPlaceholder(''); + setNewOptionDefaultValue(''); + setIsOptionDialogOpen(false); + }; + + // 칼럼 폼 초기화 + const resetColumnForm = () => { + setNewColumnName(''); + setNewColumnKey(''); + setNewColumnType('text'); + setNewColumnRequired(false); + }; + + return { + // 속성 옵션 상태 + unitOptions, + setUnitOptions, + materialOptions, + setMaterialOptions, + surfaceTreatmentOptions, + setSurfaceTreatmentOptions, + customAttributeOptions, + setCustomAttributeOptions, + + // 옵션 다이얼로그 상태 + isOptionDialogOpen, + setIsOptionDialogOpen, + editingOptionType, + setEditingOptionType, + + // 옵션 폼 상태 + newOptionValue, + setNewOptionValue, + newOptionLabel, + setNewOptionLabel, + newOptionColumnValues, + setNewOptionColumnValues, + newOptionInputType, + setNewOptionInputType, + newOptionRequired, + setNewOptionRequired, + newOptionOptions, + setNewOptionOptions, + newOptionPlaceholder, + setNewOptionPlaceholder, + newOptionDefaultValue, + setNewOptionDefaultValue, + + // 칼럼 관리 상태 + isColumnManageDialogOpen, + setIsColumnManageDialogOpen, + managingColumnType, + setManagingColumnType, + attributeColumns, + setAttributeColumns, + + // 칼럼 폼 상태 + newColumnName, + setNewColumnName, + newColumnKey, + setNewColumnKey, + newColumnType, + setNewColumnType, + newColumnRequired, + setNewColumnRequired, + + // 핸들러 + handleAddOption, + handleDeleteOption, + handleAddColumn, + handleDeleteColumn, + resetOptionForm, + resetColumnForm, + }; +} \ No newline at end of file diff --git a/src/components/items/ItemMasterDataManagement/hooks/useFieldManagement.ts b/src/components/items/ItemMasterDataManagement/hooks/useFieldManagement.ts new file mode 100644 index 00000000..5a0b9cae --- /dev/null +++ b/src/components/items/ItemMasterDataManagement/hooks/useFieldManagement.ts @@ -0,0 +1,360 @@ +'use client'; + +import { useState, useEffect } from 'react'; +import { toast } from 'sonner'; +import { useItemMaster } from '@/contexts/ItemMasterContext'; +import type { ItemPage, ItemField, ItemMasterField, FieldDisplayCondition } from '@/contexts/ItemMasterContext'; +import { type ConditionalFieldConfig } from '../components/ConditionalDisplayUI'; + +export interface UseFieldManagementReturn { + // 다이얼로그 상태 + isFieldDialogOpen: boolean; + setIsFieldDialogOpen: (open: boolean) => void; + selectedSectionForField: number | null; + setSelectedSectionForField: (id: number | null) => void; + editingFieldId: number | null; + setEditingFieldId: (id: number | null) => void; + + // 입력 모드 + fieldInputMode: 'master' | 'custom'; + setFieldInputMode: (mode: 'master' | 'custom') => void; + showMasterFieldList: boolean; + setShowMasterFieldList: (show: boolean) => void; + selectedMasterFieldId: string; + setSelectedMasterFieldId: (id: string) => void; + + // 필드 폼 상태 + newFieldName: string; + setNewFieldName: (name: string) => void; + newFieldKey: string; + setNewFieldKey: (key: string) => void; + newFieldInputType: 'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea'; + setNewFieldInputType: (type: 'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea') => void; + newFieldRequired: boolean; + setNewFieldRequired: (required: boolean) => void; + newFieldOptions: string; + setNewFieldOptions: (options: string) => void; + newFieldDescription: string; + setNewFieldDescription: (desc: string) => void; + + // 텍스트박스 컬럼 + textboxColumns: Array<{ id: string; name: string; key: string }>; + setTextboxColumns: React.Dispatch>>; + isColumnDialogOpen: boolean; + setIsColumnDialogOpen: (open: boolean) => void; + editingColumnId: string | null; + setEditingColumnId: (id: string | null) => void; + columnName: string; + setColumnName: (name: string) => void; + columnKey: string; + setColumnKey: (key: string) => void; + + // 조건부 필드 + newFieldConditionEnabled: boolean; + setNewFieldConditionEnabled: (enabled: boolean) => void; + newFieldConditionTargetType: 'field' | 'section'; + setNewFieldConditionTargetType: (type: 'field' | 'section') => void; + newFieldConditionFields: ConditionalFieldConfig[]; + setNewFieldConditionFields: React.Dispatch>; + newFieldConditionSections: string[]; + setNewFieldConditionSections: React.Dispatch>; + tempConditionValue: string; + setTempConditionValue: (value: string) => void; + + // 핸들러 + handleAddField: (selectedPage: ItemPage | undefined) => void; + handleEditField: (sectionId: string, field: ItemField) => void; + handleDeleteField: (pageId: string, sectionId: string, fieldId: string) => void; + resetFieldForm: () => void; +} + +export function useFieldManagement(): UseFieldManagementReturn { + const { + itemMasterFields, + addFieldToSection, + updateField, + deleteField, + addItemMasterField, + updateItemMasterField, + } = useItemMaster(); + + // 다이얼로그 상태 + const [isFieldDialogOpen, setIsFieldDialogOpen] = useState(false); + const [selectedSectionForField, setSelectedSectionForField] = useState(null); + const [editingFieldId, setEditingFieldId] = useState(null); + + // 입력 모드 + const [fieldInputMode, setFieldInputMode] = useState<'master' | 'custom'>('custom'); + const [showMasterFieldList, setShowMasterFieldList] = useState(false); + const [selectedMasterFieldId, setSelectedMasterFieldId] = useState(''); + + // 필드 폼 상태 + const [newFieldName, setNewFieldName] = useState(''); + const [newFieldKey, setNewFieldKey] = useState(''); + const [newFieldInputType, setNewFieldInputType] = useState<'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea'>('textbox'); + const [newFieldRequired, setNewFieldRequired] = useState(false); + const [newFieldOptions, setNewFieldOptions] = useState(''); + const [newFieldDescription, setNewFieldDescription] = useState(''); + + // 텍스트박스 컬럼 + const [textboxColumns, setTextboxColumns] = useState>([]); + const [isColumnDialogOpen, setIsColumnDialogOpen] = useState(false); + const [editingColumnId, setEditingColumnId] = useState(null); + const [columnName, setColumnName] = useState(''); + const [columnKey, setColumnKey] = useState(''); + + // 조건부 필드 + const [newFieldConditionEnabled, setNewFieldConditionEnabled] = useState(false); + const [newFieldConditionTargetType, setNewFieldConditionTargetType] = useState<'field' | 'section'>('field'); + const [newFieldConditionFields, setNewFieldConditionFields] = useState([]); + const [newFieldConditionSections, setNewFieldConditionSections] = useState([]); + const [tempConditionValue, setTempConditionValue] = useState(''); + + // 마스터 필드 선택 시 폼 자동 채우기 + useEffect(() => { + if (fieldInputMode === 'master' && selectedMasterFieldId) { + const masterField = itemMasterFields.find(f => f.id === Number(selectedMasterFieldId)); + if (masterField) { + setNewFieldName(masterField.field_name); + setNewFieldKey(masterField.id.toString()); + setNewFieldInputType(masterField.field_type || 'textbox'); + // properties에서 required 확인, 또는 validation_rules에서 확인 + const isRequired = (masterField.properties as any)?.required || false; + setNewFieldRequired(isRequired); + setNewFieldOptions(masterField.options?.map(o => o.label).join(', ') || ''); + setNewFieldDescription(masterField.description || ''); + } + } else if (fieldInputMode === 'custom') { + // 직접 입력 모드로 전환 시 폼 초기화 + setNewFieldName(''); + setNewFieldKey(''); + setNewFieldInputType('textbox'); + setNewFieldRequired(false); + setNewFieldOptions(''); + setNewFieldDescription(''); + } + }, [fieldInputMode, selectedMasterFieldId, itemMasterFields]); + + // 필드 추가 + const handleAddField = (selectedPage: ItemPage | undefined) => { + if (!selectedPage || !selectedSectionForField || !newFieldName.trim() || !newFieldKey.trim()) { + toast.error('모든 필수 항목을 입력해주세요'); + return; + } + + // 조건부 표시 설정 + const displayCondition: FieldDisplayCondition | undefined = newFieldConditionEnabled + ? { + targetType: newFieldConditionTargetType, + fieldConditions: newFieldConditionTargetType === 'field' && newFieldConditionFields.length > 0 + ? newFieldConditionFields + : undefined, + sectionIds: newFieldConditionTargetType === 'section' && newFieldConditionSections.length > 0 + ? newFieldConditionSections + : undefined + } + : undefined; + + // 텍스트박스 컬럼 설정 + const hasColumns = newFieldInputType === 'textbox' && textboxColumns.length > 0; + + // 마스터 항목에서 가져온 경우 master_field_id 설정 + const masterFieldId = fieldInputMode === 'master' && selectedMasterFieldId + ? Number(selectedMasterFieldId) + : null; + + const newField: ItemField = { + id: editingFieldId ? Number(editingFieldId) : Date.now(), + section_id: Number(selectedSectionForField), + master_field_id: masterFieldId, + field_name: newFieldName, + field_type: newFieldInputType, + order_no: 0, + is_required: newFieldRequired, + placeholder: newFieldDescription || null, + default_value: null, + display_condition: displayCondition as Record | null || null, + validation_rules: null, + options: newFieldInputType === 'dropdown' && newFieldOptions.trim() + ? newFieldOptions.split(',').map(o => ({ label: o.trim(), value: o.trim() })) + : null, + properties: hasColumns ? { + multiColumn: true, + columnCount: textboxColumns.length, + columnNames: textboxColumns.map(c => c.name) + } : null, + created_at: new Date().toISOString(), + updated_at: new Date().toISOString() + }; + + if (editingFieldId) { + console.log('Updating field:', { pageId: selectedPage.id, sectionId: selectedSectionForField, fieldId: editingFieldId, fieldName: newField.field_name }); + updateField(Number(editingFieldId), newField); + + // 항목관리 탭의 마스터 항목도 업데이트 (동일한 fieldKey가 있으면) + const existingMasterField = itemMasterFields.find(mf => mf.id.toString() === newField.field_name); + if (existingMasterField) { + const updatedMasterField: Partial = { + field_name: newField.field_name, + description: newField.placeholder ?? null, + properties: newField.properties, + updated_at: new Date().toISOString() + }; + updateItemMasterField(existingMasterField.id, updatedMasterField); + } + + toast.success('항목이 섹션에 수정되었습니다!'); + } else { + console.log('Adding field to section:', { pageId: selectedPage.id, sectionId: selectedSectionForField, fieldName: newField.field_name }); + + // 1. 섹션에 항목 추가 + addFieldToSection(Number(selectedSectionForField), newField); + + // 2. 마스터 항목 선택이 아닌 경우에만 새 마스터 항목 자동 생성 + const isFromMasterField = masterFieldId !== null; + const existingMasterField = itemMasterFields.find(mf => mf.id.toString() === newField.field_name); + if (!isFromMasterField && !existingMasterField) { + // ItemMasterField 타입에 맞게 필수 필드 포함 + const newMasterFieldData: Omit = { + field_name: newField.field_name, + field_type: newField.field_type, + description: newField.placeholder ?? null, + category: selectedPage.item_type, + is_common: false, + default_value: null, + options: newField.options ?? null, + validation_rules: null, + properties: newField.properties ?? null, + }; + addItemMasterField(newMasterFieldData as any); + + console.log('Field added to both section and master fields:', { + fieldId: newField.id, + fieldName: newMasterFieldData.field_name + }); + + toast.success('항목이 섹션에 추가되고 마스터 항목으로도 등록되었습니다!'); + } else { + toast.success('항목이 섹션에 추가되었습니다!'); + } + } + + resetFieldForm(); + }; + + // 필드 수정 + const handleEditField = (sectionId: string, field: ItemField) => { + setSelectedSectionForField(Number(sectionId)); + setEditingFieldId(field.id); + setNewFieldName(field.field_name); + setNewFieldKey(field.id.toString()); + setNewFieldInputType(field.field_type); + setNewFieldRequired(field.is_required); + setNewFieldOptions(field.options?.map(opt => opt.value).join(', ') || ''); + setNewFieldDescription(''); + + // 조건부 표시 설정 로드 + if (field.display_condition) { + setNewFieldConditionEnabled(true); + setNewFieldConditionTargetType(field.display_condition.targetType); + setNewFieldConditionFields(field.display_condition.fieldConditions || []); + setNewFieldConditionSections(field.display_condition.sectionIds || []); + } else { + setNewFieldConditionEnabled(false); + setNewFieldConditionTargetType('field'); + setNewFieldConditionFields([]); + setNewFieldConditionSections([]); + } + + setIsFieldDialogOpen(true); + }; + + // 필드 삭제 + const handleDeleteField = (pageId: string, sectionId: string, fieldId: string) => { + deleteField(Number(fieldId)); + console.log('필드 삭제 완료:', fieldId); + }; + + // 폼 초기화 + const resetFieldForm = () => { + setNewFieldName(''); + setNewFieldKey(''); + setNewFieldInputType('textbox'); + setNewFieldRequired(false); + setNewFieldOptions(''); + setNewFieldDescription(''); + setNewFieldConditionEnabled(false); + setNewFieldConditionTargetType('field'); + setNewFieldConditionFields([]); + setNewFieldConditionSections([]); + setTempConditionValue(''); + setEditingFieldId(null); + setSelectedSectionForField(null); + setFieldInputMode('custom'); + setSelectedMasterFieldId(''); + setTextboxColumns([]); + setIsFieldDialogOpen(false); + }; + + return { + // 다이얼로그 상태 + isFieldDialogOpen, + setIsFieldDialogOpen, + selectedSectionForField, + setSelectedSectionForField, + editingFieldId, + setEditingFieldId, + + // 입력 모드 + fieldInputMode, + setFieldInputMode, + showMasterFieldList, + setShowMasterFieldList, + selectedMasterFieldId, + setSelectedMasterFieldId, + + // 필드 폼 상태 + newFieldName, + setNewFieldName, + newFieldKey, + setNewFieldKey, + newFieldInputType, + setNewFieldInputType, + newFieldRequired, + setNewFieldRequired, + newFieldOptions, + setNewFieldOptions, + newFieldDescription, + setNewFieldDescription, + + // 텍스트박스 컬럼 + textboxColumns, + setTextboxColumns, + isColumnDialogOpen, + setIsColumnDialogOpen, + editingColumnId, + setEditingColumnId, + columnName, + setColumnName, + columnKey, + setColumnKey, + + // 조건부 필드 + newFieldConditionEnabled, + setNewFieldConditionEnabled, + newFieldConditionTargetType, + setNewFieldConditionTargetType, + newFieldConditionFields, + setNewFieldConditionFields, + newFieldConditionSections, + setNewFieldConditionSections, + tempConditionValue, + setTempConditionValue, + + // 핸들러 + handleAddField, + handleEditField, + handleDeleteField, + resetFieldForm, + }; +} \ No newline at end of file diff --git a/src/components/items/ItemMasterDataManagement/hooks/useMasterFieldManagement.ts b/src/components/items/ItemMasterDataManagement/hooks/useMasterFieldManagement.ts new file mode 100644 index 00000000..9ef722b0 --- /dev/null +++ b/src/components/items/ItemMasterDataManagement/hooks/useMasterFieldManagement.ts @@ -0,0 +1,214 @@ +'use client'; + +import { useState } from 'react'; +import { toast } from 'sonner'; +import { useItemMaster } from '@/contexts/ItemMasterContext'; +import type { ItemMasterField } from '@/contexts/ItemMasterContext'; + +export interface UseMasterFieldManagementReturn { + // 다이얼로그 상태 + isMasterFieldDialogOpen: boolean; + setIsMasterFieldDialogOpen: (open: boolean) => void; + editingMasterFieldId: number | null; + setEditingMasterFieldId: (id: number | null) => void; + + // 폼 상태 + newMasterFieldName: string; + setNewMasterFieldName: (name: string) => void; + newMasterFieldKey: string; + setNewMasterFieldKey: (key: string) => void; + newMasterFieldInputType: 'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea'; + setNewMasterFieldInputType: (type: 'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea') => void; + newMasterFieldRequired: boolean; + setNewMasterFieldRequired: (required: boolean) => void; + newMasterFieldCategory: string; + setNewMasterFieldCategory: (category: string) => void; + newMasterFieldDescription: string; + setNewMasterFieldDescription: (desc: string) => void; + newMasterFieldOptions: string; + setNewMasterFieldOptions: (options: string) => void; + newMasterFieldAttributeType: 'custom' | 'unit' | 'material' | 'surface'; + setNewMasterFieldAttributeType: (type: 'custom' | 'unit' | 'material' | 'surface') => void; + newMasterFieldMultiColumn: boolean; + setNewMasterFieldMultiColumn: (multi: boolean) => void; + newMasterFieldColumnCount: number; + setNewMasterFieldColumnCount: (count: number) => void; + newMasterFieldColumnNames: string[]; + setNewMasterFieldColumnNames: React.Dispatch>; + + // 핸들러 + handleAddMasterField: () => void; + handleEditMasterField: (field: ItemMasterField) => void; + handleUpdateMasterField: () => void; + handleDeleteMasterField: (id: number) => void; + resetMasterFieldForm: () => void; +} + +export function useMasterFieldManagement(): UseMasterFieldManagementReturn { + const { + itemMasterFields, + addItemMasterField, + updateItemMasterField, + deleteItemMasterField, + } = useItemMaster(); + + // 다이얼로그 상태 + const [isMasterFieldDialogOpen, setIsMasterFieldDialogOpen] = useState(false); + const [editingMasterFieldId, setEditingMasterFieldId] = useState(null); + + // 폼 상태 + const [newMasterFieldName, setNewMasterFieldName] = useState(''); + const [newMasterFieldKey, setNewMasterFieldKey] = useState(''); + const [newMasterFieldInputType, setNewMasterFieldInputType] = useState<'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea'>('textbox'); + const [newMasterFieldRequired, setNewMasterFieldRequired] = useState(false); + const [newMasterFieldCategory, setNewMasterFieldCategory] = useState('공통'); + const [newMasterFieldDescription, setNewMasterFieldDescription] = useState(''); + const [newMasterFieldOptions, setNewMasterFieldOptions] = useState(''); + const [newMasterFieldAttributeType, setNewMasterFieldAttributeType] = useState<'custom' | 'unit' | 'material' | 'surface'>('custom'); + const [newMasterFieldMultiColumn, setNewMasterFieldMultiColumn] = useState(false); + const [newMasterFieldColumnCount, setNewMasterFieldColumnCount] = useState(2); + const [newMasterFieldColumnNames, setNewMasterFieldColumnNames] = useState(['컬럼1', '컬럼2']); + + // 마스터 항목 추가 + const handleAddMasterField = () => { + if (!newMasterFieldName.trim() || !newMasterFieldKey.trim()) { + toast.error('항목명과 필드 키를 입력해주세요'); + return; + } + + // ItemMasterField 타입에 맞게 필수 필드 포함 + const newMasterFieldData: Omit = { + field_name: newMasterFieldName, + field_type: newMasterFieldInputType, + category: newMasterFieldCategory || null, + description: newMasterFieldDescription || null, + is_common: false, + default_value: null, + options: newMasterFieldInputType === 'dropdown' && newMasterFieldOptions.trim() + ? newMasterFieldOptions.split(',').map(o => ({ label: o.trim(), value: o.trim() })) + : null, + validation_rules: null, + properties: { + required: newMasterFieldRequired, + attributeType: newMasterFieldInputType === 'dropdown' ? newMasterFieldAttributeType : undefined, + multiColumn: (newMasterFieldInputType === 'textbox' || newMasterFieldInputType === 'textarea') ? newMasterFieldMultiColumn : undefined, + columnCount: (newMasterFieldInputType === 'textbox' || newMasterFieldInputType === 'textarea') && newMasterFieldMultiColumn ? newMasterFieldColumnCount : undefined, + columnNames: (newMasterFieldInputType === 'textbox' || newMasterFieldInputType === 'textarea') && newMasterFieldMultiColumn ? newMasterFieldColumnNames : undefined + }, + }; + + addItemMasterField(newMasterFieldData as any); + resetMasterFieldForm(); + toast.success('마스터 항목이 추가되었습니다 (저장 필요)'); + }; + + // 마스터 항목 수정 시작 + const handleEditMasterField = (field: ItemMasterField) => { + setEditingMasterFieldId(field.id); + setNewMasterFieldName(field.field_name); + setNewMasterFieldKey(field.id.toString()); + setNewMasterFieldInputType(field.field_type || 'textbox'); + setNewMasterFieldRequired((field.properties as any)?.required || false); + setNewMasterFieldCategory(field.category || '공통'); + setNewMasterFieldDescription(field.description || ''); + setNewMasterFieldOptions(field.options?.map(o => o.label).join(', ') || ''); + setNewMasterFieldAttributeType((field.properties as any)?.attributeType || 'custom'); + setNewMasterFieldMultiColumn((field.properties as any)?.multiColumn || false); + setNewMasterFieldColumnCount((field.properties as any)?.columnCount || 2); + setNewMasterFieldColumnNames((field.properties as any)?.columnNames || ['컬럼1', '컬럼2']); + setIsMasterFieldDialogOpen(true); + }; + + // 마스터 항목 업데이트 + const handleUpdateMasterField = () => { + if (!editingMasterFieldId || !newMasterFieldName.trim() || !newMasterFieldKey.trim()) { + toast.error('항목명과 필드 키를 입력해주세요'); + return; + } + + const updateData: Partial = { + field_name: newMasterFieldName, + field_type: newMasterFieldInputType, + category: newMasterFieldCategory || null, + description: newMasterFieldDescription || null, + options: newMasterFieldInputType === 'dropdown' && newMasterFieldOptions.trim() + ? newMasterFieldOptions.split(',').map(o => ({ label: o.trim(), value: o.trim() })) + : null, + properties: { + required: newMasterFieldRequired, + attributeType: newMasterFieldInputType === 'dropdown' ? newMasterFieldAttributeType : undefined, + multiColumn: (newMasterFieldInputType === 'textbox' || newMasterFieldInputType === 'textarea') ? newMasterFieldMultiColumn : undefined, + columnCount: (newMasterFieldInputType === 'textbox' || newMasterFieldInputType === 'textarea') && newMasterFieldMultiColumn ? newMasterFieldColumnCount : undefined, + columnNames: (newMasterFieldInputType === 'textbox' || newMasterFieldInputType === 'textarea') && newMasterFieldMultiColumn ? newMasterFieldColumnNames : undefined + }, + }; + + updateItemMasterField(editingMasterFieldId, updateData); + resetMasterFieldForm(); + toast.success('마스터 항목이 수정되었습니다 (저장 필요)'); + }; + + // 마스터 항목 삭제 + const handleDeleteMasterField = (id: number) => { + if (confirm('이 마스터 항목을 삭제하시겠습니까?')) { + deleteItemMasterField(id); + toast.success('마스터 항목이 삭제되었습니다'); + } + }; + + // 폼 초기화 + const resetMasterFieldForm = () => { + setEditingMasterFieldId(null); + setNewMasterFieldName(''); + setNewMasterFieldKey(''); + setNewMasterFieldInputType('textbox'); + setNewMasterFieldRequired(false); + setNewMasterFieldCategory('공통'); + setNewMasterFieldDescription(''); + setNewMasterFieldOptions(''); + setNewMasterFieldAttributeType('custom'); + setNewMasterFieldMultiColumn(false); + setNewMasterFieldColumnCount(2); + setNewMasterFieldColumnNames(['컬럼1', '컬럼2']); + setIsMasterFieldDialogOpen(false); + }; + + return { + // 다이얼로그 상태 + isMasterFieldDialogOpen, + setIsMasterFieldDialogOpen, + editingMasterFieldId, + setEditingMasterFieldId, + + // 폼 상태 + newMasterFieldName, + setNewMasterFieldName, + newMasterFieldKey, + setNewMasterFieldKey, + newMasterFieldInputType, + setNewMasterFieldInputType, + newMasterFieldRequired, + setNewMasterFieldRequired, + newMasterFieldCategory, + setNewMasterFieldCategory, + newMasterFieldDescription, + setNewMasterFieldDescription, + newMasterFieldOptions, + setNewMasterFieldOptions, + newMasterFieldAttributeType, + setNewMasterFieldAttributeType, + newMasterFieldMultiColumn, + setNewMasterFieldMultiColumn, + newMasterFieldColumnCount, + setNewMasterFieldColumnCount, + newMasterFieldColumnNames, + setNewMasterFieldColumnNames, + + // 핸들러 + handleAddMasterField, + handleEditMasterField, + handleUpdateMasterField, + handleDeleteMasterField, + resetMasterFieldForm, + }; +} \ No newline at end of file diff --git a/src/components/items/ItemMasterDataManagement/hooks/usePageManagement.ts b/src/components/items/ItemMasterDataManagement/hooks/usePageManagement.ts new file mode 100644 index 00000000..eba3b7d3 --- /dev/null +++ b/src/components/items/ItemMasterDataManagement/hooks/usePageManagement.ts @@ -0,0 +1,259 @@ +'use client'; + +import { useState, useEffect, useRef } from 'react'; +import { toast } from 'sonner'; +import { useItemMaster } from '@/contexts/ItemMasterContext'; +import type { ItemPage } from '@/contexts/ItemMasterContext'; +import { ApiError, getErrorMessage } from '@/lib/api/error-handler'; +import { generateAbsolutePath } from '../utils/pathUtils'; + +export interface UsePageManagementReturn { + // 상태 + selectedPageId: number | null; + setSelectedPageId: (id: number | null) => void; + selectedPage: ItemPage | undefined; + editingPageId: number | null; + setEditingPageId: (id: number | null) => void; + editingPageName: string; + setEditingPageName: (name: string) => void; + isPageDialogOpen: boolean; + setIsPageDialogOpen: (open: boolean) => void; + newPageName: string; + setNewPageName: (name: string) => void; + newPageItemType: 'FG' | 'PT' | 'SM' | 'RM' | 'CS'; + setNewPageItemType: (type: 'FG' | 'PT' | 'SM' | 'RM' | 'CS') => void; + editingPathPageId: number | null; + setEditingPathPageId: (id: number | null) => void; + editingAbsolutePath: string; + setEditingAbsolutePath: (path: string) => void; + isLoading: boolean; + + // 핸들러 + handleAddPage: () => Promise; + handleDuplicatePage: (pageId: number) => Promise; + handleDeletePage: (pageId: number) => void; + handleUpdatePageName: (pageId: number, newName: string) => Promise; + handleUpdateAbsolutePath: (pageId: number, newPath: string) => Promise; +} + +export function usePageManagement(): UsePageManagementReturn { + const { + itemPages, + addItemPage, + updateItemPage, + deleteItemPage, + } = useItemMaster(); + + // 상태 + const [selectedPageId, setSelectedPageId] = useState(itemPages[0]?.id || null); + const [editingPageId, setEditingPageId] = useState(null); + const [editingPageName, setEditingPageName] = useState(''); + const [isPageDialogOpen, setIsPageDialogOpen] = useState(false); + const [newPageName, setNewPageName] = useState(''); + const [newPageItemType, setNewPageItemType] = useState<'FG' | 'PT' | 'SM' | 'RM' | 'CS'>('FG'); + const [editingPathPageId, setEditingPathPageId] = useState(null); + const [editingAbsolutePath, setEditingAbsolutePath] = useState(''); + const [isLoading, setIsLoading] = useState(false); + + // 선택된 페이지 + const selectedPage = itemPages.find(p => p.id === selectedPageId); + + // 마이그레이션 완료 추적용 ref + const migrationDoneRef = useRef>(new Set()); + + // 기존 페이지들에 절대경로 자동 생성 (마이그레이션) + useEffect(() => { + // itemPages가 비어있으면 스킵 + if (itemPages.length === 0) return; + + const pagesToMigrate = itemPages.filter( + page => !page.absolute_path && !migrationDoneRef.current.has(page.id) + ); + + // 마이그레이션할 페이지가 없으면 스킵 + if (pagesToMigrate.length === 0) return; + + // 마이그레이션 실행 (한 번에 처리) + pagesToMigrate.forEach(page => { + const absolutePath = generateAbsolutePath(page.item_type, page.page_name); + updateItemPage(page.id, { absolute_path: absolutePath }); + migrationDoneRef.current.add(page.id); + }); + + console.log(`절대경로가 자동으로 생성되었습니다 (${pagesToMigrate.length}개 페이지)`); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [itemPages.length]); // itemPages 길이가 변경될 때만 체크 + + // 페이지 추가 + const handleAddPage = async () => { + if (!newPageName.trim()) { + toast.error('섹션명을 입력해주세요'); + return; + } + + try { + setIsLoading(true); + const absolutePath = generateAbsolutePath(newPageItemType, newPageName); + + const newPage = await addItemPage({ + page_name: newPageName, + item_type: newPageItemType, + absolute_path: absolutePath, + is_active: true, + sections: [], + order_no: 0, + }); + + // 새로 생성된 페이지를 선택 + setSelectedPageId(newPage.id); + + // 폼 초기화 + setNewPageName(''); + setNewPageItemType('FG'); + setIsPageDialogOpen(false); + + toast.success('페이지가 추가되었습니다'); + } catch (err) { + if (err instanceof ApiError && err.errors) { + const errorMessages = Object.entries(err.errors) + .map(([field, messages]) => `${field}: ${messages.join(', ')}`) + .join('\n'); + toast.error(errorMessages); + } else { + const errorMessage = getErrorMessage(err); + toast.error(errorMessage); + } + console.error('❌ Failed to create page:', err); + } finally { + setIsLoading(false); + } + }; + + // 페이지 복제 + const handleDuplicatePage = async (pageId: number) => { + const originalPage = itemPages.find(p => p.id === pageId); + if (!originalPage) { + toast.error('페이지를 찾을 수 없습니다'); + return; + } + + try { + setIsLoading(true); + + const duplicatedPageName = `${originalPage.page_name} (복제)`; + const absolutePath = generateAbsolutePath(originalPage.item_type, duplicatedPageName); + + const newPage = await addItemPage({ + page_name: duplicatedPageName, + item_type: originalPage.item_type, + sections: [], // 섹션은 별도 API로 복제해야 함 + is_active: true, + absolute_path: absolutePath, + order_no: 0, + }); + + setSelectedPageId(newPage.id); + toast.success('페이지가 복제되었습니다'); + + // TODO: 원본 페이지의 섹션들도 복제 필요 (별도 API 호출) + } catch (err) { + const errorMessage = getErrorMessage(err); + toast.error(errorMessage); + console.error('❌ Failed to duplicate page:', err); + } finally { + setIsLoading(false); + } + }; + + // 페이지 삭제 + const handleDeletePage = (pageId: number) => { + const pageToDelete = itemPages.find(p => p.id === pageId); + const sectionIds = pageToDelete?.sections.map(s => s.id) || []; + const fieldIds = pageToDelete?.sections.flatMap(s => s.fields?.map(f => f.id) || []) || []; + + deleteItemPage(pageId); + + // 삭제된 페이지가 선택된 페이지였다면 다른 페이지 선택 + if (selectedPageId === pageId) { + const remainingPages = itemPages.filter(p => p.id !== pageId); + setSelectedPageId(remainingPages[0]?.id || null); + } + + console.log('페이지 삭제 완료:', { + pageId, + removedSections: sectionIds.length, + removedFields: fieldIds.length + }); + }; + + // 페이지명 수정 + const handleUpdatePageName = async (pageId: number, newName: string) => { + if (!newName.trim()) { + toast.error('페이지명을 입력해주세요'); + return; + } + + try { + setIsLoading(true); + await updateItemPage(pageId, { page_name: newName }); + setEditingPageId(null); + setEditingPageName(''); + toast.success('페이지명이 수정되었습니다'); + } catch (err) { + const errorMessage = getErrorMessage(err); + toast.error(errorMessage); + } finally { + setIsLoading(false); + } + }; + + // 절대경로 수정 + const handleUpdateAbsolutePath = async (pageId: number, newPath: string) => { + if (!newPath.trim()) { + toast.error('절대경로를 입력해주세요'); + return; + } + + try { + setIsLoading(true); + await updateItemPage(pageId, { absolute_path: newPath }); + setEditingPathPageId(null); + setEditingAbsolutePath(''); + toast.success('절대경로가 수정되었습니다'); + } catch (err) { + const errorMessage = getErrorMessage(err); + toast.error(errorMessage); + } finally { + setIsLoading(false); + } + }; + + return { + // 상태 + selectedPageId, + setSelectedPageId, + selectedPage, + editingPageId, + setEditingPageId, + editingPageName, + setEditingPageName, + isPageDialogOpen, + setIsPageDialogOpen, + newPageName, + setNewPageName, + newPageItemType, + setNewPageItemType, + editingPathPageId, + setEditingPathPageId, + editingAbsolutePath, + setEditingAbsolutePath, + isLoading, + + // 핸들러 + handleAddPage, + handleDuplicatePage, + handleDeletePage, + handleUpdatePageName, + handleUpdateAbsolutePath, + }; +} \ No newline at end of file diff --git a/src/components/items/ItemMasterDataManagement/hooks/useSectionManagement.ts b/src/components/items/ItemMasterDataManagement/hooks/useSectionManagement.ts new file mode 100644 index 00000000..fda88533 --- /dev/null +++ b/src/components/items/ItemMasterDataManagement/hooks/useSectionManagement.ts @@ -0,0 +1,247 @@ +'use client'; + +import { useState } from 'react'; +import { toast } from 'sonner'; +import { useItemMaster } from '@/contexts/ItemMasterContext'; +import type { ItemPage, ItemSection, SectionTemplate } from '@/contexts/ItemMasterContext'; + +export interface UseSectionManagementReturn { + // 상태 + editingSectionId: number | null; + setEditingSectionId: (id: number | null) => void; + editingSectionTitle: string; + setEditingSectionTitle: (title: string) => void; + isSectionDialogOpen: boolean; + setIsSectionDialogOpen: (open: boolean) => void; + newSectionTitle: string; + setNewSectionTitle: (title: string) => void; + newSectionDescription: string; + setNewSectionDescription: (desc: string) => void; + newSectionType: 'fields' | 'bom'; + setNewSectionType: (type: 'fields' | 'bom') => void; + sectionInputMode: 'custom' | 'template'; + setSectionInputMode: (mode: 'custom' | 'template') => void; + selectedSectionTemplateId: number | null; + setSelectedSectionTemplateId: (id: number | null) => void; + expandedSections: Record; + setExpandedSections: React.Dispatch>>; + + // 핸들러 + handleAddSection: (selectedPage: ItemPage | undefined) => void; + handleLinkTemplate: (template: SectionTemplate, selectedPage: ItemPage | undefined) => void; + handleEditSectionTitle: (sectionId: number, currentTitle: string) => void; + handleSaveSectionTitle: (selectedPage: ItemPage | undefined) => void; + handleDeleteSection: (pageId: number, sectionId: number) => void; + toggleSection: (sectionId: string) => void; + resetSectionForm: () => void; +} + +export function useSectionManagement(): UseSectionManagementReturn { + const { + itemPages, + addSectionToPage, + updateSection, + deleteSection, + addSectionTemplate, + tenantId, + } = useItemMaster(); + + // 상태 + const [editingSectionId, setEditingSectionId] = useState(null); + const [editingSectionTitle, setEditingSectionTitle] = useState(''); + const [isSectionDialogOpen, setIsSectionDialogOpen] = useState(false); + const [newSectionTitle, setNewSectionTitle] = useState(''); + const [newSectionDescription, setNewSectionDescription] = useState(''); + const [newSectionType, setNewSectionType] = useState<'fields' | 'bom'>('fields'); + const [sectionInputMode, setSectionInputMode] = useState<'custom' | 'template'>('custom'); + const [selectedSectionTemplateId, setSelectedSectionTemplateId] = useState(null); + const [expandedSections, setExpandedSections] = useState>({}); + + // 섹션 추가 + const handleAddSection = (selectedPage: ItemPage | undefined) => { + if (!selectedPage || !newSectionTitle.trim()) { + toast.error('하위섹션 제목을 입력해주세요'); + return; + } + + const sectionType: 'BASIC' | 'BOM' | 'CUSTOM' = newSectionType === 'bom' ? 'BOM' : 'BASIC'; + const newSection: ItemSection = { + id: Date.now(), + page_id: selectedPage.id, + section_name: newSectionTitle, + section_type: sectionType, + description: newSectionDescription || undefined, + order_no: selectedPage.sections.length + 1, + is_collapsible: true, + is_default_open: true, + created_at: new Date().toISOString(), + updated_at: new Date().toISOString(), + fields: [], + bomItems: sectionType === 'BOM' ? [] : undefined + }; + + console.log('Adding section to page:', { + pageId: selectedPage.id, + page_name: selectedPage.page_name, + sectionTitle: newSection.section_name, + sectionType: newSection.section_type, + currentSectionCount: selectedPage.sections.length, + newSection: newSection + }); + + // 1. 페이지에 섹션 추가 + addSectionToPage(selectedPage.id, newSection); + + // 2. 섹션관리 탭에도 템플릿으로 자동 추가 + const newTemplateData = { + tenant_id: tenantId ?? 0, + template_name: newSection.section_name, + section_type: newSection.section_type as 'BASIC' | 'BOM' | 'CUSTOM', + description: newSection.description ?? null, + default_fields: null, + created_by: null, + updated_by: null, + }; + addSectionTemplate(newTemplateData); + + console.log('Section added to both page and template:', { + sectionId: newSection.id, + templateTitle: newTemplateData.template_name + }); + + resetSectionForm(); + toast.success(`${newSectionType === 'bom' ? 'BOM' : '일반'} 섹션이 페이지에 추가되고 템플릿으로도 등록되었습니다!`); + }; + + // 섹션 템플릿을 페이지에 연결 + const handleLinkTemplate = (template: SectionTemplate, selectedPage: ItemPage | undefined) => { + if (!selectedPage) { + toast.error('페이지를 먼저 선택해주세요'); + return; + } + + // 템플릿을 섹션으로 변환하여 페이지에 추가 + const newSection: Omit = { + page_id: selectedPage.id, + section_name: template.template_name, + section_type: template.section_type, + description: template.description || undefined, + order_no: selectedPage.sections.length + 1, + is_collapsible: true, + is_default_open: true, + fields: template.fields ? template.fields.map((field, idx) => ({ + id: Date.now() + idx, + section_id: 0, // 추후 업데이트됨 + field_name: field.name, + field_type: field.property.inputType, + order_no: idx + 1, + is_required: field.property.required, + placeholder: field.description || null, + default_value: null, + display_condition: null, + validation_rules: null, + options: field.property.options + ? field.property.options.map(opt => ({ label: opt, value: opt })) + : null, + properties: field.property.multiColumn ? { + multiColumn: true, + columnCount: field.property.columnCount, + columnNames: field.property.columnNames + } : null, + created_at: new Date().toISOString(), + updated_at: new Date().toISOString() + })) : [], + bomItems: template.section_type === 'BOM' ? (template.bomItems || []) : undefined + }; + + console.log('Linking template to page:', { + templateId: template.id, + templateName: template.template_name, + pageId: selectedPage.id, + newSection + }); + + addSectionToPage(selectedPage.id, newSection); + resetSectionForm(); + toast.success(`"${template.template_name}" 템플릿이 페이지에 연결되었습니다!`); + }; + + // 섹션 제목 수정 시작 + const handleEditSectionTitle = (sectionId: number, currentTitle: string) => { + setEditingSectionId(sectionId); + setEditingSectionTitle(currentTitle); + }; + + // 섹션 제목 저장 + const handleSaveSectionTitle = (selectedPage: ItemPage | undefined) => { + if (!selectedPage || !editingSectionId || !editingSectionTitle.trim()) { + toast.error('하위섹션 제목을 입력해주세요'); + return; + } + + updateSection(editingSectionId, { section_name: editingSectionTitle }); + setEditingSectionId(null); + setEditingSectionTitle(''); + toast.success('하위섹션 제목이 수정되었습니다 (저장 필요)'); + }; + + // 섹션 삭제 + const handleDeleteSection = (pageId: number, sectionId: number) => { + const page = itemPages.find(p => p.id === pageId); + const sectionToDelete = page?.sections.find(s => s.id === sectionId); + const fieldIds = sectionToDelete?.fields?.map(f => f.id) || []; + + deleteSection(sectionId); + + console.log('섹션 삭제 완료:', { + sectionId, + removedFields: fieldIds.length + }); + }; + + // 섹션 확장/축소 토글 + const toggleSection = (sectionId: string) => { + setExpandedSections(prev => ({ ...prev, [sectionId]: !prev[sectionId] })); + }; + + // 폼 초기화 + const resetSectionForm = () => { + setNewSectionTitle(''); + setNewSectionDescription(''); + setNewSectionType('fields'); + setSectionInputMode('custom'); + setSelectedSectionTemplateId(null); + setIsSectionDialogOpen(false); + }; + + return { + // 상태 + editingSectionId, + setEditingSectionId, + editingSectionTitle, + setEditingSectionTitle, + isSectionDialogOpen, + setIsSectionDialogOpen, + newSectionTitle, + setNewSectionTitle, + newSectionDescription, + setNewSectionDescription, + newSectionType, + setNewSectionType, + sectionInputMode, + setSectionInputMode, + selectedSectionTemplateId, + setSelectedSectionTemplateId, + expandedSections, + setExpandedSections, + + // 핸들러 + handleAddSection, + handleLinkTemplate, + handleEditSectionTitle, + handleSaveSectionTitle, + handleDeleteSection, + toggleSection, + resetSectionForm, + }; +} \ No newline at end of file diff --git a/src/components/items/ItemMasterDataManagement/hooks/useTabManagement.ts b/src/components/items/ItemMasterDataManagement/hooks/useTabManagement.ts new file mode 100644 index 00000000..d8829a2d --- /dev/null +++ b/src/components/items/ItemMasterDataManagement/hooks/useTabManagement.ts @@ -0,0 +1,441 @@ +'use client'; + +import { useState, useEffect, useRef } from 'react'; +import { toast } from 'sonner'; +import { useItemMaster } from '@/contexts/ItemMasterContext'; +import { + FolderTree, + ListTree, + FileText, + Settings, + Layers, + Database, + Plus, + Folder +} from 'lucide-react'; + +export interface CustomTab { + id: string; + label: string; + icon: string; + isDefault: boolean; + order: number; +} + +export interface AttributeSubTab { + id: string; + label: string; + key: string; + isDefault: boolean; + order: number; +} + +export interface UseTabManagementReturn { + // 메인 탭 상태 + customTabs: CustomTab[]; + setCustomTabs: React.Dispatch>; + activeTab: string; + setActiveTab: (tab: string) => void; + + // 속성 하위 탭 상태 + attributeSubTabs: AttributeSubTab[]; + setAttributeSubTabs: React.Dispatch>; + activeAttributeTab: string; + setActiveAttributeTab: (tab: string) => void; + + // 메인 탭 다이얼로그 상태 + isAddTabDialogOpen: boolean; + setIsAddTabDialogOpen: (open: boolean) => void; + isManageTabsDialogOpen: boolean; + setIsManageTabsDialogOpen: (open: boolean) => void; + newTabLabel: string; + setNewTabLabel: (label: string) => void; + editingTabId: string | null; + setEditingTabId: (id: string | null) => void; + deletingTabId: string | null; + setDeletingTabId: (id: string | null) => void; + isDeleteTabDialogOpen: boolean; + setIsDeleteTabDialogOpen: (open: boolean) => void; + + // 속성 하위 탭 다이얼로그 상태 + isManageAttributeTabsDialogOpen: boolean; + setIsManageAttributeTabsDialogOpen: (open: boolean) => void; + isAddAttributeTabDialogOpen: boolean; + setIsAddAttributeTabDialogOpen: (open: boolean) => void; + newAttributeTabLabel: string; + setNewAttributeTabLabel: (label: string) => void; + editingAttributeTabId: string | null; + setEditingAttributeTabId: (id: string | null) => void; + deletingAttributeTabId: string | null; + setDeletingAttributeTabId: (id: string | null) => void; + isDeleteAttributeTabDialogOpen: boolean; + setIsDeleteAttributeTabDialogOpen: (open: boolean) => void; + + // 핸들러 + handleAddTab: () => void; + handleUpdateTab: () => void; + handleDeleteTab: (tabId: string) => void; + confirmDeleteTab: () => void; + handleAddAttributeTab: () => void; + handleUpdateAttributeTab: () => void; + handleDeleteAttributeTab: (tabId: string) => void; + confirmDeleteAttributeTab: () => void; + moveTabUp: (tabId: string) => void; + moveTabDown: (tabId: string) => void; + moveAttributeTabUp: (tabId: string) => void; + moveAttributeTabDown: (tabId: string) => void; + getTabIcon: (iconName: string) => any; + handleEditTabFromManage: (tab: CustomTab) => void; +} + +export function useTabManagement(): UseTabManagementReturn { + const { itemMasterFields } = useItemMaster(); + + // 메인 탭 상태 + const [customTabs, setCustomTabs] = useState([ + { id: 'hierarchy', label: '계층구조', icon: 'FolderTree', isDefault: true, order: 1 }, + { id: 'sections', label: '섹션', icon: 'Layers', isDefault: true, order: 2 }, + { id: 'items', label: '항목', icon: 'ListTree', isDefault: true, order: 3 }, + { id: 'attributes', label: '속성', icon: 'Settings', isDefault: true, order: 4 } + ]); + const [activeTab, setActiveTab] = useState('hierarchy'); + + // 속성 하위 탭 상태 + const [attributeSubTabs, setAttributeSubTabs] = useState([]); + const [activeAttributeTab, setActiveAttributeTab] = useState('units'); + + // 메인 탭 다이얼로그 상태 + const [isAddTabDialogOpen, setIsAddTabDialogOpen] = useState(false); + const [isManageTabsDialogOpen, setIsManageTabsDialogOpen] = useState(false); + const [newTabLabel, setNewTabLabel] = useState(''); + const [editingTabId, setEditingTabId] = useState(null); + const [deletingTabId, setDeletingTabId] = useState(null); + const [isDeleteTabDialogOpen, setIsDeleteTabDialogOpen] = useState(false); + + // 속성 하위 탭 다이얼로그 상태 + const [isManageAttributeTabsDialogOpen, setIsManageAttributeTabsDialogOpen] = useState(false); + const [isAddAttributeTabDialogOpen, setIsAddAttributeTabDialogOpen] = useState(false); + const [newAttributeTabLabel, setNewAttributeTabLabel] = useState(''); + const [editingAttributeTabId, setEditingAttributeTabId] = useState(null); + const [deletingAttributeTabId, setDeletingAttributeTabId] = useState(null); + const [isDeleteAttributeTabDialogOpen, setIsDeleteAttributeTabDialogOpen] = useState(false); + + // 이전 필드 상태 추적용 ref (무한 루프 방지) + const prevFieldsRef = useRef(''); + + // 마스터 항목이 추가/수정될 때 속성 탭 자동 생성 + useEffect(() => { + // 현재 필드 상태를 문자열로 직렬화 + const currentFieldsState = JSON.stringify( + itemMasterFields.map(f => ({ id: f.id, name: f.field_name })).sort((a, b) => a.id - b.id) + ); + + // 이전 상태와 동일하면 업데이트 스킵 + if (prevFieldsRef.current === currentFieldsState) { + return; + } + prevFieldsRef.current = currentFieldsState; + + setAttributeSubTabs(prev => { + const newTabs: AttributeSubTab[] = []; + const updates: { key: string; label: string }[] = []; + + itemMasterFields.forEach(field => { + const existingTab = prev.find(tab => tab.key === field.id.toString()); + + if (!existingTab) { + const maxOrder = Math.max(...prev.map(t => t.order), ...newTabs.map(t => t.order), -1); + newTabs.push({ + id: `attr-${field.id.toString()}`, + label: field.field_name, + key: field.id.toString(), + isDefault: false, + order: maxOrder + 1 + }); + } else if (existingTab.label !== field.field_name) { + updates.push({ key: existingTab.key, label: field.field_name }); + } + }); + + // 변경사항 없으면 이전 상태 그대로 반환 + if (newTabs.length === 0 && updates.length === 0) { + return prev; + } + + let result = prev.map(tab => { + const update = updates.find(u => u.key === tab.key); + return update ? { ...tab, label: update.label } : tab; + }); + result = [...result, ...newTabs]; + + // 중복 제거 + return result.filter((tab, index, self) => + index === self.findIndex(t => t.key === tab.key) + ); + }); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [itemMasterFields]); + + // 메인 탭 핸들러 + const handleAddTab = () => { + if (!newTabLabel.trim()) { + toast.error('탭 이름을 입력해주세요'); + return; + } + + const newTab: CustomTab = { + id: Date.now().toString(), + label: newTabLabel, + icon: 'FileText', + isDefault: false, + order: customTabs.length + 1 + }; + + setCustomTabs(prev => [...prev, newTab]); + setNewTabLabel(''); + setIsAddTabDialogOpen(false); + toast.success('탭이 추가되었습니다'); + }; + + const handleUpdateTab = () => { + if (!newTabLabel.trim() || !editingTabId) { + toast.error('탭 이름을 입력해주세요'); + return; + } + + setCustomTabs(prev => prev.map(tab => + tab.id === editingTabId ? { ...tab, label: newTabLabel } : tab + )); + + setEditingTabId(null); + setNewTabLabel(''); + setIsAddTabDialogOpen(false); + setIsManageTabsDialogOpen(true); + toast.success('탭이 수정되었습니다'); + }; + + const handleDeleteTab = (tabId: string) => { + const tab = customTabs.find(t => t.id === tabId); + if (!tab || tab.isDefault) { + toast.error('기본 탭은 삭제할 수 없습니다'); + return; + } + + setDeletingTabId(tabId); + setIsDeleteTabDialogOpen(true); + }; + + const confirmDeleteTab = () => { + if (!deletingTabId) return; + + setCustomTabs(prev => prev.filter(t => t.id !== deletingTabId)); + if (activeTab === deletingTabId) { + setActiveTab('hierarchy'); + } + + setIsDeleteTabDialogOpen(false); + setDeletingTabId(null); + toast.success('탭이 삭제되었습니다'); + }; + + // 속성 하위 탭 핸들러 + const handleAddAttributeTab = () => { + if (!newAttributeTabLabel.trim()) { + toast.error('탭 이름을 입력해주세요'); + return; + } + + const newTab: AttributeSubTab = { + id: `attr-${Date.now()}`, + label: newAttributeTabLabel, + key: `custom-${Date.now()}`, + isDefault: false, + order: attributeSubTabs.length + }; + + setAttributeSubTabs(prev => [...prev, newTab]); + setNewAttributeTabLabel(''); + setIsAddAttributeTabDialogOpen(false); + toast.success('속성 탭이 추가되었습니다'); + }; + + const handleUpdateAttributeTab = () => { + if (!newAttributeTabLabel.trim() || !editingAttributeTabId) { + toast.error('탭 이름을 입력해주세요'); + return; + } + + setAttributeSubTabs(prev => prev.map(tab => + tab.id === editingAttributeTabId ? { ...tab, label: newAttributeTabLabel } : tab + )); + + setEditingAttributeTabId(null); + setNewAttributeTabLabel(''); + setIsAddAttributeTabDialogOpen(false); + setIsManageAttributeTabsDialogOpen(true); + toast.success('속성 탭이 수정되었습니다'); + }; + + const handleDeleteAttributeTab = (tabId: string) => { + const tab = attributeSubTabs.find(t => t.id === tabId); + if (!tab || tab.isDefault) { + toast.error('기본 속성 탭은 삭제할 수 없습니다'); + return; + } + + setDeletingAttributeTabId(tabId); + setIsDeleteAttributeTabDialogOpen(true); + }; + + const confirmDeleteAttributeTab = () => { + if (!deletingAttributeTabId) return; + + setAttributeSubTabs(prev => prev.filter(t => t.id !== deletingAttributeTabId)); + if (activeAttributeTab === deletingAttributeTabId) { + const firstTab = attributeSubTabs.find(t => t.id !== deletingAttributeTabId); + if (firstTab) { + setActiveAttributeTab(firstTab.key); + } + } + + setIsDeleteAttributeTabDialogOpen(false); + setDeletingAttributeTabId(null); + toast.success('속성 탭이 삭제되었습니다'); + }; + + // 탭 순서 변경 핸들러 + const moveTabUp = (tabId: string) => { + const tabIndex = customTabs.findIndex(t => t.id === tabId); + if (tabIndex <= 0) return; + + const newTabs = [...customTabs]; + const temp = newTabs[tabIndex - 1].order; + newTabs[tabIndex - 1].order = newTabs[tabIndex].order; + newTabs[tabIndex].order = temp; + + setCustomTabs(newTabs.sort((a, b) => a.order - b.order)); + toast.success('탭 순서가 변경되었습니다'); + }; + + const moveTabDown = (tabId: string) => { + const tabIndex = customTabs.findIndex(t => t.id === tabId); + if (tabIndex >= customTabs.length - 1) return; + + const newTabs = [...customTabs]; + const temp = newTabs[tabIndex + 1].order; + newTabs[tabIndex + 1].order = newTabs[tabIndex].order; + newTabs[tabIndex].order = temp; + + setCustomTabs(newTabs.sort((a, b) => a.order - b.order)); + toast.success('탭 순서가 변경되었습니다'); + }; + + const moveAttributeTabUp = (tabId: string) => { + const tabIndex = attributeSubTabs.findIndex(t => t.id === tabId); + if (tabIndex <= 0) return; + + const newTabs = [...attributeSubTabs]; + const temp = newTabs[tabIndex - 1].order; + newTabs[tabIndex - 1].order = newTabs[tabIndex].order; + newTabs[tabIndex].order = temp; + + setAttributeSubTabs(newTabs.sort((a, b) => a.order - b.order)); + }; + + const moveAttributeTabDown = (tabId: string) => { + const tabIndex = attributeSubTabs.findIndex(t => t.id === tabId); + if (tabIndex >= attributeSubTabs.length - 1) return; + + const newTabs = [...attributeSubTabs]; + const temp = newTabs[tabIndex + 1].order; + newTabs[tabIndex + 1].order = newTabs[tabIndex].order; + newTabs[tabIndex].order = temp; + + setAttributeSubTabs(newTabs.sort((a, b) => a.order - b.order)); + }; + + // 아이콘 헬퍼 + const getTabIcon = (iconName: string) => { + const icons: Record = { + FolderTree, + ListTree, + FileText, + Settings, + Layers, + Database, + Plus, + Folder + }; + return icons[iconName] || FileText; + }; + + // 탭 관리에서 수정 시작 + const handleEditTabFromManage = (tab: CustomTab) => { + if (tab.isDefault) { + toast.error('기본 탭은 수정할 수 없습니다'); + return; + } + setEditingTabId(tab.id); + setNewTabLabel(tab.label); + setIsManageTabsDialogOpen(false); + setIsAddTabDialogOpen(true); + }; + + return { + // 메인 탭 상태 + customTabs, + setCustomTabs, + activeTab, + setActiveTab, + + // 속성 하위 탭 상태 + attributeSubTabs, + setAttributeSubTabs, + activeAttributeTab, + setActiveAttributeTab, + + // 메인 탭 다이얼로그 상태 + isAddTabDialogOpen, + setIsAddTabDialogOpen, + isManageTabsDialogOpen, + setIsManageTabsDialogOpen, + newTabLabel, + setNewTabLabel, + editingTabId, + setEditingTabId, + deletingTabId, + setDeletingTabId, + isDeleteTabDialogOpen, + setIsDeleteTabDialogOpen, + + // 속성 하위 탭 다이얼로그 상태 + isManageAttributeTabsDialogOpen, + setIsManageAttributeTabsDialogOpen, + isAddAttributeTabDialogOpen, + setIsAddAttributeTabDialogOpen, + newAttributeTabLabel, + setNewAttributeTabLabel, + editingAttributeTabId, + setEditingAttributeTabId, + deletingAttributeTabId, + setDeletingAttributeTabId, + isDeleteAttributeTabDialogOpen, + setIsDeleteAttributeTabDialogOpen, + + // 핸들러 + handleAddTab, + handleUpdateTab, + handleDeleteTab, + confirmDeleteTab, + handleAddAttributeTab, + handleUpdateAttributeTab, + handleDeleteAttributeTab, + confirmDeleteAttributeTab, + moveTabUp, + moveTabDown, + moveAttributeTabUp, + moveAttributeTabDown, + getTabIcon, + handleEditTabFromManage, + }; +} \ No newline at end of file diff --git a/src/components/items/ItemMasterDataManagement/hooks/useTemplateManagement.ts b/src/components/items/ItemMasterDataManagement/hooks/useTemplateManagement.ts new file mode 100644 index 00000000..34fee0a8 --- /dev/null +++ b/src/components/items/ItemMasterDataManagement/hooks/useTemplateManagement.ts @@ -0,0 +1,470 @@ +'use client'; + +import { useState } from 'react'; +import { toast } from 'sonner'; +import { useItemMaster } from '@/contexts/ItemMasterContext'; +import type { ItemPage, SectionTemplate, TemplateField, BOMItem, ItemMasterField } from '@/contexts/ItemMasterContext'; + +export interface UseTemplateManagementReturn { + // 섹션 템플릿 다이얼로그 상태 + isSectionTemplateDialogOpen: boolean; + setIsSectionTemplateDialogOpen: (open: boolean) => void; + editingSectionTemplateId: number | null; + setEditingSectionTemplateId: (id: number | null) => void; + + // 섹션 템플릿 폼 상태 + newSectionTemplateTitle: string; + setNewSectionTemplateTitle: (title: string) => void; + newSectionTemplateDescription: string; + setNewSectionTemplateDescription: (desc: string) => void; + newSectionTemplateCategory: string[]; + setNewSectionTemplateCategory: React.Dispatch>; + newSectionTemplateType: 'fields' | 'bom'; + setNewSectionTemplateType: (type: 'fields' | 'bom') => void; + + // 템플릿 불러오기 다이얼로그 + isLoadTemplateDialogOpen: boolean; + setIsLoadTemplateDialogOpen: (open: boolean) => void; + selectedTemplateId: string | null; + setSelectedTemplateId: (id: string | null) => void; + + // 템플릿 필드 다이얼로그 상태 + isTemplateFieldDialogOpen: boolean; + setIsTemplateFieldDialogOpen: (open: boolean) => void; + currentTemplateId: number | null; + setCurrentTemplateId: (id: number | null) => void; + editingTemplateFieldId: number | null; + setEditingTemplateFieldId: (id: number | null) => void; + + // 템플릿 필드 폼 상태 + templateFieldName: string; + setTemplateFieldName: (name: string) => void; + templateFieldKey: string; + setTemplateFieldKey: (key: string) => void; + templateFieldInputType: 'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea'; + setTemplateFieldInputType: (type: 'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea') => void; + templateFieldRequired: boolean; + setTemplateFieldRequired: (required: boolean) => void; + templateFieldOptions: string; + setTemplateFieldOptions: (options: string) => void; + templateFieldDescription: string; + setTemplateFieldDescription: (desc: string) => void; + templateFieldMultiColumn: boolean; + setTemplateFieldMultiColumn: (multi: boolean) => void; + templateFieldColumnCount: number; + setTemplateFieldColumnCount: (count: number) => void; + templateFieldColumnNames: string[]; + setTemplateFieldColumnNames: React.Dispatch>; + + // 템플릿 필드 마스터 항목 관련 + templateFieldInputMode: 'custom' | 'master'; + setTemplateFieldInputMode: (mode: 'custom' | 'master') => void; + templateFieldShowMasterFieldList: boolean; + setTemplateFieldShowMasterFieldList: (show: boolean) => void; + templateFieldSelectedMasterFieldId: string; + setTemplateFieldSelectedMasterFieldId: (id: string) => void; + + // 핸들러 + handleAddSectionTemplate: () => void; + handleEditSectionTemplate: (template: SectionTemplate) => void; + handleUpdateSectionTemplate: () => void; + handleDeleteSectionTemplate: (id: number) => void; + handleLoadTemplate: (selectedPage: ItemPage | undefined) => void; + handleAddTemplateField: () => void; + handleEditTemplateField: (templateId: number, field: TemplateField) => void; + handleDeleteTemplateField: (templateId: number, fieldId: string) => void; + handleAddBOMItemToTemplate: (templateId: number, item: Omit) => void; + handleUpdateBOMItemInTemplate: (templateId: number, itemId: number, item: Partial) => void; + handleDeleteBOMItemFromTemplate: (templateId: number, itemId: number) => void; + resetSectionTemplateForm: () => void; + resetTemplateFieldForm: () => void; +} + +export function useTemplateManagement(): UseTemplateManagementReturn { + const { + sectionTemplates, + addSectionTemplate, + updateSectionTemplate, + deleteSectionTemplate, + addSectionToPage, + addItemMasterField, + itemMasterFields, + tenantId + } = useItemMaster(); + + // 섹션 템플릿 다이얼로그 상태 + const [isSectionTemplateDialogOpen, setIsSectionTemplateDialogOpen] = useState(false); + const [editingSectionTemplateId, setEditingSectionTemplateId] = useState(null); + + // 섹션 템플릿 폼 상태 + const [newSectionTemplateTitle, setNewSectionTemplateTitle] = useState(''); + const [newSectionTemplateDescription, setNewSectionTemplateDescription] = useState(''); + const [newSectionTemplateCategory, setNewSectionTemplateCategory] = useState([]); + const [newSectionTemplateType, setNewSectionTemplateType] = useState<'fields' | 'bom'>('fields'); + + // 템플릿 불러오기 다이얼로그 + const [isLoadTemplateDialogOpen, setIsLoadTemplateDialogOpen] = useState(false); + const [selectedTemplateId, setSelectedTemplateId] = useState(null); + + // 템플릿 필드 다이얼로그 상태 + const [isTemplateFieldDialogOpen, setIsTemplateFieldDialogOpen] = useState(false); + const [currentTemplateId, setCurrentTemplateId] = useState(null); + const [editingTemplateFieldId, setEditingTemplateFieldId] = useState(null); + + // 템플릿 필드 폼 상태 + const [templateFieldName, setTemplateFieldName] = useState(''); + const [templateFieldKey, setTemplateFieldKey] = useState(''); + const [templateFieldInputType, setTemplateFieldInputType] = useState<'textbox' | 'dropdown' | 'checkbox' | 'number' | 'date' | 'textarea'>('textbox'); + const [templateFieldRequired, setTemplateFieldRequired] = useState(false); + const [templateFieldOptions, setTemplateFieldOptions] = useState(''); + const [templateFieldDescription, setTemplateFieldDescription] = useState(''); + const [templateFieldMultiColumn, setTemplateFieldMultiColumn] = useState(false); + const [templateFieldColumnCount, setTemplateFieldColumnCount] = useState(2); + const [templateFieldColumnNames, setTemplateFieldColumnNames] = useState(['컬럼1', '컬럼2']); + + // 템플릿 필드 마스터 항목 관련 + const [templateFieldInputMode, setTemplateFieldInputMode] = useState<'custom' | 'master'>('custom'); + const [templateFieldShowMasterFieldList, setTemplateFieldShowMasterFieldList] = useState(false); + const [templateFieldSelectedMasterFieldId, setTemplateFieldSelectedMasterFieldId] = useState(''); + + // 섹션 템플릿 추가 + const handleAddSectionTemplate = () => { + if (!newSectionTemplateTitle.trim()) { + toast.error('섹션 제목을 입력해주세요'); + return; + } + + const newTemplateData = { + tenant_id: tenantId ?? 0, + template_name: newSectionTemplateTitle, + section_type: (newSectionTemplateType === 'bom' ? 'BOM' : 'BASIC') as 'BASIC' | 'BOM' | 'CUSTOM', + description: newSectionTemplateDescription || null, + default_fields: null, + category: newSectionTemplateCategory, + created_by: null, + updated_by: null, + }; + + console.log('Adding section template:', newTemplateData); + addSectionTemplate(newTemplateData); + resetSectionTemplateForm(); + toast.success('섹션 템플릿이 추가되었습니다!'); + }; + + // 섹션 템플릿 수정 시작 + const handleEditSectionTemplate = (template: SectionTemplate) => { + setEditingSectionTemplateId(template.id); + setNewSectionTemplateTitle(template.template_name); + setNewSectionTemplateDescription(template.description || ''); + setNewSectionTemplateCategory(template.category || []); + setNewSectionTemplateType(template.section_type === 'BOM' ? 'bom' : 'fields'); + setIsSectionTemplateDialogOpen(true); + }; + + // 섹션 템플릿 업데이트 + const handleUpdateSectionTemplate = () => { + if (!editingSectionTemplateId || !newSectionTemplateTitle.trim()) { + toast.error('섹션 제목을 입력해주세요'); + return; + } + + const updateData = { + template_name: newSectionTemplateTitle, + description: newSectionTemplateDescription || undefined, + category: newSectionTemplateCategory.length > 0 ? newSectionTemplateCategory : undefined, + section_type: (newSectionTemplateType === 'bom' ? 'BOM' : 'BASIC') as 'BASIC' | 'BOM' | 'CUSTOM' + }; + + console.log('Updating section template:', { id: editingSectionTemplateId, updateData }); + updateSectionTemplate(editingSectionTemplateId, updateData); + resetSectionTemplateForm(); + toast.success('섹션이 수정되었습니다 (저장 필요)'); + }; + + // 섹션 템플릿 삭제 + const handleDeleteSectionTemplate = (id: number) => { + if (confirm('이 섹션을 삭제하시겠습니까?')) { + deleteSectionTemplate(id); + toast.success('섹션이 삭제되었습니다'); + } + }; + + // 템플릿 불러오기 + const handleLoadTemplate = (selectedPage: ItemPage | undefined) => { + if (!selectedTemplateId || !selectedPage) { + toast.error('템플릿을 선택해주세요'); + return; + } + + const template = sectionTemplates.find(t => t.id === Number(selectedTemplateId)); + if (!template) { + toast.error('템플릿을 찾을 수 없습니다'); + return; + } + + const newSection = { + page_id: selectedPage.id, + section_name: template.template_name, + section_type: template.section_type === 'BOM' ? 'BOM' as const : 'BASIC' as const, + description: template.description || undefined, + order_no: selectedPage.sections.length + 1, + is_collapsible: true, + is_default_open: true, + fields: [], + bomItems: template.section_type === 'BOM' ? [] : undefined + }; + + console.log('Loading template to section:', template.template_name, 'newSection:', newSection); + addSectionToPage(selectedPage.id, newSection); + setSelectedTemplateId(null); + setIsLoadTemplateDialogOpen(false); + toast.success('섹션이 불러와졌습니다'); + }; + + // 템플릿 필드 추가 + const handleAddTemplateField = () => { + if (!currentTemplateId || !templateFieldName.trim() || !templateFieldKey.trim()) { + toast.error('모든 필수 항목을 입력해주세요'); + return; + } + + const template = sectionTemplates.find(t => t.id === currentTemplateId); + if (!template) return; + + // 마스터 필드에 없으면 자동 추가 + const existingMasterField = itemMasterFields.find(f => f.id.toString() === templateFieldKey); + if (!existingMasterField && !editingTemplateFieldId) { + const newMasterFieldData: Omit = { + field_name: templateFieldName, + field_type: templateFieldInputType, + category: '공통', + description: templateFieldDescription || null, + is_common: false, + default_value: null, + options: templateFieldInputType === 'dropdown' && templateFieldOptions.trim() + ? templateFieldOptions.split(',').map(o => ({ label: o.trim(), value: o.trim() })) + : null, + validation_rules: null, + properties: { + inputType: templateFieldInputType, + required: templateFieldRequired, + multiColumn: (templateFieldInputType === 'textbox' || templateFieldInputType === 'textarea') ? templateFieldMultiColumn : undefined, + columnCount: (templateFieldInputType === 'textbox' || templateFieldInputType === 'textarea') && templateFieldMultiColumn ? templateFieldColumnCount : undefined, + columnNames: (templateFieldInputType === 'textbox' || templateFieldInputType === 'textarea') && templateFieldMultiColumn ? templateFieldColumnNames : undefined + }, + }; + addItemMasterField(newMasterFieldData as any); + toast.success('항목 탭에 자동으로 추가되었습니다'); + } + + // TemplateField 형식으로 생성 + const newField: TemplateField = { + id: String(editingTemplateFieldId || Date.now()), + name: templateFieldName, + fieldKey: templateFieldKey, + property: { + inputType: templateFieldInputType, + required: templateFieldRequired, + options: templateFieldInputType === 'dropdown' && templateFieldOptions.trim() + ? templateFieldOptions.split(',').map(o => o.trim()) + : undefined, + multiColumn: (templateFieldInputType === 'textbox' || templateFieldInputType === 'textarea') ? templateFieldMultiColumn : undefined, + columnCount: (templateFieldInputType === 'textbox' || templateFieldInputType === 'textarea') && templateFieldMultiColumn ? templateFieldColumnCount : undefined, + columnNames: (templateFieldInputType === 'textbox' || templateFieldInputType === 'textarea') && templateFieldMultiColumn ? templateFieldColumnNames : undefined + }, + description: templateFieldDescription || undefined + }; + + let updatedFields; + const currentFields = template.default_fields + ? (typeof template.default_fields === 'string' ? JSON.parse(template.default_fields) : template.default_fields) + : []; + + if (editingTemplateFieldId) { + updatedFields = Array.isArray(currentFields) + ? currentFields.map((f: any) => String(f.id) === String(editingTemplateFieldId) ? newField : f) + : []; + toast.success('항목이 수정되었습니다'); + } else { + updatedFields = Array.isArray(currentFields) ? [...currentFields, newField] : [newField]; + toast.success('항목이 추가되었습니다'); + } + + updateSectionTemplate(currentTemplateId, { default_fields: updatedFields }); + resetTemplateFieldForm(); + }; + + // 템플릿 필드 수정 시작 + const handleEditTemplateField = (templateId: number, field: TemplateField) => { + setCurrentTemplateId(templateId); + setEditingTemplateFieldId(Number(field.id)); + setTemplateFieldName(field.name); + setTemplateFieldKey(field.fieldKey); + setTemplateFieldInputType(field.property.inputType); + setTemplateFieldRequired(field.property.required); + setTemplateFieldOptions(field.property.options?.join(', ') || ''); + setTemplateFieldDescription(field.description || ''); + setTemplateFieldMultiColumn(field.property.multiColumn || false); + setTemplateFieldColumnCount(field.property.columnCount || 2); + setTemplateFieldColumnNames(field.property.columnNames || ['컬럼1', '컬럼2']); + setIsTemplateFieldDialogOpen(true); + }; + + // 템플릿 필드 삭제 + const handleDeleteTemplateField = (templateId: number, fieldId: string) => { + if (!confirm('이 항목을 삭제하시겠습니까?')) return; + + const template = sectionTemplates.find(t => t.id === templateId); + if (!template) return; + + const currentFields = template.default_fields + ? (typeof template.default_fields === 'string' ? JSON.parse(template.default_fields) : template.default_fields) + : []; + const updatedFields = Array.isArray(currentFields) + ? currentFields.filter((f: any) => String(f.id) !== String(fieldId)) + : []; + updateSectionTemplate(templateId, { default_fields: updatedFields }); + toast.success('항목이 삭제되었습니다'); + }; + + // BOM 항목 추가 + const handleAddBOMItemToTemplate = (templateId: number, item: Omit) => { + const newItem: BOMItem = { + ...item, + id: Date.now(), + created_at: new Date().toISOString(), + updated_at: new Date().toISOString(), + tenant_id: tenantId ?? 0, + section_id: 0 + }; + + const template = sectionTemplates.find(t => t.id === templateId); + if (!template) return; + + const updatedBomItems = [...(template.bomItems || []), newItem]; + updateSectionTemplate(templateId, { bomItems: updatedBomItems }); + }; + + // BOM 항목 수정 + const handleUpdateBOMItemInTemplate = (templateId: number, itemId: number, item: Partial) => { + const template = sectionTemplates.find(t => t.id === templateId); + if (!template || !template.bomItems) return; + + const updatedBomItems = template.bomItems.map(bom => + bom.id === itemId ? { ...bom, ...item } : bom + ); + updateSectionTemplate(templateId, { bomItems: updatedBomItems }); + }; + + // BOM 항목 삭제 + const handleDeleteBOMItemFromTemplate = (templateId: number, itemId: number) => { + const template = sectionTemplates.find(t => t.id === templateId); + if (!template || !template.bomItems) return; + + const updatedBomItems = template.bomItems.filter(bom => bom.id !== itemId); + updateSectionTemplate(templateId, { bomItems: updatedBomItems }); + }; + + // 섹션 템플릿 폼 초기화 + const resetSectionTemplateForm = () => { + setEditingSectionTemplateId(null); + setNewSectionTemplateTitle(''); + setNewSectionTemplateDescription(''); + setNewSectionTemplateCategory([]); + setNewSectionTemplateType('fields'); + setIsSectionTemplateDialogOpen(false); + }; + + // 템플릿 필드 폼 초기화 + const resetTemplateFieldForm = () => { + setTemplateFieldName(''); + setTemplateFieldKey(''); + setTemplateFieldInputType('textbox'); + setTemplateFieldRequired(false); + setTemplateFieldOptions(''); + setTemplateFieldDescription(''); + setTemplateFieldMultiColumn(false); + setTemplateFieldColumnCount(2); + setTemplateFieldColumnNames(['컬럼1', '컬럼2']); + setEditingTemplateFieldId(null); + setTemplateFieldInputMode('custom'); + setTemplateFieldShowMasterFieldList(false); + setTemplateFieldSelectedMasterFieldId(''); + setIsTemplateFieldDialogOpen(false); + }; + + return { + // 섹션 템플릿 다이얼로그 상태 + isSectionTemplateDialogOpen, + setIsSectionTemplateDialogOpen, + editingSectionTemplateId, + setEditingSectionTemplateId, + + // 섹션 템플릿 폼 상태 + newSectionTemplateTitle, + setNewSectionTemplateTitle, + newSectionTemplateDescription, + setNewSectionTemplateDescription, + newSectionTemplateCategory, + setNewSectionTemplateCategory, + newSectionTemplateType, + setNewSectionTemplateType, + + // 템플릿 불러오기 다이얼로그 + isLoadTemplateDialogOpen, + setIsLoadTemplateDialogOpen, + selectedTemplateId, + setSelectedTemplateId, + + // 템플릿 필드 다이얼로그 상태 + isTemplateFieldDialogOpen, + setIsTemplateFieldDialogOpen, + currentTemplateId, + setCurrentTemplateId, + editingTemplateFieldId, + setEditingTemplateFieldId, + + // 템플릿 필드 폼 상태 + templateFieldName, + setTemplateFieldName, + templateFieldKey, + setTemplateFieldKey, + templateFieldInputType, + setTemplateFieldInputType, + templateFieldRequired, + setTemplateFieldRequired, + templateFieldOptions, + setTemplateFieldOptions, + templateFieldDescription, + setTemplateFieldDescription, + templateFieldMultiColumn, + setTemplateFieldMultiColumn, + templateFieldColumnCount, + setTemplateFieldColumnCount, + templateFieldColumnNames, + setTemplateFieldColumnNames, + + // 템플릿 필드 마스터 항목 관련 + templateFieldInputMode, + setTemplateFieldInputMode, + templateFieldShowMasterFieldList, + setTemplateFieldShowMasterFieldList, + templateFieldSelectedMasterFieldId, + setTemplateFieldSelectedMasterFieldId, + + // 핸들러 + handleAddSectionTemplate, + handleEditSectionTemplate, + handleUpdateSectionTemplate, + handleDeleteSectionTemplate, + handleLoadTemplate, + handleAddTemplateField, + handleEditTemplateField, + handleDeleteTemplateField, + handleAddBOMItemToTemplate, + handleUpdateBOMItemInTemplate, + handleDeleteBOMItemFromTemplate, + resetSectionTemplateForm, + resetTemplateFieldForm, + }; +} \ No newline at end of file diff --git a/src/components/items/ItemMasterDataManagement/tabs/HierarchyTab/index.tsx b/src/components/items/ItemMasterDataManagement/tabs/HierarchyTab/index.tsx index 44bfa2c6..5a651cac 100644 --- a/src/components/items/ItemMasterDataManagement/tabs/HierarchyTab/index.tsx +++ b/src/components/items/ItemMasterDataManagement/tabs/HierarchyTab/index.tsx @@ -25,8 +25,8 @@ interface HierarchyTabProps { setEditingPathPageId: (id: number | null) => void; editingAbsolutePath: string; setEditingAbsolutePath: (path: string) => void; - editingSectionId: string | null; - setEditingSectionId: (id: string | null) => void; + editingSectionId: number | null; + setEditingSectionId: (id: number | null) => void; editingSectionTitle: string; setEditingSectionTitle: (title: string) => void; hasUnsavedChanges: boolean; @@ -51,7 +51,7 @@ interface HierarchyTabProps { setIsPageDialogOpen: (open: boolean) => void; setIsSectionDialogOpen: (open: boolean) => void; setIsFieldDialogOpen: (open: boolean) => void; - handleEditSectionTitle: (sectionId: string, title: string) => void; + handleEditSectionTitle: (sectionId: number, title: string) => void; handleSaveSectionTitle: () => void; moveSection: (dragIndex: number, hoverIndex: number) => void; deleteSection: (pageId: number, sectionId: number) => void; diff --git a/tsconfig.tsbuildinfo b/tsconfig.tsbuildinfo index b2851e2e..d72c09d0 100644 --- a/tsconfig.tsbuildinfo +++ b/tsconfig.tsbuildinfo @@ -1 +1 @@ -{"fileNames":["./node_modules/typescript/lib/lib.es5.d.ts","./node_modules/typescript/lib/lib.es2015.d.ts","./node_modules/typescript/lib/lib.es2016.d.ts","./node_modules/typescript/lib/lib.es2017.d.ts","./node_modules/typescript/lib/lib.es2018.d.ts","./node_modules/typescript/lib/lib.es2019.d.ts","./node_modules/typescript/lib/lib.es2020.d.ts","./node_modules/typescript/lib/lib.es2021.d.ts","./node_modules/typescript/lib/lib.es2022.d.ts","./node_modules/typescript/lib/lib.es2023.d.ts","./node_modules/typescript/lib/lib.es2024.d.ts","./node_modules/typescript/lib/lib.esnext.d.ts","./node_modules/typescript/lib/lib.dom.d.ts","./node_modules/typescript/lib/lib.dom.iterable.d.ts","./node_modules/typescript/lib/lib.es2015.core.d.ts","./node_modules/typescript/lib/lib.es2015.collection.d.ts","./node_modules/typescript/lib/lib.es2015.generator.d.ts","./node_modules/typescript/lib/lib.es2015.iterable.d.ts","./node_modules/typescript/lib/lib.es2015.promise.d.ts","./node_modules/typescript/lib/lib.es2015.proxy.d.ts","./node_modules/typescript/lib/lib.es2015.reflect.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2016.array.include.d.ts","./node_modules/typescript/lib/lib.es2016.intl.d.ts","./node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","./node_modules/typescript/lib/lib.es2017.date.d.ts","./node_modules/typescript/lib/lib.es2017.object.d.ts","./node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2017.string.d.ts","./node_modules/typescript/lib/lib.es2017.intl.d.ts","./node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","./node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","./node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","./node_modules/typescript/lib/lib.es2018.intl.d.ts","./node_modules/typescript/lib/lib.es2018.promise.d.ts","./node_modules/typescript/lib/lib.es2018.regexp.d.ts","./node_modules/typescript/lib/lib.es2019.array.d.ts","./node_modules/typescript/lib/lib.es2019.object.d.ts","./node_modules/typescript/lib/lib.es2019.string.d.ts","./node_modules/typescript/lib/lib.es2019.symbol.d.ts","./node_modules/typescript/lib/lib.es2019.intl.d.ts","./node_modules/typescript/lib/lib.es2020.bigint.d.ts","./node_modules/typescript/lib/lib.es2020.date.d.ts","./node_modules/typescript/lib/lib.es2020.promise.d.ts","./node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2020.string.d.ts","./node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2020.intl.d.ts","./node_modules/typescript/lib/lib.es2020.number.d.ts","./node_modules/typescript/lib/lib.es2021.promise.d.ts","./node_modules/typescript/lib/lib.es2021.string.d.ts","./node_modules/typescript/lib/lib.es2021.weakref.d.ts","./node_modules/typescript/lib/lib.es2021.intl.d.ts","./node_modules/typescript/lib/lib.es2022.array.d.ts","./node_modules/typescript/lib/lib.es2022.error.d.ts","./node_modules/typescript/lib/lib.es2022.intl.d.ts","./node_modules/typescript/lib/lib.es2022.object.d.ts","./node_modules/typescript/lib/lib.es2022.string.d.ts","./node_modules/typescript/lib/lib.es2022.regexp.d.ts","./node_modules/typescript/lib/lib.es2023.array.d.ts","./node_modules/typescript/lib/lib.es2023.collection.d.ts","./node_modules/typescript/lib/lib.es2023.intl.d.ts","./node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","./node_modules/typescript/lib/lib.es2024.collection.d.ts","./node_modules/typescript/lib/lib.es2024.object.d.ts","./node_modules/typescript/lib/lib.es2024.promise.d.ts","./node_modules/typescript/lib/lib.es2024.regexp.d.ts","./node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2024.string.d.ts","./node_modules/typescript/lib/lib.esnext.array.d.ts","./node_modules/typescript/lib/lib.esnext.collection.d.ts","./node_modules/typescript/lib/lib.esnext.intl.d.ts","./node_modules/typescript/lib/lib.esnext.disposable.d.ts","./node_modules/typescript/lib/lib.esnext.promise.d.ts","./node_modules/typescript/lib/lib.esnext.decorators.d.ts","./node_modules/typescript/lib/lib.esnext.iterator.d.ts","./node_modules/typescript/lib/lib.esnext.float16.d.ts","./node_modules/typescript/lib/lib.esnext.error.d.ts","./node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","./node_modules/typescript/lib/lib.decorators.d.ts","./node_modules/typescript/lib/lib.decorators.legacy.d.ts","./.next/types/routes.d.ts","./node_modules/@types/react/global.d.ts","./node_modules/csstype/index.d.ts","./node_modules/@types/react/index.d.ts","./node_modules/next/dist/styled-jsx/types/css.d.ts","./node_modules/next/dist/styled-jsx/types/macro.d.ts","./node_modules/next/dist/styled-jsx/types/style.d.ts","./node_modules/next/dist/styled-jsx/types/global.d.ts","./node_modules/next/dist/styled-jsx/types/index.d.ts","./node_modules/next/dist/shared/lib/amp.d.ts","./node_modules/next/amp.d.ts","./node_modules/next/dist/server/get-page-files.d.ts","./node_modules/@types/node/compatibility/disposable.d.ts","./node_modules/@types/node/compatibility/indexable.d.ts","./node_modules/@types/node/compatibility/iterators.d.ts","./node_modules/@types/node/compatibility/index.d.ts","./node_modules/@types/node/globals.typedarray.d.ts","./node_modules/@types/node/buffer.buffer.d.ts","./node_modules/@types/node/globals.d.ts","./node_modules/@types/node/web-globals/abortcontroller.d.ts","./node_modules/@types/node/web-globals/domexception.d.ts","./node_modules/@types/node/web-globals/events.d.ts","./node_modules/undici-types/header.d.ts","./node_modules/undici-types/readable.d.ts","./node_modules/undici-types/file.d.ts","./node_modules/undici-types/fetch.d.ts","./node_modules/undici-types/formdata.d.ts","./node_modules/undici-types/connector.d.ts","./node_modules/undici-types/client.d.ts","./node_modules/undici-types/errors.d.ts","./node_modules/undici-types/dispatcher.d.ts","./node_modules/undici-types/global-dispatcher.d.ts","./node_modules/undici-types/global-origin.d.ts","./node_modules/undici-types/pool-stats.d.ts","./node_modules/undici-types/pool.d.ts","./node_modules/undici-types/handlers.d.ts","./node_modules/undici-types/balanced-pool.d.ts","./node_modules/undici-types/agent.d.ts","./node_modules/undici-types/mock-interceptor.d.ts","./node_modules/undici-types/mock-agent.d.ts","./node_modules/undici-types/mock-client.d.ts","./node_modules/undici-types/mock-pool.d.ts","./node_modules/undici-types/mock-errors.d.ts","./node_modules/undici-types/proxy-agent.d.ts","./node_modules/undici-types/env-http-proxy-agent.d.ts","./node_modules/undici-types/retry-handler.d.ts","./node_modules/undici-types/retry-agent.d.ts","./node_modules/undici-types/api.d.ts","./node_modules/undici-types/interceptors.d.ts","./node_modules/undici-types/util.d.ts","./node_modules/undici-types/cookies.d.ts","./node_modules/undici-types/patch.d.ts","./node_modules/undici-types/websocket.d.ts","./node_modules/undici-types/eventsource.d.ts","./node_modules/undici-types/filereader.d.ts","./node_modules/undici-types/diagnostics-channel.d.ts","./node_modules/undici-types/content-type.d.ts","./node_modules/undici-types/cache.d.ts","./node_modules/undici-types/index.d.ts","./node_modules/@types/node/web-globals/fetch.d.ts","./node_modules/@types/node/assert.d.ts","./node_modules/@types/node/assert/strict.d.ts","./node_modules/@types/node/async_hooks.d.ts","./node_modules/@types/node/buffer.d.ts","./node_modules/@types/node/child_process.d.ts","./node_modules/@types/node/cluster.d.ts","./node_modules/@types/node/console.d.ts","./node_modules/@types/node/constants.d.ts","./node_modules/@types/node/crypto.d.ts","./node_modules/@types/node/dgram.d.ts","./node_modules/@types/node/diagnostics_channel.d.ts","./node_modules/@types/node/dns.d.ts","./node_modules/@types/node/dns/promises.d.ts","./node_modules/@types/node/domain.d.ts","./node_modules/@types/node/events.d.ts","./node_modules/@types/node/fs.d.ts","./node_modules/@types/node/fs/promises.d.ts","./node_modules/@types/node/http.d.ts","./node_modules/@types/node/http2.d.ts","./node_modules/@types/node/https.d.ts","./node_modules/@types/node/inspector.generated.d.ts","./node_modules/@types/node/module.d.ts","./node_modules/@types/node/net.d.ts","./node_modules/@types/node/os.d.ts","./node_modules/@types/node/path.d.ts","./node_modules/@types/node/perf_hooks.d.ts","./node_modules/@types/node/process.d.ts","./node_modules/@types/node/punycode.d.ts","./node_modules/@types/node/querystring.d.ts","./node_modules/@types/node/readline.d.ts","./node_modules/@types/node/readline/promises.d.ts","./node_modules/@types/node/repl.d.ts","./node_modules/@types/node/sea.d.ts","./node_modules/@types/node/stream.d.ts","./node_modules/@types/node/stream/promises.d.ts","./node_modules/@types/node/stream/consumers.d.ts","./node_modules/@types/node/stream/web.d.ts","./node_modules/@types/node/string_decoder.d.ts","./node_modules/@types/node/test.d.ts","./node_modules/@types/node/timers.d.ts","./node_modules/@types/node/timers/promises.d.ts","./node_modules/@types/node/tls.d.ts","./node_modules/@types/node/trace_events.d.ts","./node_modules/@types/node/tty.d.ts","./node_modules/@types/node/url.d.ts","./node_modules/@types/node/util.d.ts","./node_modules/@types/node/v8.d.ts","./node_modules/@types/node/vm.d.ts","./node_modules/@types/node/wasi.d.ts","./node_modules/@types/node/worker_threads.d.ts","./node_modules/@types/node/zlib.d.ts","./node_modules/@types/node/index.d.ts","./node_modules/@types/react/canary.d.ts","./node_modules/@types/react/experimental.d.ts","./node_modules/@types/react-dom/index.d.ts","./node_modules/@types/react-dom/canary.d.ts","./node_modules/@types/react-dom/experimental.d.ts","./node_modules/next/dist/lib/fallback.d.ts","./node_modules/next/dist/compiled/webpack/webpack.d.ts","./node_modules/next/dist/server/config.d.ts","./node_modules/next/dist/lib/load-custom-routes.d.ts","./node_modules/next/dist/shared/lib/image-config.d.ts","./node_modules/next/dist/build/webpack/plugins/subresource-integrity-plugin.d.ts","./node_modules/next/dist/server/body-streams.d.ts","./node_modules/next/dist/server/lib/cache-control.d.ts","./node_modules/next/dist/lib/setup-exception-listeners.d.ts","./node_modules/next/dist/lib/worker.d.ts","./node_modules/next/dist/lib/constants.d.ts","./node_modules/next/dist/client/components/app-router-headers.d.ts","./node_modules/next/dist/build/rendering-mode.d.ts","./node_modules/next/dist/server/lib/router-utils/build-prefetch-segment-data-route.d.ts","./node_modules/next/dist/server/require-hook.d.ts","./node_modules/next/dist/server/lib/experimental/ppr.d.ts","./node_modules/next/dist/build/webpack/plugins/app-build-manifest-plugin.d.ts","./node_modules/next/dist/lib/page-types.d.ts","./node_modules/next/dist/build/segment-config/app/app-segment-config.d.ts","./node_modules/next/dist/build/segment-config/pages/pages-segment-config.d.ts","./node_modules/next/dist/build/analysis/get-page-static-info.d.ts","./node_modules/next/dist/build/webpack/loaders/get-module-build-info.d.ts","./node_modules/next/dist/build/webpack/plugins/middleware-plugin.d.ts","./node_modules/next/dist/server/node-polyfill-crypto.d.ts","./node_modules/next/dist/server/node-environment-baseline.d.ts","./node_modules/next/dist/server/node-environment-extensions/error-inspect.d.ts","./node_modules/next/dist/server/node-environment-extensions/random.d.ts","./node_modules/next/dist/server/node-environment-extensions/date.d.ts","./node_modules/next/dist/server/node-environment-extensions/web-crypto.d.ts","./node_modules/next/dist/server/node-environment-extensions/node-crypto.d.ts","./node_modules/next/dist/server/node-environment.d.ts","./node_modules/next/dist/build/page-extensions-type.d.ts","./node_modules/next/dist/build/webpack/plugins/flight-manifest-plugin.d.ts","./node_modules/next/dist/server/instrumentation/types.d.ts","./node_modules/next/dist/lib/coalesced-function.d.ts","./node_modules/next/dist/shared/lib/router/utils/middleware-route-matcher.d.ts","./node_modules/next/dist/server/lib/router-utils/types.d.ts","./node_modules/next/dist/shared/lib/modern-browserslist-target.d.ts","./node_modules/next/dist/shared/lib/constants.d.ts","./node_modules/next/dist/trace/types.d.ts","./node_modules/next/dist/trace/trace.d.ts","./node_modules/next/dist/trace/shared.d.ts","./node_modules/next/dist/trace/index.d.ts","./node_modules/next/dist/build/load-jsconfig.d.ts","./node_modules/@next/env/dist/index.d.ts","./node_modules/next/dist/build/webpack/plugins/telemetry-plugin/use-cache-tracker-utils.d.ts","./node_modules/next/dist/build/webpack/plugins/telemetry-plugin/telemetry-plugin.d.ts","./node_modules/next/dist/telemetry/storage.d.ts","./node_modules/next/dist/build/build-context.d.ts","./node_modules/next/dist/shared/lib/bloom-filter.d.ts","./node_modules/next/dist/build/webpack-config.d.ts","./node_modules/next/dist/server/route-kind.d.ts","./node_modules/next/dist/server/route-definitions/route-definition.d.ts","./node_modules/next/dist/build/swc/generated-native.d.ts","./node_modules/next/dist/build/swc/types.d.ts","./node_modules/next/dist/server/dev/parse-version-info.d.ts","./node_modules/next/dist/next-devtools/shared/types.d.ts","./node_modules/next/dist/server/dev/dev-indicator-server-state.d.ts","./node_modules/next/dist/server/lib/parse-stack.d.ts","./node_modules/next/dist/next-devtools/server/shared.d.ts","./node_modules/next/dist/next-devtools/shared/stack-frame.d.ts","./node_modules/next/dist/next-devtools/dev-overlay/utils/get-error-by-type.d.ts","./node_modules/@types/react/jsx-runtime.d.ts","./node_modules/next/dist/next-devtools/dev-overlay/container/runtime-error/render-error.d.ts","./node_modules/next/dist/next-devtools/dev-overlay/shared.d.ts","./node_modules/next/dist/server/dev/hot-reloader-types.d.ts","./node_modules/next/dist/server/lib/cache-handlers/types.d.ts","./node_modules/next/dist/server/response-cache/types.d.ts","./node_modules/next/dist/server/resume-data-cache/cache-store.d.ts","./node_modules/next/dist/server/resume-data-cache/resume-data-cache.d.ts","./node_modules/next/dist/server/render-result.d.ts","./node_modules/next/dist/server/lib/i18n-provider.d.ts","./node_modules/next/dist/server/web/next-url.d.ts","./node_modules/next/dist/compiled/@edge-runtime/cookies/index.d.ts","./node_modules/next/dist/server/web/spec-extension/cookies.d.ts","./node_modules/next/dist/server/web/spec-extension/request.d.ts","./node_modules/next/dist/server/after/builtin-request-context.d.ts","./node_modules/next/dist/server/web/spec-extension/fetch-event.d.ts","./node_modules/next/dist/server/web/spec-extension/response.d.ts","./node_modules/next/dist/build/segment-config/middleware/middleware-config.d.ts","./node_modules/next/dist/server/web/types.d.ts","./node_modules/next/dist/build/webpack/plugins/pages-manifest-plugin.d.ts","./node_modules/next/dist/shared/lib/router/utils/parse-url.d.ts","./node_modules/next/dist/server/base-http/node.d.ts","./node_modules/next/dist/build/webpack/plugins/next-font-manifest-plugin.d.ts","./node_modules/next/dist/server/route-definitions/locale-route-definition.d.ts","./node_modules/next/dist/server/route-definitions/pages-route-definition.d.ts","./node_modules/next/dist/shared/lib/mitt.d.ts","./node_modules/next/dist/client/with-router.d.ts","./node_modules/next/dist/client/router.d.ts","./node_modules/next/dist/client/route-loader.d.ts","./node_modules/next/dist/client/page-loader.d.ts","./node_modules/next/dist/shared/lib/router/router.d.ts","./node_modules/next/dist/shared/lib/router-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/loadable-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/loadable.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/image-config-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/hooks-client-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/head-manager-context.shared-runtime.d.ts","./node_modules/next/dist/server/route-definitions/app-page-route-definition.d.ts","./node_modules/next/dist/build/webpack/loaders/metadata/types.d.ts","./node_modules/next/dist/build/webpack/loaders/next-app-loader/index.d.ts","./node_modules/next/dist/server/lib/app-dir-module.d.ts","./node_modules/next/dist/server/web/spec-extension/adapters/request-cookies.d.ts","./node_modules/next/dist/server/async-storage/draft-mode-provider.d.ts","./node_modules/next/dist/server/web/spec-extension/adapters/headers.d.ts","./node_modules/next/dist/server/app-render/cache-signal.d.ts","./node_modules/next/dist/server/app-render/dynamic-rendering.d.ts","./node_modules/next/dist/server/request/fallback-params.d.ts","./node_modules/next/dist/server/app-render/work-unit-async-storage-instance.d.ts","./node_modules/next/dist/server/response-cache/index.d.ts","./node_modules/next/dist/server/lib/lazy-result.d.ts","./node_modules/next/dist/server/lib/implicit-tags.d.ts","./node_modules/next/dist/server/app-render/work-unit-async-storage.external.d.ts","./node_modules/next/dist/shared/lib/deep-readonly.d.ts","./node_modules/next/dist/shared/lib/router/utils/parse-relative-url.d.ts","./node_modules/next/dist/server/app-render/app-render.d.ts","./node_modules/next/dist/shared/lib/server-inserted-html.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/amp-context.shared-runtime.d.ts","./node_modules/next/dist/server/route-modules/app-page/vendored/contexts/entrypoints.d.ts","./node_modules/next/dist/server/route-modules/app-page/module.compiled.d.ts","./node_modules/next/dist/client/components/error-boundary.d.ts","./node_modules/next/dist/client/components/layout-router.d.ts","./node_modules/next/dist/client/components/render-from-template-context.d.ts","./node_modules/next/dist/server/app-render/action-async-storage-instance.d.ts","./node_modules/next/dist/server/app-render/action-async-storage.external.d.ts","./node_modules/next/dist/client/components/client-page.d.ts","./node_modules/next/dist/client/components/client-segment.d.ts","./node_modules/next/dist/server/request/search-params.d.ts","./node_modules/next/dist/client/components/hooks-server-context.d.ts","./node_modules/next/dist/client/components/http-access-fallback/error-boundary.d.ts","./node_modules/next/dist/lib/metadata/types/alternative-urls-types.d.ts","./node_modules/next/dist/lib/metadata/types/extra-types.d.ts","./node_modules/next/dist/lib/metadata/types/metadata-types.d.ts","./node_modules/next/dist/lib/metadata/types/manifest-types.d.ts","./node_modules/next/dist/lib/metadata/types/opengraph-types.d.ts","./node_modules/next/dist/lib/metadata/types/twitter-types.d.ts","./node_modules/next/dist/lib/metadata/types/metadata-interface.d.ts","./node_modules/next/dist/lib/metadata/types/resolvers.d.ts","./node_modules/next/dist/lib/metadata/types/icons.d.ts","./node_modules/next/dist/lib/metadata/resolve-metadata.d.ts","./node_modules/next/dist/lib/metadata/metadata.d.ts","./node_modules/next/dist/lib/framework/boundary-components.d.ts","./node_modules/next/dist/server/app-render/rsc/preloads.d.ts","./node_modules/next/dist/server/app-render/rsc/postpone.d.ts","./node_modules/next/dist/server/app-render/rsc/taint.d.ts","./node_modules/next/dist/shared/lib/segment-cache/segment-value-encoding.d.ts","./node_modules/next/dist/server/app-render/collect-segment-data.d.ts","./node_modules/next/dist/next-devtools/userspace/app/segment-explorer-node.d.ts","./node_modules/next/dist/server/app-render/entry-base.d.ts","./node_modules/next/dist/build/templates/app-page.d.ts","./node_modules/@types/react/jsx-dev-runtime.d.ts","./node_modules/@types/react/compiler-runtime.d.ts","./node_modules/next/dist/server/route-modules/app-page/vendored/rsc/entrypoints.d.ts","./node_modules/@types/react-dom/client.d.ts","./node_modules/@types/react-dom/static.d.ts","./node_modules/@types/react-dom/server.d.ts","./node_modules/next/dist/server/route-modules/app-page/vendored/ssr/entrypoints.d.ts","./node_modules/next/dist/server/route-modules/app-page/module.d.ts","./node_modules/next/dist/server/web/adapter.d.ts","./node_modules/next/dist/server/use-cache/cache-life.d.ts","./node_modules/next/dist/server/app-render/types.d.ts","./node_modules/next/dist/client/components/router-reducer/router-reducer-types.d.ts","./node_modules/next/dist/client/flight-data-helpers.d.ts","./node_modules/next/dist/client/components/router-reducer/fetch-server-response.d.ts","./node_modules/next/dist/shared/lib/app-router-context.shared-runtime.d.ts","./node_modules/next/dist/server/route-modules/pages/vendored/contexts/entrypoints.d.ts","./node_modules/next/dist/server/route-modules/pages/module.compiled.d.ts","./node_modules/next/dist/build/templates/pages.d.ts","./node_modules/next/dist/server/route-modules/pages/module.d.ts","./node_modules/next/dist/next-devtools/userspace/pages/pages-dev-overlay-setup.d.ts","./node_modules/next/dist/server/render.d.ts","./node_modules/next/dist/server/route-definitions/pages-api-route-definition.d.ts","./node_modules/next/dist/server/route-matches/pages-api-route-match.d.ts","./node_modules/next/dist/server/route-matchers/route-matcher.d.ts","./node_modules/next/dist/server/route-matcher-providers/route-matcher-provider.d.ts","./node_modules/next/dist/server/route-matcher-managers/route-matcher-manager.d.ts","./node_modules/next/dist/server/normalizers/normalizer.d.ts","./node_modules/next/dist/server/normalizers/locale-route-normalizer.d.ts","./node_modules/next/dist/server/normalizers/request/pathname-normalizer.d.ts","./node_modules/next/dist/server/normalizers/request/suffix.d.ts","./node_modules/next/dist/server/normalizers/request/rsc.d.ts","./node_modules/next/dist/server/normalizers/request/prefetch-rsc.d.ts","./node_modules/next/dist/server/normalizers/request/next-data.d.ts","./node_modules/next/dist/server/normalizers/request/segment-prefix-rsc.d.ts","./node_modules/next/dist/build/static-paths/types.d.ts","./node_modules/next/dist/server/base-server.d.ts","./node_modules/next/dist/server/lib/async-callback-set.d.ts","./node_modules/next/dist/shared/lib/router/utils/route-regex.d.ts","./node_modules/next/dist/shared/lib/router/utils/route-matcher.d.ts","./node_modules/sharp/lib/index.d.ts","./node_modules/next/dist/server/image-optimizer.d.ts","./node_modules/next/dist/server/next-server.d.ts","./node_modules/next/dist/server/lib/types.d.ts","./node_modules/next/dist/server/lib/lru-cache.d.ts","./node_modules/next/dist/server/lib/dev-bundler-service.d.ts","./node_modules/next/dist/server/dev/static-paths-worker.d.ts","./node_modules/next/dist/server/dev/next-dev-server.d.ts","./node_modules/next/dist/server/next.d.ts","./node_modules/next/dist/server/lib/render-server.d.ts","./node_modules/next/dist/server/lib/router-server.d.ts","./node_modules/next/dist/shared/lib/router/utils/path-match.d.ts","./node_modules/next/dist/server/lib/router-utils/filesystem.d.ts","./node_modules/next/dist/server/lib/router-utils/setup-dev-bundler.d.ts","./node_modules/next/dist/server/lib/router-utils/router-server-context.d.ts","./node_modules/next/dist/server/route-modules/route-module.d.ts","./node_modules/next/dist/server/load-components.d.ts","./node_modules/next/dist/server/route-definitions/app-route-route-definition.d.ts","./node_modules/next/dist/server/async-storage/work-store.d.ts","./node_modules/next/dist/server/web/http.d.ts","./node_modules/next/dist/server/route-modules/app-route/shared-modules.d.ts","./node_modules/next/dist/client/components/redirect-status-code.d.ts","./node_modules/next/dist/client/components/redirect-error.d.ts","./node_modules/next/dist/build/templates/app-route.d.ts","./node_modules/next/dist/server/route-modules/app-route/module.d.ts","./node_modules/next/dist/server/route-modules/app-route/module.compiled.d.ts","./node_modules/next/dist/build/segment-config/app/app-segments.d.ts","./node_modules/next/dist/build/utils.d.ts","./node_modules/next/dist/build/turborepo-access-trace/types.d.ts","./node_modules/next/dist/build/turborepo-access-trace/result.d.ts","./node_modules/next/dist/build/turborepo-access-trace/helpers.d.ts","./node_modules/next/dist/build/turborepo-access-trace/index.d.ts","./node_modules/next/dist/export/routes/types.d.ts","./node_modules/next/dist/export/types.d.ts","./node_modules/next/dist/export/worker.d.ts","./node_modules/next/dist/build/worker.d.ts","./node_modules/next/dist/build/index.d.ts","./node_modules/next/dist/server/lib/incremental-cache/index.d.ts","./node_modules/next/dist/server/after/after.d.ts","./node_modules/next/dist/server/after/after-context.d.ts","./node_modules/next/dist/server/app-render/work-async-storage-instance.d.ts","./node_modules/next/dist/server/app-render/work-async-storage.external.d.ts","./node_modules/next/dist/server/request/params.d.ts","./node_modules/next/dist/server/route-matches/route-match.d.ts","./node_modules/next/dist/server/request-meta.d.ts","./node_modules/next/dist/cli/next-test.d.ts","./node_modules/next/dist/server/config-shared.d.ts","./node_modules/next/dist/server/base-http/index.d.ts","./node_modules/next/dist/server/api-utils/index.d.ts","./node_modules/next/dist/types.d.ts","./node_modules/next/dist/shared/lib/html-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/utils.d.ts","./node_modules/next/dist/pages/_app.d.ts","./node_modules/next/app.d.ts","./node_modules/next/dist/server/web/spec-extension/unstable-cache.d.ts","./node_modules/next/dist/server/web/spec-extension/revalidate.d.ts","./node_modules/next/dist/server/web/spec-extension/unstable-no-store.d.ts","./node_modules/next/dist/server/use-cache/cache-tag.d.ts","./node_modules/next/cache.d.ts","./node_modules/next/dist/shared/lib/runtime-config.external.d.ts","./node_modules/next/config.d.ts","./node_modules/next/dist/pages/_document.d.ts","./node_modules/next/document.d.ts","./node_modules/next/dist/shared/lib/dynamic.d.ts","./node_modules/next/dynamic.d.ts","./node_modules/next/dist/pages/_error.d.ts","./node_modules/next/error.d.ts","./node_modules/next/dist/shared/lib/head.d.ts","./node_modules/next/head.d.ts","./node_modules/next/dist/server/request/cookies.d.ts","./node_modules/next/dist/server/request/headers.d.ts","./node_modules/next/dist/server/request/draft-mode.d.ts","./node_modules/next/headers.d.ts","./node_modules/next/dist/shared/lib/get-img-props.d.ts","./node_modules/next/dist/client/image-component.d.ts","./node_modules/next/dist/shared/lib/image-external.d.ts","./node_modules/next/image.d.ts","./node_modules/next/dist/client/link.d.ts","./node_modules/next/link.d.ts","./node_modules/next/dist/client/components/redirect.d.ts","./node_modules/next/dist/client/components/not-found.d.ts","./node_modules/next/dist/client/components/forbidden.d.ts","./node_modules/next/dist/client/components/unauthorized.d.ts","./node_modules/next/dist/client/components/unstable-rethrow.server.d.ts","./node_modules/next/dist/client/components/unstable-rethrow.d.ts","./node_modules/next/dist/client/components/navigation.react-server.d.ts","./node_modules/next/dist/client/components/unrecognized-action-error.d.ts","./node_modules/next/dist/client/components/navigation.d.ts","./node_modules/next/navigation.d.ts","./node_modules/next/router.d.ts","./node_modules/next/dist/client/script.d.ts","./node_modules/next/script.d.ts","./node_modules/next/dist/server/web/spec-extension/user-agent.d.ts","./node_modules/next/dist/compiled/@edge-runtime/primitives/url.d.ts","./node_modules/next/dist/server/web/spec-extension/image-response.d.ts","./node_modules/next/dist/compiled/@vercel/og/satori/index.d.ts","./node_modules/next/dist/compiled/@vercel/og/emoji/index.d.ts","./node_modules/next/dist/compiled/@vercel/og/types.d.ts","./node_modules/next/dist/server/after/index.d.ts","./node_modules/next/dist/server/request/root-params.d.ts","./node_modules/next/dist/server/request/connection.d.ts","./node_modules/next/server.d.ts","./node_modules/next/types/global.d.ts","./node_modules/next/types/compiled.d.ts","./node_modules/next/types.d.ts","./node_modules/next/index.d.ts","./node_modules/next/image-types/global.d.ts","./next-env.d.ts","./node_modules/next-intl/dist/types/plugin/types.d.ts","./node_modules/next-intl/dist/types/plugin/createnextintlplugin.d.ts","./node_modules/next-intl/dist/types/plugin/index.d.ts","./node_modules/next-intl/dist/types/plugin.d.ts","./next.config.ts","./node_modules/next-intl/dist/types/routing/types.d.ts","./node_modules/next-intl/dist/types/routing/config.d.ts","./node_modules/next-intl/dist/types/middleware/middleware.d.ts","./node_modules/next-intl/dist/types/middleware/index.d.ts","./node_modules/next-intl/dist/types/middleware.d.ts","./src/i18n/config.ts","./src/lib/api/auth/auth-config.ts","./src/middleware.ts","./src/app/api/auth/check/route.ts","./src/app/api/auth/login/route.ts","./src/app/api/auth/logout/route.ts","./src/app/api/auth/refresh/route.ts","./src/app/api/auth/signup/route.ts","./src/app/api/proxy/[...path]/route.ts","./src/lib/api/php-proxy.ts","./src/app/api/tenants/[tenantid]/item-master-config/route.ts","./src/app/api/tenants/[tenantid]/item-master-config/pages/[pageid]/route.ts","./src/components/items/itemmasterdatamanagement/types.ts","./src/contexts/authcontext.tsx","./src/lib/cache/tenantawarecache.ts","./src/lib/cache/index.ts","./src/types/item-master-api.ts","./src/lib/api/auth-headers.ts","./src/lib/api/error-handler.ts","./src/lib/api/logger.ts","./src/lib/api/item-master.ts","./src/lib/api/transformers.ts","./src/contexts/itemmastercontext.tsx","./node_modules/@radix-ui/react-slot/dist/index.d.mts","./node_modules/clsx/clsx.d.mts","./node_modules/class-variance-authority/dist/types.d.ts","./node_modules/class-variance-authority/dist/index.d.ts","./node_modules/tailwind-merge/dist/types.d.ts","./src/lib/utils.ts","./src/components/ui/button.tsx","./src/components/ui/input.tsx","./node_modules/lucide-react/dist/lucide-react.d.ts","./src/components/items/itemmasterdatamanagement/components/draggablesection.tsx","./src/components/ui/utils.ts","./src/components/ui/badge.tsx","./src/components/items/itemmasterdatamanagement/components/draggablefield.tsx","./src/components/items/itemmasterdatamanagement/components/index.ts","./src/components/ui/card.tsx","./node_modules/sonner/dist/index.d.mts","./src/components/items/itemmasterdatamanagement/tabs/categorytab/index.tsx","./src/components/items/itemmasterdatamanagement/tabs/masterfieldtab/index.tsx","./node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-label/dist/index.d.mts","./src/components/ui/label.tsx","./node_modules/@radix-ui/react-context/dist/index.d.mts","./node_modules/@radix-ui/react-dismissable-layer/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-dismissable-layer/dist/index.d.mts","./node_modules/@radix-ui/react-focus-scope/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-focus-scope/dist/index.d.mts","./node_modules/@radix-ui/react-arrow/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-arrow/dist/index.d.mts","./node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/rect/dist/index.d.mts","./node_modules/@radix-ui/react-popper/dist/index.d.mts","./node_modules/@radix-ui/react-portal/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-portal/dist/index.d.mts","./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-select/dist/index.d.mts","./src/components/ui/select.tsx","./node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-dialog/dist/index.d.mts","./node_modules/@radix-ui/react-visually-hidden/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-visually-hidden/dist/index.d.mts","./src/components/ui/visually-hidden.tsx","./src/components/ui/dialog.tsx","./src/components/items/bommanagementsection.tsx","./src/components/items/itemmasterdatamanagement/tabs/hierarchytab/index.tsx","./node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-roving-focus/dist/index.d.mts","./node_modules/@radix-ui/react-tabs/dist/index.d.mts","./src/components/ui/tabs.tsx","./src/components/items/itemmasterdatamanagement/tabs/sectionstab.tsx","./src/components/items/itemmasterdatamanagement/tabs/index.ts","./src/components/items/itemmasterdatamanagement/utils/pathutils.ts","./src/hooks/useauthguard.ts","./src/hooks/usecurrenttime.ts","./src/hooks/useuserrole.ts","./node_modules/use-intl/dist/types/core/abstractintlmessages.d.ts","./node_modules/use-intl/dist/types/core/translationvalues.d.ts","./node_modules/use-intl/dist/types/core/timezone.d.ts","./node_modules/use-intl/dist/types/core/datetimeformatoptions.d.ts","./node_modules/@formatjs/ecma402-abstract/canonicalizelocalelist.d.ts","./node_modules/@formatjs/ecma402-abstract/canonicalizetimezonename.d.ts","./node_modules/@formatjs/ecma402-abstract/coerceoptionstoobject.d.ts","./node_modules/@formatjs/ecma402-abstract/getnumberoption.d.ts","./node_modules/@formatjs/ecma402-abstract/getoption.d.ts","./node_modules/@formatjs/ecma402-abstract/getoptionsobject.d.ts","./node_modules/@formatjs/ecma402-abstract/getstringorbooleanoption.d.ts","./node_modules/@formatjs/ecma402-abstract/issanctionedsimpleunitidentifier.d.ts","./node_modules/@formatjs/ecma402-abstract/isvalidtimezonename.d.ts","./node_modules/@formatjs/ecma402-abstract/iswellformedcurrencycode.d.ts","./node_modules/@formatjs/ecma402-abstract/iswellformedunitidentifier.d.ts","./node_modules/decimal.js/decimal.d.ts","./node_modules/@formatjs/ecma402-abstract/types/core.d.ts","./node_modules/@formatjs/ecma402-abstract/types/plural-rules.d.ts","./node_modules/@formatjs/ecma402-abstract/types/number.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/applyunsignedroundingmode.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/collapsenumberrange.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/computeexponent.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/computeexponentformagnitude.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/currencydigits.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/format_to_parts.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/formatapproximately.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/formatnumeric.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/formatnumericrange.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/formatnumericrangetoparts.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/formatnumerictoparts.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/formatnumerictostring.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/getunsignedroundingmode.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/initializenumberformat.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/partitionnumberpattern.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/partitionnumberrangepattern.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/setnumberformatdigitoptions.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/setnumberformatunitoptions.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/torawfixed.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/torawprecision.d.ts","./node_modules/@formatjs/ecma402-abstract/partitionpattern.d.ts","./node_modules/@formatjs/ecma402-abstract/supportedlocales.d.ts","./node_modules/@formatjs/ecma402-abstract/utils.d.ts","./node_modules/@formatjs/ecma402-abstract/262.d.ts","./node_modules/@formatjs/ecma402-abstract/data.d.ts","./node_modules/@formatjs/ecma402-abstract/types/date-time.d.ts","./node_modules/@formatjs/ecma402-abstract/types/displaynames.d.ts","./node_modules/@formatjs/ecma402-abstract/types/list.d.ts","./node_modules/@formatjs/ecma402-abstract/types/relative-time.d.ts","./node_modules/@formatjs/ecma402-abstract/constants.d.ts","./node_modules/@formatjs/ecma402-abstract/tointlmathematicalvalue.d.ts","./node_modules/@formatjs/ecma402-abstract/index.d.ts","./node_modules/@formatjs/icu-skeleton-parser/date-time.d.ts","./node_modules/@formatjs/icu-skeleton-parser/number.d.ts","./node_modules/@formatjs/icu-skeleton-parser/index.d.ts","./node_modules/@formatjs/icu-messageformat-parser/types.d.ts","./node_modules/@formatjs/icu-messageformat-parser/error.d.ts","./node_modules/@formatjs/icu-messageformat-parser/parser.d.ts","./node_modules/@formatjs/icu-messageformat-parser/manipulator.d.ts","./node_modules/@formatjs/icu-messageformat-parser/index.d.ts","./node_modules/intl-messageformat/src/formatters.d.ts","./node_modules/intl-messageformat/src/core.d.ts","./node_modules/intl-messageformat/src/error.d.ts","./node_modules/intl-messageformat/index.d.ts","./node_modules/use-intl/dist/types/core/numberformatoptions.d.ts","./node_modules/use-intl/dist/types/core/formats.d.ts","./node_modules/use-intl/dist/types/core/appconfig.d.ts","./node_modules/use-intl/dist/types/core/intlerrorcode.d.ts","./node_modules/use-intl/dist/types/core/intlerror.d.ts","./node_modules/use-intl/dist/types/core/types.d.ts","./node_modules/use-intl/dist/types/core/intlconfig.d.ts","./node_modules/@schummar/icu-type-parser/dist/index.d.ts","./node_modules/use-intl/dist/types/core/icuargs.d.ts","./node_modules/use-intl/dist/types/core/icutags.d.ts","./node_modules/use-intl/dist/types/core/messagekeys.d.ts","./node_modules/use-intl/dist/types/core/formatters.d.ts","./node_modules/use-intl/dist/types/core/createtranslator.d.ts","./node_modules/use-intl/dist/types/core/relativetimeformatoptions.d.ts","./node_modules/use-intl/dist/types/core/createformatter.d.ts","./node_modules/use-intl/dist/types/core/initializeconfig.d.ts","./node_modules/use-intl/dist/types/core/haslocale.d.ts","./node_modules/use-intl/dist/types/core/index.d.ts","./node_modules/use-intl/dist/types/core.d.ts","./node_modules/next-intl/dist/types/server/react-server/getrequestconfig.d.ts","./node_modules/next-intl/dist/types/server/react-server/getformatter.d.ts","./node_modules/use-intl/dist/types/react/intlprovider.d.ts","./node_modules/use-intl/dist/types/react/usetranslations.d.ts","./node_modules/use-intl/dist/types/react/uselocale.d.ts","./node_modules/use-intl/dist/types/react/usenow.d.ts","./node_modules/use-intl/dist/types/react/usetimezone.d.ts","./node_modules/use-intl/dist/types/react/usemessages.d.ts","./node_modules/use-intl/dist/types/react/useformatter.d.ts","./node_modules/use-intl/dist/types/react/index.d.ts","./node_modules/use-intl/dist/types/react.d.ts","./node_modules/use-intl/dist/types/index.d.ts","./node_modules/next-intl/dist/types/server/react-server/getnow.d.ts","./node_modules/next-intl/dist/types/server/react-server/gettimezone.d.ts","./node_modules/next-intl/dist/types/server/react-server/gettranslations.d.ts","./node_modules/next-intl/dist/types/server/react-server/getconfig.d.ts","./node_modules/next-intl/dist/types/server/react-server/getmessages.d.ts","./node_modules/next-intl/dist/types/server/react-server/getlocale.d.ts","./node_modules/next-intl/dist/types/server/react-server/requestlocalecache.d.ts","./node_modules/next-intl/dist/types/server/react-server/index.d.ts","./node_modules/next-intl/dist/types/server.react-server.d.ts","./src/i18n/request.ts","./src/lib/api/auth/types.ts","./src/lib/api/client.ts","./src/types/item.ts","./src/lib/api/items.ts","./src/types/master-data.ts","./src/lib/api/master-data.ts","./src/lib/auth/token-refresh.ts","./node_modules/zustand/esm/vanilla.d.mts","./node_modules/zustand/esm/react.d.mts","./node_modules/zustand/esm/index.d.mts","./node_modules/zustand/esm/middleware/redux.d.mts","./node_modules/zustand/esm/middleware/devtools.d.mts","./node_modules/zustand/esm/middleware/subscribewithselector.d.mts","./node_modules/zustand/esm/middleware/combine.d.mts","./node_modules/zustand/esm/middleware/persist.d.mts","./node_modules/zustand/esm/middleware.d.mts","./src/store/menustore.ts","./src/lib/utils/menutransform.ts","./node_modules/zod/v4/core/standard-schema.d.cts","./node_modules/zod/v4/core/util.d.cts","./node_modules/zod/v4/core/versions.d.cts","./node_modules/zod/v4/core/schemas.d.cts","./node_modules/zod/v4/core/checks.d.cts","./node_modules/zod/v4/core/errors.d.cts","./node_modules/zod/v4/core/core.d.cts","./node_modules/zod/v4/core/parse.d.cts","./node_modules/zod/v4/core/regexes.d.cts","./node_modules/zod/v4/locales/ar.d.cts","./node_modules/zod/v4/locales/az.d.cts","./node_modules/zod/v4/locales/be.d.cts","./node_modules/zod/v4/locales/bg.d.cts","./node_modules/zod/v4/locales/ca.d.cts","./node_modules/zod/v4/locales/cs.d.cts","./node_modules/zod/v4/locales/da.d.cts","./node_modules/zod/v4/locales/de.d.cts","./node_modules/zod/v4/locales/en.d.cts","./node_modules/zod/v4/locales/eo.d.cts","./node_modules/zod/v4/locales/es.d.cts","./node_modules/zod/v4/locales/fa.d.cts","./node_modules/zod/v4/locales/fi.d.cts","./node_modules/zod/v4/locales/fr.d.cts","./node_modules/zod/v4/locales/fr-ca.d.cts","./node_modules/zod/v4/locales/he.d.cts","./node_modules/zod/v4/locales/hu.d.cts","./node_modules/zod/v4/locales/id.d.cts","./node_modules/zod/v4/locales/is.d.cts","./node_modules/zod/v4/locales/it.d.cts","./node_modules/zod/v4/locales/ja.d.cts","./node_modules/zod/v4/locales/ka.d.cts","./node_modules/zod/v4/locales/kh.d.cts","./node_modules/zod/v4/locales/km.d.cts","./node_modules/zod/v4/locales/ko.d.cts","./node_modules/zod/v4/locales/lt.d.cts","./node_modules/zod/v4/locales/mk.d.cts","./node_modules/zod/v4/locales/ms.d.cts","./node_modules/zod/v4/locales/nl.d.cts","./node_modules/zod/v4/locales/no.d.cts","./node_modules/zod/v4/locales/ota.d.cts","./node_modules/zod/v4/locales/ps.d.cts","./node_modules/zod/v4/locales/pl.d.cts","./node_modules/zod/v4/locales/pt.d.cts","./node_modules/zod/v4/locales/ru.d.cts","./node_modules/zod/v4/locales/sl.d.cts","./node_modules/zod/v4/locales/sv.d.cts","./node_modules/zod/v4/locales/ta.d.cts","./node_modules/zod/v4/locales/th.d.cts","./node_modules/zod/v4/locales/tr.d.cts","./node_modules/zod/v4/locales/ua.d.cts","./node_modules/zod/v4/locales/uk.d.cts","./node_modules/zod/v4/locales/ur.d.cts","./node_modules/zod/v4/locales/vi.d.cts","./node_modules/zod/v4/locales/zh-cn.d.cts","./node_modules/zod/v4/locales/zh-tw.d.cts","./node_modules/zod/v4/locales/yo.d.cts","./node_modules/zod/v4/locales/index.d.cts","./node_modules/zod/v4/core/registries.d.cts","./node_modules/zod/v4/core/doc.d.cts","./node_modules/zod/v4/core/api.d.cts","./node_modules/zod/v4/core/json-schema.d.cts","./node_modules/zod/v4/core/to-json-schema.d.cts","./node_modules/zod/v4/core/index.d.cts","./node_modules/zod/v4/classic/errors.d.cts","./node_modules/zod/v4/classic/parse.d.cts","./node_modules/zod/v4/classic/schemas.d.cts","./node_modules/zod/v4/classic/checks.d.cts","./node_modules/zod/v4/classic/compat.d.cts","./node_modules/zod/v4/classic/iso.d.cts","./node_modules/zod/v4/classic/coerce.d.cts","./node_modules/zod/v4/classic/external.d.cts","./node_modules/zod/index.d.cts","./src/lib/utils/validation.ts","./src/lib/validations/auth.ts","./src/store/demostore.ts","./src/store/themestore.ts","./src/stores/itemstore.ts","./node_modules/zustand/esm/vanilla/shallow.d.mts","./node_modules/zustand/esm/react/shallow.d.mts","./node_modules/zustand/esm/shallow.d.mts","./src/stores/masterdatastore.ts","./src/app/[locale]/error.tsx","./node_modules/next-intl/dist/types/shared/nextintlclientprovider.d.ts","./node_modules/next-intl/dist/types/react-client/index.d.ts","./node_modules/next-intl/dist/types/index.react-client.d.ts","./src/contexts/themecontext.tsx","./src/app/[locale]/layout.tsx","./src/app/[locale]/not-found.tsx","./src/app/[locale]/page.tsx","./src/app/[locale]/(protected)/error.tsx","./src/components/ui/sheet.tsx","./node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-menu/dist/index.d.mts","./node_modules/@radix-ui/react-dropdown-menu/dist/index.d.mts","./src/components/ui/dropdown-menu.tsx","./src/components/layout/sidebar.tsx","./src/layouts/dashboardlayout.tsx","./src/contexts/rootprovider.tsx","./src/app/[locale]/(protected)/layout.tsx","./src/app/[locale]/(protected)/loading.tsx","./src/app/[locale]/(protected)/not-found.tsx","./src/components/common/emptypage.tsx","./src/app/[locale]/(protected)/[...slug]/page.tsx","./src/components/ui/chart-wrapper.tsx","./node_modules/@date-fns/tz/constants/index.d.ts","./node_modules/@date-fns/tz/date/index.d.ts","./node_modules/@date-fns/tz/date/mini.d.ts","./node_modules/@date-fns/tz/tz/index.d.ts","./node_modules/@date-fns/tz/tzoffset/index.d.ts","./node_modules/@date-fns/tz/tzscan/index.d.ts","./node_modules/@date-fns/tz/tzname/index.d.ts","./node_modules/@date-fns/tz/index.d.ts","./node_modules/date-fns/constants.d.ts","./node_modules/date-fns/locale/types.d.ts","./node_modules/date-fns/fp/types.d.ts","./node_modules/date-fns/types.d.ts","./node_modules/date-fns/add.d.ts","./node_modules/date-fns/addbusinessdays.d.ts","./node_modules/date-fns/adddays.d.ts","./node_modules/date-fns/addhours.d.ts","./node_modules/date-fns/addisoweekyears.d.ts","./node_modules/date-fns/addmilliseconds.d.ts","./node_modules/date-fns/addminutes.d.ts","./node_modules/date-fns/addmonths.d.ts","./node_modules/date-fns/addquarters.d.ts","./node_modules/date-fns/addseconds.d.ts","./node_modules/date-fns/addweeks.d.ts","./node_modules/date-fns/addyears.d.ts","./node_modules/date-fns/areintervalsoverlapping.d.ts","./node_modules/date-fns/clamp.d.ts","./node_modules/date-fns/closestindexto.d.ts","./node_modules/date-fns/closestto.d.ts","./node_modules/date-fns/compareasc.d.ts","./node_modules/date-fns/comparedesc.d.ts","./node_modules/date-fns/constructfrom.d.ts","./node_modules/date-fns/constructnow.d.ts","./node_modules/date-fns/daystoweeks.d.ts","./node_modules/date-fns/differenceinbusinessdays.d.ts","./node_modules/date-fns/differenceincalendardays.d.ts","./node_modules/date-fns/differenceincalendarisoweekyears.d.ts","./node_modules/date-fns/differenceincalendarisoweeks.d.ts","./node_modules/date-fns/differenceincalendarmonths.d.ts","./node_modules/date-fns/differenceincalendarquarters.d.ts","./node_modules/date-fns/differenceincalendarweeks.d.ts","./node_modules/date-fns/differenceincalendaryears.d.ts","./node_modules/date-fns/differenceindays.d.ts","./node_modules/date-fns/differenceinhours.d.ts","./node_modules/date-fns/differenceinisoweekyears.d.ts","./node_modules/date-fns/differenceinmilliseconds.d.ts","./node_modules/date-fns/differenceinminutes.d.ts","./node_modules/date-fns/differenceinmonths.d.ts","./node_modules/date-fns/differenceinquarters.d.ts","./node_modules/date-fns/differenceinseconds.d.ts","./node_modules/date-fns/differenceinweeks.d.ts","./node_modules/date-fns/differenceinyears.d.ts","./node_modules/date-fns/eachdayofinterval.d.ts","./node_modules/date-fns/eachhourofinterval.d.ts","./node_modules/date-fns/eachminuteofinterval.d.ts","./node_modules/date-fns/eachmonthofinterval.d.ts","./node_modules/date-fns/eachquarterofinterval.d.ts","./node_modules/date-fns/eachweekofinterval.d.ts","./node_modules/date-fns/eachweekendofinterval.d.ts","./node_modules/date-fns/eachweekendofmonth.d.ts","./node_modules/date-fns/eachweekendofyear.d.ts","./node_modules/date-fns/eachyearofinterval.d.ts","./node_modules/date-fns/endofday.d.ts","./node_modules/date-fns/endofdecade.d.ts","./node_modules/date-fns/endofhour.d.ts","./node_modules/date-fns/endofisoweek.d.ts","./node_modules/date-fns/endofisoweekyear.d.ts","./node_modules/date-fns/endofminute.d.ts","./node_modules/date-fns/endofmonth.d.ts","./node_modules/date-fns/endofquarter.d.ts","./node_modules/date-fns/endofsecond.d.ts","./node_modules/date-fns/endoftoday.d.ts","./node_modules/date-fns/endoftomorrow.d.ts","./node_modules/date-fns/endofweek.d.ts","./node_modules/date-fns/endofyear.d.ts","./node_modules/date-fns/endofyesterday.d.ts","./node_modules/date-fns/_lib/format/formatters.d.ts","./node_modules/date-fns/_lib/format/longformatters.d.ts","./node_modules/date-fns/format.d.ts","./node_modules/date-fns/formatdistance.d.ts","./node_modules/date-fns/formatdistancestrict.d.ts","./node_modules/date-fns/formatdistancetonow.d.ts","./node_modules/date-fns/formatdistancetonowstrict.d.ts","./node_modules/date-fns/formatduration.d.ts","./node_modules/date-fns/formatiso.d.ts","./node_modules/date-fns/formatiso9075.d.ts","./node_modules/date-fns/formatisoduration.d.ts","./node_modules/date-fns/formatrfc3339.d.ts","./node_modules/date-fns/formatrfc7231.d.ts","./node_modules/date-fns/formatrelative.d.ts","./node_modules/date-fns/fromunixtime.d.ts","./node_modules/date-fns/getdate.d.ts","./node_modules/date-fns/getday.d.ts","./node_modules/date-fns/getdayofyear.d.ts","./node_modules/date-fns/getdaysinmonth.d.ts","./node_modules/date-fns/getdaysinyear.d.ts","./node_modules/date-fns/getdecade.d.ts","./node_modules/date-fns/_lib/defaultoptions.d.ts","./node_modules/date-fns/getdefaultoptions.d.ts","./node_modules/date-fns/gethours.d.ts","./node_modules/date-fns/getisoday.d.ts","./node_modules/date-fns/getisoweek.d.ts","./node_modules/date-fns/getisoweekyear.d.ts","./node_modules/date-fns/getisoweeksinyear.d.ts","./node_modules/date-fns/getmilliseconds.d.ts","./node_modules/date-fns/getminutes.d.ts","./node_modules/date-fns/getmonth.d.ts","./node_modules/date-fns/getoverlappingdaysinintervals.d.ts","./node_modules/date-fns/getquarter.d.ts","./node_modules/date-fns/getseconds.d.ts","./node_modules/date-fns/gettime.d.ts","./node_modules/date-fns/getunixtime.d.ts","./node_modules/date-fns/getweek.d.ts","./node_modules/date-fns/getweekofmonth.d.ts","./node_modules/date-fns/getweekyear.d.ts","./node_modules/date-fns/getweeksinmonth.d.ts","./node_modules/date-fns/getyear.d.ts","./node_modules/date-fns/hourstomilliseconds.d.ts","./node_modules/date-fns/hourstominutes.d.ts","./node_modules/date-fns/hourstoseconds.d.ts","./node_modules/date-fns/interval.d.ts","./node_modules/date-fns/intervaltoduration.d.ts","./node_modules/date-fns/intlformat.d.ts","./node_modules/date-fns/intlformatdistance.d.ts","./node_modules/date-fns/isafter.d.ts","./node_modules/date-fns/isbefore.d.ts","./node_modules/date-fns/isdate.d.ts","./node_modules/date-fns/isequal.d.ts","./node_modules/date-fns/isexists.d.ts","./node_modules/date-fns/isfirstdayofmonth.d.ts","./node_modules/date-fns/isfriday.d.ts","./node_modules/date-fns/isfuture.d.ts","./node_modules/date-fns/islastdayofmonth.d.ts","./node_modules/date-fns/isleapyear.d.ts","./node_modules/date-fns/ismatch.d.ts","./node_modules/date-fns/ismonday.d.ts","./node_modules/date-fns/ispast.d.ts","./node_modules/date-fns/issameday.d.ts","./node_modules/date-fns/issamehour.d.ts","./node_modules/date-fns/issameisoweek.d.ts","./node_modules/date-fns/issameisoweekyear.d.ts","./node_modules/date-fns/issameminute.d.ts","./node_modules/date-fns/issamemonth.d.ts","./node_modules/date-fns/issamequarter.d.ts","./node_modules/date-fns/issamesecond.d.ts","./node_modules/date-fns/issameweek.d.ts","./node_modules/date-fns/issameyear.d.ts","./node_modules/date-fns/issaturday.d.ts","./node_modules/date-fns/issunday.d.ts","./node_modules/date-fns/isthishour.d.ts","./node_modules/date-fns/isthisisoweek.d.ts","./node_modules/date-fns/isthisminute.d.ts","./node_modules/date-fns/isthismonth.d.ts","./node_modules/date-fns/isthisquarter.d.ts","./node_modules/date-fns/isthissecond.d.ts","./node_modules/date-fns/isthisweek.d.ts","./node_modules/date-fns/isthisyear.d.ts","./node_modules/date-fns/isthursday.d.ts","./node_modules/date-fns/istoday.d.ts","./node_modules/date-fns/istomorrow.d.ts","./node_modules/date-fns/istuesday.d.ts","./node_modules/date-fns/isvalid.d.ts","./node_modules/date-fns/iswednesday.d.ts","./node_modules/date-fns/isweekend.d.ts","./node_modules/date-fns/iswithininterval.d.ts","./node_modules/date-fns/isyesterday.d.ts","./node_modules/date-fns/lastdayofdecade.d.ts","./node_modules/date-fns/lastdayofisoweek.d.ts","./node_modules/date-fns/lastdayofisoweekyear.d.ts","./node_modules/date-fns/lastdayofmonth.d.ts","./node_modules/date-fns/lastdayofquarter.d.ts","./node_modules/date-fns/lastdayofweek.d.ts","./node_modules/date-fns/lastdayofyear.d.ts","./node_modules/date-fns/_lib/format/lightformatters.d.ts","./node_modules/date-fns/lightformat.d.ts","./node_modules/date-fns/max.d.ts","./node_modules/date-fns/milliseconds.d.ts","./node_modules/date-fns/millisecondstohours.d.ts","./node_modules/date-fns/millisecondstominutes.d.ts","./node_modules/date-fns/millisecondstoseconds.d.ts","./node_modules/date-fns/min.d.ts","./node_modules/date-fns/minutestohours.d.ts","./node_modules/date-fns/minutestomilliseconds.d.ts","./node_modules/date-fns/minutestoseconds.d.ts","./node_modules/date-fns/monthstoquarters.d.ts","./node_modules/date-fns/monthstoyears.d.ts","./node_modules/date-fns/nextday.d.ts","./node_modules/date-fns/nextfriday.d.ts","./node_modules/date-fns/nextmonday.d.ts","./node_modules/date-fns/nextsaturday.d.ts","./node_modules/date-fns/nextsunday.d.ts","./node_modules/date-fns/nextthursday.d.ts","./node_modules/date-fns/nexttuesday.d.ts","./node_modules/date-fns/nextwednesday.d.ts","./node_modules/date-fns/parse/_lib/types.d.ts","./node_modules/date-fns/parse/_lib/setter.d.ts","./node_modules/date-fns/parse/_lib/parser.d.ts","./node_modules/date-fns/parse/_lib/parsers.d.ts","./node_modules/date-fns/parse.d.ts","./node_modules/date-fns/parseiso.d.ts","./node_modules/date-fns/parsejson.d.ts","./node_modules/date-fns/previousday.d.ts","./node_modules/date-fns/previousfriday.d.ts","./node_modules/date-fns/previousmonday.d.ts","./node_modules/date-fns/previoussaturday.d.ts","./node_modules/date-fns/previoussunday.d.ts","./node_modules/date-fns/previousthursday.d.ts","./node_modules/date-fns/previoustuesday.d.ts","./node_modules/date-fns/previouswednesday.d.ts","./node_modules/date-fns/quarterstomonths.d.ts","./node_modules/date-fns/quarterstoyears.d.ts","./node_modules/date-fns/roundtonearesthours.d.ts","./node_modules/date-fns/roundtonearestminutes.d.ts","./node_modules/date-fns/secondstohours.d.ts","./node_modules/date-fns/secondstomilliseconds.d.ts","./node_modules/date-fns/secondstominutes.d.ts","./node_modules/date-fns/set.d.ts","./node_modules/date-fns/setdate.d.ts","./node_modules/date-fns/setday.d.ts","./node_modules/date-fns/setdayofyear.d.ts","./node_modules/date-fns/setdefaultoptions.d.ts","./node_modules/date-fns/sethours.d.ts","./node_modules/date-fns/setisoday.d.ts","./node_modules/date-fns/setisoweek.d.ts","./node_modules/date-fns/setisoweekyear.d.ts","./node_modules/date-fns/setmilliseconds.d.ts","./node_modules/date-fns/setminutes.d.ts","./node_modules/date-fns/setmonth.d.ts","./node_modules/date-fns/setquarter.d.ts","./node_modules/date-fns/setseconds.d.ts","./node_modules/date-fns/setweek.d.ts","./node_modules/date-fns/setweekyear.d.ts","./node_modules/date-fns/setyear.d.ts","./node_modules/date-fns/startofday.d.ts","./node_modules/date-fns/startofdecade.d.ts","./node_modules/date-fns/startofhour.d.ts","./node_modules/date-fns/startofisoweek.d.ts","./node_modules/date-fns/startofisoweekyear.d.ts","./node_modules/date-fns/startofminute.d.ts","./node_modules/date-fns/startofmonth.d.ts","./node_modules/date-fns/startofquarter.d.ts","./node_modules/date-fns/startofsecond.d.ts","./node_modules/date-fns/startoftoday.d.ts","./node_modules/date-fns/startoftomorrow.d.ts","./node_modules/date-fns/startofweek.d.ts","./node_modules/date-fns/startofweekyear.d.ts","./node_modules/date-fns/startofyear.d.ts","./node_modules/date-fns/startofyesterday.d.ts","./node_modules/date-fns/sub.d.ts","./node_modules/date-fns/subbusinessdays.d.ts","./node_modules/date-fns/subdays.d.ts","./node_modules/date-fns/subhours.d.ts","./node_modules/date-fns/subisoweekyears.d.ts","./node_modules/date-fns/submilliseconds.d.ts","./node_modules/date-fns/subminutes.d.ts","./node_modules/date-fns/submonths.d.ts","./node_modules/date-fns/subquarters.d.ts","./node_modules/date-fns/subseconds.d.ts","./node_modules/date-fns/subweeks.d.ts","./node_modules/date-fns/subyears.d.ts","./node_modules/date-fns/todate.d.ts","./node_modules/date-fns/transpose.d.ts","./node_modules/date-fns/weekstodays.d.ts","./node_modules/date-fns/yearstodays.d.ts","./node_modules/date-fns/yearstomonths.d.ts","./node_modules/date-fns/yearstoquarters.d.ts","./node_modules/date-fns/index.d.ts","./node_modules/date-fns/locale/af.d.ts","./node_modules/date-fns/locale/ar.d.ts","./node_modules/date-fns/locale/ar-dz.d.ts","./node_modules/date-fns/locale/ar-eg.d.ts","./node_modules/date-fns/locale/ar-ma.d.ts","./node_modules/date-fns/locale/ar-sa.d.ts","./node_modules/date-fns/locale/ar-tn.d.ts","./node_modules/date-fns/locale/az.d.ts","./node_modules/date-fns/locale/be.d.ts","./node_modules/date-fns/locale/be-tarask.d.ts","./node_modules/date-fns/locale/bg.d.ts","./node_modules/date-fns/locale/bn.d.ts","./node_modules/date-fns/locale/bs.d.ts","./node_modules/date-fns/locale/ca.d.ts","./node_modules/date-fns/locale/ckb.d.ts","./node_modules/date-fns/locale/cs.d.ts","./node_modules/date-fns/locale/cy.d.ts","./node_modules/date-fns/locale/da.d.ts","./node_modules/date-fns/locale/de.d.ts","./node_modules/date-fns/locale/de-at.d.ts","./node_modules/date-fns/locale/el.d.ts","./node_modules/date-fns/locale/en-au.d.ts","./node_modules/date-fns/locale/en-ca.d.ts","./node_modules/date-fns/locale/en-gb.d.ts","./node_modules/date-fns/locale/en-ie.d.ts","./node_modules/date-fns/locale/en-in.d.ts","./node_modules/date-fns/locale/en-nz.d.ts","./node_modules/date-fns/locale/en-us.d.ts","./node_modules/date-fns/locale/en-za.d.ts","./node_modules/date-fns/locale/eo.d.ts","./node_modules/date-fns/locale/es.d.ts","./node_modules/date-fns/locale/et.d.ts","./node_modules/date-fns/locale/eu.d.ts","./node_modules/date-fns/locale/fa-ir.d.ts","./node_modules/date-fns/locale/fi.d.ts","./node_modules/date-fns/locale/fr.d.ts","./node_modules/date-fns/locale/fr-ca.d.ts","./node_modules/date-fns/locale/fr-ch.d.ts","./node_modules/date-fns/locale/fy.d.ts","./node_modules/date-fns/locale/gd.d.ts","./node_modules/date-fns/locale/gl.d.ts","./node_modules/date-fns/locale/gu.d.ts","./node_modules/date-fns/locale/he.d.ts","./node_modules/date-fns/locale/hi.d.ts","./node_modules/date-fns/locale/hr.d.ts","./node_modules/date-fns/locale/ht.d.ts","./node_modules/date-fns/locale/hu.d.ts","./node_modules/date-fns/locale/hy.d.ts","./node_modules/date-fns/locale/id.d.ts","./node_modules/date-fns/locale/is.d.ts","./node_modules/date-fns/locale/it.d.ts","./node_modules/date-fns/locale/it-ch.d.ts","./node_modules/date-fns/locale/ja.d.ts","./node_modules/date-fns/locale/ja-hira.d.ts","./node_modules/date-fns/locale/ka.d.ts","./node_modules/date-fns/locale/kk.d.ts","./node_modules/date-fns/locale/km.d.ts","./node_modules/date-fns/locale/kn.d.ts","./node_modules/date-fns/locale/ko.d.ts","./node_modules/date-fns/locale/lb.d.ts","./node_modules/date-fns/locale/lt.d.ts","./node_modules/date-fns/locale/lv.d.ts","./node_modules/date-fns/locale/mk.d.ts","./node_modules/date-fns/locale/mn.d.ts","./node_modules/date-fns/locale/ms.d.ts","./node_modules/date-fns/locale/mt.d.ts","./node_modules/date-fns/locale/nb.d.ts","./node_modules/date-fns/locale/nl.d.ts","./node_modules/date-fns/locale/nl-be.d.ts","./node_modules/date-fns/locale/nn.d.ts","./node_modules/date-fns/locale/oc.d.ts","./node_modules/date-fns/locale/pl.d.ts","./node_modules/date-fns/locale/pt.d.ts","./node_modules/date-fns/locale/pt-br.d.ts","./node_modules/date-fns/locale/ro.d.ts","./node_modules/date-fns/locale/ru.d.ts","./node_modules/date-fns/locale/se.d.ts","./node_modules/date-fns/locale/sk.d.ts","./node_modules/date-fns/locale/sl.d.ts","./node_modules/date-fns/locale/sq.d.ts","./node_modules/date-fns/locale/sr.d.ts","./node_modules/date-fns/locale/sr-latn.d.ts","./node_modules/date-fns/locale/sv.d.ts","./node_modules/date-fns/locale/ta.d.ts","./node_modules/date-fns/locale/te.d.ts","./node_modules/date-fns/locale/th.d.ts","./node_modules/date-fns/locale/tr.d.ts","./node_modules/date-fns/locale/ug.d.ts","./node_modules/date-fns/locale/uk.d.ts","./node_modules/date-fns/locale/uz.d.ts","./node_modules/date-fns/locale/uz-cyrl.d.ts","./node_modules/date-fns/locale/vi.d.ts","./node_modules/date-fns/locale/zh-cn.d.ts","./node_modules/date-fns/locale/zh-hk.d.ts","./node_modules/date-fns/locale/zh-tw.d.ts","./node_modules/date-fns/locale.d.ts","./node_modules/react-day-picker/dist/esm/components/button.d.ts","./node_modules/react-day-picker/dist/esm/components/captionlabel.d.ts","./node_modules/react-day-picker/dist/esm/components/chevron.d.ts","./node_modules/react-day-picker/dist/esm/components/monthcaption.d.ts","./node_modules/react-day-picker/dist/esm/components/week.d.ts","./node_modules/react-day-picker/dist/esm/labels/labeldaybutton.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelgrid.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelgridcell.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelmonthdropdown.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelnav.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelnext.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelprevious.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelweekday.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelweeknumber.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelweeknumberheader.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelyeardropdown.d.ts","./node_modules/react-day-picker/dist/esm/labels/index.d.ts","./node_modules/react-day-picker/dist/esm/ui.d.ts","./node_modules/react-day-picker/dist/esm/classes/calendarweek.d.ts","./node_modules/react-day-picker/dist/esm/classes/calendarmonth.d.ts","./node_modules/react-day-picker/dist/esm/types/props.d.ts","./node_modules/react-day-picker/dist/esm/types/selection.d.ts","./node_modules/react-day-picker/dist/esm/usedaypicker.d.ts","./node_modules/react-day-picker/dist/esm/types/deprecated.d.ts","./node_modules/react-day-picker/dist/esm/types/index.d.ts","./node_modules/react-day-picker/dist/esm/components/day.d.ts","./node_modules/react-day-picker/dist/esm/components/daybutton.d.ts","./node_modules/react-day-picker/dist/esm/components/dropdown.d.ts","./node_modules/react-day-picker/dist/esm/components/dropdownnav.d.ts","./node_modules/react-day-picker/dist/esm/components/footer.d.ts","./node_modules/react-day-picker/dist/esm/components/month.d.ts","./node_modules/react-day-picker/dist/esm/components/monthgrid.d.ts","./node_modules/react-day-picker/dist/esm/components/months.d.ts","./node_modules/react-day-picker/dist/esm/components/monthsdropdown.d.ts","./node_modules/react-day-picker/dist/esm/components/nav.d.ts","./node_modules/react-day-picker/dist/esm/components/nextmonthbutton.d.ts","./node_modules/react-day-picker/dist/esm/components/option.d.ts","./node_modules/react-day-picker/dist/esm/components/previousmonthbutton.d.ts","./node_modules/react-day-picker/dist/esm/components/root.d.ts","./node_modules/react-day-picker/dist/esm/components/select.d.ts","./node_modules/react-day-picker/dist/esm/components/weekday.d.ts","./node_modules/react-day-picker/dist/esm/components/weekdays.d.ts","./node_modules/react-day-picker/dist/esm/components/weeknumber.d.ts","./node_modules/react-day-picker/dist/esm/components/weeknumberheader.d.ts","./node_modules/react-day-picker/dist/esm/components/weeks.d.ts","./node_modules/react-day-picker/dist/esm/components/yearsdropdown.d.ts","./node_modules/react-day-picker/dist/esm/components/custom-components.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatcaption.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatday.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatmonthdropdown.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatweekdayname.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatweeknumber.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatweeknumberheader.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatyeardropdown.d.ts","./node_modules/react-day-picker/dist/esm/formatters/index.d.ts","./node_modules/react-day-picker/dist/esm/types/shared.d.ts","./node_modules/react-day-picker/dist/esm/classes/datelib.d.ts","./node_modules/react-day-picker/dist/esm/classes/calendarday.d.ts","./node_modules/react-day-picker/dist/esm/classes/index.d.ts","./node_modules/react-day-picker/dist/esm/daypicker.d.ts","./node_modules/react-day-picker/dist/esm/helpers/getdefaultclassnames.d.ts","./node_modules/react-day-picker/dist/esm/helpers/index.d.ts","./node_modules/react-day-picker/dist/esm/utils/addtorange.d.ts","./node_modules/react-day-picker/dist/esm/utils/datematchmodifiers.d.ts","./node_modules/react-day-picker/dist/esm/utils/rangecontainsdayofweek.d.ts","./node_modules/react-day-picker/dist/esm/utils/rangecontainsmodifiers.d.ts","./node_modules/react-day-picker/dist/esm/utils/rangeincludesdate.d.ts","./node_modules/react-day-picker/dist/esm/utils/rangeoverlaps.d.ts","./node_modules/react-day-picker/dist/esm/utils/typeguards.d.ts","./node_modules/react-day-picker/dist/esm/utils/index.d.ts","./node_modules/react-day-picker/dist/esm/index.d.ts","./src/components/ui/calendar.tsx","./node_modules/@radix-ui/react-checkbox/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-checkbox/dist/index.d.mts","./src/components/ui/checkbox.tsx","./node_modules/recharts/types/container/surface.d.ts","./node_modules/recharts/types/container/layer.d.ts","./node_modules/recharts/types/shape/dot.d.ts","./node_modules/@types/d3-path/index.d.ts","./node_modules/@types/d3-shape/index.d.ts","./node_modules/victory-vendor/d3-shape.d.ts","./node_modules/recharts/types/synchronisation/types.d.ts","./node_modules/recharts/types/chart/types.d.ts","./node_modules/recharts/types/component/defaulttooltipcontent.d.ts","./node_modules/recharts/types/component/text.d.ts","./node_modules/recharts/types/zindex/zindexlayer.d.ts","./node_modules/recharts/types/component/label.d.ts","./node_modules/recharts/types/cartesian/cartesianaxis.d.ts","./node_modules/redux/dist/redux.d.ts","./node_modules/immer/dist/immer.d.ts","./node_modules/reselect/dist/reselect.d.ts","./node_modules/redux-thunk/dist/redux-thunk.d.ts","./node_modules/@reduxjs/toolkit/dist/uncheckedindexed.ts","./node_modules/@reduxjs/toolkit/dist/index.d.mts","./node_modules/recharts/types/state/brushslice.d.ts","./node_modules/recharts/types/context/brushupdatecontext.d.ts","./node_modules/recharts/types/state/chartdataslice.d.ts","./node_modules/recharts/types/animation/easing.d.ts","./node_modules/recharts/types/shape/rectangle.d.ts","./node_modules/recharts/types/component/labellist.d.ts","./node_modules/recharts/types/util/barutils.d.ts","./node_modules/recharts/types/state/types/linesettings.d.ts","./node_modules/recharts/types/state/types/scattersettings.d.ts","./node_modules/recharts/types/shape/curve.d.ts","./node_modules/recharts/types/util/stacks/stacktypes.d.ts","./node_modules/recharts/types/state/selectors/areaselectors.d.ts","./node_modules/recharts/types/cartesian/area.d.ts","./node_modules/recharts/types/state/types/areasettings.d.ts","./node_modules/recharts/types/state/types/radialbarsettings.d.ts","./node_modules/recharts/types/util/svgpropertiesnoevents.d.ts","./node_modules/recharts/types/util/useuniqueid.d.ts","./node_modules/recharts/types/state/types/piesettings.d.ts","./node_modules/recharts/types/state/types/radarsettings.d.ts","./node_modules/recharts/types/state/graphicalitemsslice.d.ts","./node_modules/recharts/types/state/types/stackedgraphicalitem.d.ts","./node_modules/recharts/types/state/types/barsettings.d.ts","./node_modules/recharts/types/cartesian/bar.d.ts","./node_modules/recharts/types/cartesian/line.d.ts","./node_modules/recharts/types/shape/symbols.d.ts","./node_modules/recharts/types/cartesian/scatter.d.ts","./node_modules/recharts/types/cartesian/errorbar.d.ts","./node_modules/recharts/types/state/errorbarslice.d.ts","./node_modules/recharts/types/state/legendslice.d.ts","./node_modules/recharts/types/state/optionsslice.d.ts","./node_modules/recharts/types/state/polaraxisslice.d.ts","./node_modules/recharts/types/state/polaroptionsslice.d.ts","./node_modules/recharts/types/util/ifoverflow.d.ts","./node_modules/recharts/types/util/resolvedefaultprops.d.ts","./node_modules/recharts/types/cartesian/referenceline.d.ts","./node_modules/recharts/types/state/referenceelementsslice.d.ts","./node_modules/recharts/types/state/rootpropsslice.d.ts","./node_modules/recharts/types/state/store.d.ts","./node_modules/recharts/types/cartesian/getticks.d.ts","./node_modules/recharts/types/cartesian/cartesiangrid.d.ts","./node_modules/recharts/types/state/selectors/combiners/combinedisplayedstackeddata.d.ts","./node_modules/recharts/types/state/selectors/selecttooltipaxistype.d.ts","./node_modules/recharts/types/state/selectors/axisselectors.d.ts","./node_modules/recharts/types/state/cartesianaxisslice.d.ts","./node_modules/recharts/types/state/tooltipslice.d.ts","./node_modules/recharts/types/util/chartutils.d.ts","./node_modules/recharts/types/component/dots.d.ts","./node_modules/recharts/types/util/types.d.ts","./node_modules/recharts/types/component/defaultlegendcontent.d.ts","./node_modules/recharts/types/util/payload/getuniqpayload.d.ts","./node_modules/recharts/types/util/useelementoffset.d.ts","./node_modules/recharts/types/component/legend.d.ts","./node_modules/recharts/types/component/cursor.d.ts","./node_modules/recharts/types/component/tooltip.d.ts","./node_modules/recharts/types/component/responsivecontainer.d.ts","./node_modules/recharts/types/component/cell.d.ts","./node_modules/recharts/types/component/customized.d.ts","./node_modules/recharts/types/shape/sector.d.ts","./node_modules/recharts/types/shape/polygon.d.ts","./node_modules/recharts/types/shape/cross.d.ts","./node_modules/recharts/types/polar/polargrid.d.ts","./node_modules/recharts/types/polar/defaultpolarradiusaxisprops.d.ts","./node_modules/recharts/types/polar/polarradiusaxis.d.ts","./node_modules/recharts/types/polar/defaultpolarangleaxisprops.d.ts","./node_modules/recharts/types/polar/polarangleaxis.d.ts","./node_modules/recharts/types/polar/pie.d.ts","./node_modules/recharts/types/polar/radar.d.ts","./node_modules/recharts/types/polar/radialbar.d.ts","./node_modules/recharts/types/cartesian/brush.d.ts","./node_modules/recharts/types/cartesian/referencedot.d.ts","./node_modules/recharts/types/cartesian/referencearea.d.ts","./node_modules/recharts/types/cartesian/xaxis.d.ts","./node_modules/recharts/types/cartesian/yaxis.d.ts","./node_modules/recharts/types/cartesian/zaxis.d.ts","./node_modules/recharts/types/chart/linechart.d.ts","./node_modules/recharts/types/chart/barchart.d.ts","./node_modules/recharts/types/chart/piechart.d.ts","./node_modules/recharts/types/chart/treemap.d.ts","./node_modules/recharts/types/chart/sankey.d.ts","./node_modules/recharts/types/chart/radarchart.d.ts","./node_modules/recharts/types/chart/scatterchart.d.ts","./node_modules/recharts/types/chart/areachart.d.ts","./node_modules/recharts/types/chart/radialbarchart.d.ts","./node_modules/recharts/types/chart/composedchart.d.ts","./node_modules/recharts/types/chart/sunburstchart.d.ts","./node_modules/recharts/types/shape/trapezoid.d.ts","./node_modules/recharts/types/cartesian/funnel.d.ts","./node_modules/recharts/types/chart/funnelchart.d.ts","./node_modules/recharts/types/util/global.d.ts","./node_modules/recharts/types/zindex/defaultzindexes.d.ts","./node_modules/decimal.js-light/decimal.d.ts","./node_modules/recharts/types/util/scale/getnicetickvalues.d.ts","./node_modules/recharts/types/types.d.ts","./node_modules/recharts/types/hooks.d.ts","./node_modules/recharts/types/context/chartlayoutcontext.d.ts","./node_modules/recharts/types/index.d.ts","./src/components/business/maindashboard.tsx","./src/components/business/dashboard.tsx","./src/app/[locale]/(protected)/dashboard/page.tsx","./src/components/ui/table.tsx","./src/components/items/itemlistclient.tsx","./src/app/[locale]/(protected)/items/page.tsx","./src/components/items/itemdetailclient.tsx","./src/app/[locale]/(protected)/items/[id]/page.tsx","./node_modules/react-hook-form/dist/constants.d.ts","./node_modules/react-hook-form/dist/utils/createsubject.d.ts","./node_modules/react-hook-form/dist/types/events.d.ts","./node_modules/react-hook-form/dist/types/path/common.d.ts","./node_modules/react-hook-form/dist/types/path/eager.d.ts","./node_modules/react-hook-form/dist/types/path/index.d.ts","./node_modules/react-hook-form/dist/types/fieldarray.d.ts","./node_modules/react-hook-form/dist/types/resolvers.d.ts","./node_modules/react-hook-form/dist/types/form.d.ts","./node_modules/react-hook-form/dist/types/utils.d.ts","./node_modules/react-hook-form/dist/types/fields.d.ts","./node_modules/react-hook-form/dist/types/errors.d.ts","./node_modules/react-hook-form/dist/types/validator.d.ts","./node_modules/react-hook-form/dist/types/controller.d.ts","./node_modules/react-hook-form/dist/types/index.d.ts","./node_modules/react-hook-form/dist/controller.d.ts","./node_modules/react-hook-form/dist/form.d.ts","./node_modules/react-hook-form/dist/logic/appenderrors.d.ts","./node_modules/react-hook-form/dist/logic/createformcontrol.d.ts","./node_modules/react-hook-form/dist/logic/index.d.ts","./node_modules/react-hook-form/dist/usecontroller.d.ts","./node_modules/react-hook-form/dist/usefieldarray.d.ts","./node_modules/react-hook-form/dist/useform.d.ts","./node_modules/react-hook-form/dist/useformcontext.d.ts","./node_modules/react-hook-form/dist/useformstate.d.ts","./node_modules/react-hook-form/dist/usewatch.d.ts","./node_modules/react-hook-form/dist/utils/get.d.ts","./node_modules/react-hook-form/dist/utils/set.d.ts","./node_modules/react-hook-form/dist/utils/index.d.ts","./node_modules/react-hook-form/dist/watch.d.ts","./node_modules/react-hook-form/dist/index.d.ts","./node_modules/zod/v3/helpers/typealiases.d.cts","./node_modules/zod/v3/helpers/util.d.cts","./node_modules/zod/v3/zoderror.d.cts","./node_modules/zod/v3/locales/en.d.cts","./node_modules/zod/v3/errors.d.cts","./node_modules/zod/v3/helpers/parseutil.d.cts","./node_modules/zod/v3/helpers/enumutil.d.cts","./node_modules/zod/v3/helpers/errorutil.d.cts","./node_modules/zod/v3/helpers/partialutil.d.cts","./node_modules/zod/v3/standard-schema.d.cts","./node_modules/zod/v3/types.d.cts","./node_modules/zod/v3/external.d.cts","./node_modules/zod/v3/index.d.cts","./node_modules/@hookform/resolvers/zod/dist/zod.d.ts","./node_modules/@hookform/resolvers/zod/dist/index.d.ts","./src/components/ui/textarea.tsx","./src/components/ui/alert.tsx","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-context/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-focus-scope/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-arrow/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/rect/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-popper/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-portal/dist/index.d.mts","./node_modules/@radix-ui/react-popover/dist/index.d.mts","./src/components/ui/popover.tsx","./node_modules/cmdk/dist/index.d.ts","./src/components/ui/command.tsx","./src/components/items/itemtypeselect.tsx","./src/components/items/fileupload.tsx","./node_modules/@radix-ui/react-slider/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-slider/dist/index.d.mts","./src/components/ui/slider.tsx","./src/components/items/drawingcanvas.tsx","./src/components/items/itemform.tsx","./src/app/[locale]/(protected)/items/[id]/edit/page.tsx","./src/app/[locale]/(protected)/items/create/page.tsx","./src/components/organisms/pagelayout.tsx","./src/components/organisms/pageheader.tsx","./node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-switch/dist/index.d.mts","./src/components/ui/switch.tsx","./src/components/items/itemmasterdatamanagement/components/conditionaldisplayui.tsx","./src/components/items/itemmasterdatamanagement/dialogs/fielddialog.tsx","./node_modules/vaul/dist/index.d.mts","./src/components/ui/drawer.tsx","./src/components/items/itemmasterdatamanagement/dialogs/fielddrawer.tsx","./node_modules/@radix-ui/react-alert-dialog/dist/index.d.mts","./src/components/ui/alert-dialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/tabmanagementdialogs.tsx","./src/components/items/itemmasterdatamanagement/dialogs/optiondialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/columnmanagedialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/patheditdialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/pagedialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/sectiondialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/masterfielddialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/templatefielddialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/loadtemplatedialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/columndialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/sectiontemplatedialog.tsx","./src/components/ui/loading-spinner.tsx","./src/components/ui/error-message.tsx","./src/components/items/itemmasterdatamanagement.tsx","./src/app/[locale]/(protected)/master-data/item-master-data-management/page.tsx","./src/app/[locale]/(protected)/production/screen-production/page.tsx","./src/app/[locale]/(protected)/production/screen-production/[id]/page.tsx","./src/app/[locale]/(protected)/production/screen-production/[id]/edit/page.tsx","./src/app/[locale]/(protected)/production/screen-production/create/page.tsx","./src/components/languageselect.tsx","./src/components/themeselect.tsx","./src/components/auth/loginpage.tsx","./src/app/[locale]/login/page.tsx","./src/components/auth/signuppage.tsx","./src/app/[locale]/signup/page.tsx","./node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-context/dist/index.d.mts","./node_modules/@radix-ui/react-progress/dist/index.d.mts","./src/components/ui/progress.tsx","./node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-tooltip/dist/index.d.mts","./src/components/ui/tooltip.tsx","./src/contexts/_unused/accountingcontext.tsx","./src/contexts/_unused/developermodecontext.tsx","./src/contexts/_unused/facilitiescontext.tsx","./src/contexts/_unused/hrcontext.tsx","./src/contexts/_unused/inventorycontext.tsx","./src/contexts/_unused/pricingcontext.tsx","./src/contexts/_unused/productioncontext.tsx","./src/contexts/_unused/salescontext.tsx","./src/contexts/_unused/shippingcontext.tsx","./.next/types/cache-life.d.ts","./.next/types/server.d.ts","./.next/types/validator.ts","./.next/types/app/[locale]/layout.ts","./.next/types/app/[locale]/page.ts","./.next/types/app/[locale]/(protected)/layout.ts","./.next/types/app/[locale]/(protected)/[...slug]/page.ts","./.next/types/app/[locale]/(protected)/dashboard/page.ts","./.next/types/app/[locale]/(protected)/master-data/item-master-data-management/page.ts","./.next/types/app/api/auth/check/route.ts","./.next/types/app/api/proxy/[...path]/route.ts","./node_modules/@types/d3-array/index.d.ts","./node_modules/@types/d3-color/index.d.ts","./node_modules/@types/d3-ease/index.d.ts","./node_modules/@types/d3-interpolate/index.d.ts","./node_modules/@types/d3-time/index.d.ts","./node_modules/@types/d3-scale/index.d.ts","./node_modules/@types/d3-timer/index.d.ts","./node_modules/@types/estree/index.d.ts","./node_modules/@types/json-schema/index.d.ts","./node_modules/@types/json5/index.d.ts","./node_modules/@types/use-sync-external-store/index.d.ts"],"fileIdsList":[[100,146,337,811],[100,146,337,1367],[100,146,337,807],[100,146,337,1468],[100,146,337,794],[100,146,337,796],[100,146,491,511],[100,146,491,516],[100,146,444,445,446,447],[100,146],[100,145,146,275,277,278,280,328,432,482,483,484,487,488,490],[83,100,146,491,494,511,512,513,514,515,516,518,519,794,796,807,811,1367,1370,1372,1440,1441,1468,1469,1470,1471,1472,1476,1478],[83,100,146,495,496],[100,146,495,501],[100,146,813],[100,146,814],[100,146,813,814,815,816,817,818,819],[100,146,601],[100,146,590,591,592,593,594,595,596,597,598,599,600,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635],[100,146,601,604],[100,146,604],[100,146,602],[100,146,601,602,603],[100,146,602,604],[100,146,602,603],[100,146,640],[100,146,640,642,643],[100,146,640,641],[100,146,636,639],[100,146,637,638],[100,146,636],[100,146,1417],[100,146,770,1403,1416],[86,100,146,552,568],[86,100,146,553],[86,100,146],[86,100,146,262,552,553],[86,100,146,552,553,554,556,563],[86,100,146,552,553,801],[86,100,146,549],[86,100,146,552,553,554,556,561,563,577],[86,100,146,1421,1422,1423,1424,1427,1428],[86,100,146,1422],[86,100,146,1421,1422,1425,1426],[86,100,146,552,553,558,560],[86,100,146,549,1479],[86,100,146,552,553],[86,100,146,552,553,554,556,561,563],[86,90,100,146,195,196,197,198,199,439,487],[86,100,146,552,553,577],[86,100,146,552,553,554,561,563],[100,146,1263,1264,1265,1266,1267],[100,146,1506],[100,146,1509],[100,146,1253],[100,143,146],[100,145,146],[146],[100,146,151,179],[100,146,147,152,157,165,176,187],[100,146,147,148,157,165],[95,96,97,100,146],[100,146,149,188],[100,146,150,151,158,166],[100,146,151,176,184],[100,146,152,154,157,165],[100,145,146,153],[100,146,154,155],[100,146,156,157],[100,145,146,157],[100,146,157,158,159,176,187],[100,146,157,158,159,172,176,179],[100,146,154,157,160,165,176,187],[100,146,157,158,160,161,165,176,184,187],[100,146,160,162,176,184,187],[98,99,100,101,102,103,104,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[100,146,157,163],[100,146,164,187,192],[100,146,154,157,165,176],[100,146,166],[100,146,167],[100,145,146,168],[100,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[100,146,170],[100,146,171],[100,146,157,172,173],[100,146,172,174,188,190],[100,146,157,176,177,179],[100,146,178,179],[100,146,176,177],[100,146,179],[100,146,180],[100,143,146,176,181],[100,146,157,182,183],[100,146,182,183],[100,146,151,165,176,184],[100,146,185],[100,146,165,186],[100,146,160,171,187],[100,146,151,188],[100,146,176,189],[100,146,164,190],[100,146,191],[100,141,146],[100,141,146,157,159,168,176,179,187,190,192],[100,146,176,193],[86,90,100,146,195,196,197,199,439,487,531],[86,90,100,146,195,196,197,198,354,439,487,531],[86,90,100,146,195,196,198,199,439,487,531],[86,100,146,199,354,355],[86,100,146,199,354],[86,90,100,146,196,197,198,199,439,487,531],[86,90,100,146,195,197,198,199,439,487,531],[84,85,100,146],[100,146,532,533],[100,146,532],[86,100,146,568],[100,146,824],[100,146,822,824],[100,146,822],[100,146,824,888,889],[100,146,824,891],[100,146,824,892],[100,146,909],[100,146,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077],[100,146,824,985],[100,146,822,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173],[100,146,824,889,1009],[100,146,822,1006,1007],[100,146,1008],[100,146,824,1006],[100,146,821,822,823],[100,146,645,646,647],[100,146,644,645],[100,146,636,644],[100,146,791],[100,146,506],[100,146,505],[100,146,491,503,504],[100,146,500],[100,146,495,498],[100,146,499],[100,146,679,790],[100,146,491,503],[100,146,687],[100,146,667],[100,146,679],[100,146,679,683],[100,146,668,669,680,681,682,684,685,686],[86,100,146,262,678,679],[92,100,146],[100,146,442],[100,146,449],[100,146,203,217,218,219,221,436],[100,146,203,242,244,246,247,250,436,438],[100,146,203,207,209,210,211,212,213,425,436,438],[100,146,436],[100,146,218,320,406,415,432],[100,146,203],[100,146,200,432],[100,146,254],[100,146,253,436,438],[100,146,160,302,320,349,493],[100,146,160,313,329,415,431],[100,146,160,367],[100,146,419],[100,146,418,419,420],[100,146,418],[94,100,146,160,200,203,207,210,214,215,216,218,222,230,231,360,385,416,436,439],[100,146,203,220,238,242,243,248,249,436,493],[100,146,220,493],[100,146,231,238,300,436,493],[100,146,493],[100,146,203,220,221,493],[100,146,245,493],[100,146,214,417,424],[100,146,171,262,432],[100,146,262,432],[86,100,146,262],[86,100,146,321],[100,146,317,365,432,475,476],[100,146,412,469,470,471,472,474],[100,146,411],[100,146,411,412],[100,146,211,361,362,363],[100,146,361,364,365],[100,146,473],[100,146,361,365],[86,100,146,204,463],[86,100,146,187],[86,100,146,220,290],[86,100,146,220],[100,146,288,292],[86,100,146,289,441],[86,90,100,146,160,194,195,196,197,198,199,439,485,486,531],[100,146,160],[100,146,160,207,269,361,371,386,406,421,422,436,437,493],[100,146,230,423],[100,146,439],[100,146,202],[86,100,146,302,316,328,338,340,431],[100,146,171,302,316,337,338,339,431,492],[100,146,331,332,333,334,335,336],[100,146,333],[100,146,337],[100,146,260,261,262,264],[86,100,146,255,256,257,263],[100,146,260,263],[100,146,258],[100,146,259],[86,100,146,262,289,441],[86,100,146,262,440,441],[86,100,146,262,441],[100,146,386,428],[100,146,428],[100,146,160,437,441],[100,146,325],[100,145,146,324],[100,146,232,270,308,310,312,313,314,315,358,361,431,434,437],[100,146,232,346,361,365],[100,146,313,431],[86,100,146,313,322,323,325,326,327,328,329,330,341,342,343,344,345,347,348,431,432,493],[100,146,307],[100,146,160,171,232,233,269,284,314,358,359,360,365,386,406,427,436,437,438,439,493],[100,146,431],[100,145,146,218,311,314,360,427,429,430,437],[100,146,313],[100,145,146,269,274,303,304,305,306,307,308,309,310,312,431,432],[100,146,160,274,275,303,437,438],[100,146,218,360,361,386,427,431,437],[100,146,160,436,438],[100,146,160,176,434,437,438],[100,146,160,171,187,200,207,220,232,233,235,270,271,276,281,284,310,314,361,371,373,376,378,381,382,383,384,385,406,426,427,432,434,436,437,438],[100,146,160,176],[100,146,203,204,205,207,212,215,220,238,426,434,435,439,441,493],[100,146,160,176,187,250,252,254,255,256,257,264,493],[100,146,171,187,200,242,252,280,281,282,283,310,361,376,385,386,392,395,396,406,427,432,434],[100,146,214,215,230,360,385,427,436],[100,146,160,187,204,207,310,390,434,436],[100,146,301],[100,146,160,393,394,403],[100,146,434,436],[100,146,308,311],[100,146,310,314,426,441],[100,146,160,171,236,242,283,376,386,392,395,398,434],[100,146,160,214,230,242,399],[100,146,203,235,401,426,436],[100,146,160,187,436],[100,146,160,220,234,235,236,247,265,400,402,426,436],[94,100,146,232,314,405,439,441],[100,146,160,171,187,207,214,222,230,233,270,276,280,281,282,283,284,310,361,373,386,387,389,391,406,426,427,432,433,434,441],[100,146,160,176,214,392,397,403,434],[100,146,225,226,227,228,229],[100,146,271,377],[100,146,379],[100,146,377],[100,146,379,380],[100,146,160,207,210,211,269,437],[100,146,160,171,202,204,232,270,284,314,369,370,406,434,438,439,441],[100,146,160,171,187,206,211,310,370,433,437],[100,146,303],[100,146,304],[100,146,305],[100,146,432],[100,146,251,267],[100,146,160,207,251,270],[100,146,266,267],[100,146,268],[100,146,251,252],[100,146,251,285],[100,146,251],[100,146,271,375,433],[100,146,374],[100,146,252,432,433],[100,146,372,433],[100,146,252,432],[100,146,358],[100,146,207,212,270,299,302,308,310,314,316,319,350,353,357,361,405,426,434,437],[100,146,293,296,297,298,317,318,365],[86,100,146,197,199,262,351,352],[86,100,146,197,199,262,351,352,356],[100,146,414],[100,146,218,275,313,314,325,329,361,405,407,408,409,410,412,413,416,426,431,436],[100,146,365],[100,146,369],[100,146,160,270,286,366,368,371,405,434,439,441],[100,146,293,294,295,296,297,298,317,318,365,440],[94,100,146,160,171,187,233,251,252,284,310,314,403,404,406,426,427,436,437,439],[100,146,275,277,280,427],[100,146,160,271,436],[100,146,274,313],[100,146,273],[100,146,275,276],[100,146,272,274,436],[100,146,160,206,275,277,278,279,436,437],[86,100,146,361,362,364],[100,146,237],[86,100,146,204],[86,100,146,432],[86,94,100,146,284,314,439,441],[100,146,204,463,464],[86,100,146,292],[86,100,146,171,187,202,249,287,289,291,441],[100,146,220,432,437],[100,146,388,432],[100,146,361],[86,100,146,158,160,171,202,238,244,292,439,440],[86,100,146,195,196,197,198,199,439,487,531],[86,87,88,89,90,100,146],[100,146,151],[100,146,239,240,241],[100,146,239],[86,90,100,146,160,162,171,194,195,196,197,198,199,200,202,233,337,398,436,438,441,487,531],[100,146,451],[100,146,453],[100,146,455],[100,146,457],[100,146,459,460,461],[100,146,465],[91,93,100,146,443,448,450,452,454,456,458,462,466,468,478,479,481,491,492,493,494],[100,146,467],[100,146,477],[100,146,289],[100,146,480],[100,145,146,275,277,278,280,328,432,482,483,484,487,488,489,490],[100,146,194],[100,146,1231],[100,146,1193],[100,146,1232],[100,146,1078,1106,1174,1230],[100,146,1193,1194,1231,1232],[100,146,1175,1176,1177,1178,1179,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220],[86,100,146,1199,1233],[86,100,146,1199],[86,100,146,1194],[86,100,146,1233],[86,100,146,1202],[100,146,1222,1223,1224,1225,1226,1227,1228],[100,146,1199],[100,146,1235],[100,146,820,1191,1192,1197,1199,1221,1229,1233,1234,1236,1244],[100,146,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190],[100,146,1199,1231],[100,146,1178,1179,1191,1192,1195,1197,1230],[100,146,1195,1196,1198,1230],[86,100,146,1192,1230,1231],[100,146,1195,1230],[86,100,146,1191,1192,1221,1229],[86,100,146,1194,1195,1196,1230,1232],[100,146,1237,1238,1239,1240,1241,1242,1243],[86,100,146,1387],[100,146,1387,1388,1389,1392,1393,1394,1395,1396,1397,1398,1401,1402],[100,146,1387],[100,146,1390,1391],[86,100,146,1385,1387],[100,146,1382,1383,1385],[100,146,1378,1381,1383,1385],[100,146,1382,1385],[86,100,146,1373,1374,1375,1378,1379,1380,1382,1383,1384,1385],[100,146,1375,1378,1379,1380,1381,1382,1383,1384,1385,1386],[100,146,1382],[100,146,1376,1382,1383],[100,146,1376,1377],[100,146,1381,1383,1384],[100,146,1381],[100,146,1373,1378,1383,1384],[100,146,1399,1400],[86,100,146,1260,1271,1278,1280,1282,1311,1316],[86,100,146,1255,1260,1272,1273,1274,1275,1290,1311,1314,1316],[86,100,146,1270,1316],[86,100,146,1259,1260,1261,1312,1314,1316],[86,100,146,1260,1307,1312,1314,1316],[86,100,146,1260,1291,1292,1294,1316],[86,100,146,1274,1313,1316,1354],[100,146,1312,1316],[86,100,146,1260,1274,1278,1311,1312,1316],[86,100,146,1260,1261,1273,1301],[86,100,146,1252,1260,1261,1301],[86,100,146,1260,1261,1301,1302,1316],[86,100,146,1258,1260,1274,1277,1278,1293,1311,1312,1313,1316],[86,100,146,1312,1316],[86,100,146,1312,1314,1316],[86,100,146,1311,1314,1316],[86,100,146,1316],[86,100,146,1273,1313,1316],[86,100,146,1313,1316],[86,100,146,1256],[86,100,146,1260,1313,1316],[86,100,146,1252,1260,1316],[86,100,146,1259,1260,1316],[86,100,146,1260,1261,1316,1364],[86,100,146,1317,1318,1319],[86,100,146,1257,1258,1312,1313,1316,1318,1321],[100,146,1306,1316],[100,146,1311,1312,1316,1361],[100,146,1250,1251,1252,1256,1258,1259,1260,1261,1262,1273,1274,1278,1281,1291,1292,1293,1294,1295,1301,1303,1308,1316,1317,1320,1322,1323,1324,1325,1326,1327,1328,1329,1331,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1360,1361,1362,1363],[86,100,146,1260,1274,1284,1286,1313,1316],[86,100,146,1259,1260,1302,1314,1316,1332],[86,100,146,1260,1312],[86,100,146,1260,1302,1316,1330],[86,100,146,1260,1314,1316],[86,100,146,1255,1260,1271,1274,1311,1312,1314,1316,1326],[86,100,146,1255,1316],[86,100,146,1272,1316],[100,146,1263,1268,1316],[100,146,1262,1263,1268,1311,1314,1316],[100,146,1263,1268,1270],[100,146,1263,1268,1288,1295,1316],[100,146,1263,1268,1271,1276,1277,1282,1283,1286,1287,1290,1312,1316],[100,146,1263,1268,1316,1317,1320],[100,146,1263,1268,1313,1316],[100,146,1263,1268,1312],[100,146,1263,1268],[100,146,1263,1264,1268,1301,1303,1312],[100,146,1256,1263,1268,1281,1316],[100,146,1255,1279,1288,1306,1312,1316],[100,146,1263,1265,1269,1271,1279,1288,1289,1296,1297,1298,1299,1300,1304,1305,1306,1308,1309,1310,1312,1313,1314,1316,1364],[100,146,1271,1279,1289,1312],[100,146,1306],[100,146,1263,1268,1269,1271,1288,1296,1297,1298,1299,1300,1304,1305,1312,1313,1316,1364],[100,146,1257,1258,1263,1268,1312,1316],[100,146,1271,1281,1288,1289,1316],[100,146,1275,1288,1289],[100,146,1271,1288,1316],[86,100,146,1258,1284,1285,1288,1316],[100,146,1288],[100,146,1288,1289],[100,146,1258,1271,1288,1316],[100,146,1288,1314,1316],[100,146,1313,1316],[86,100,146,1273,1291,1316],[100,146,1255,1258,1279,1297,1311,1313,1316],[100,146,1316,1359],[100,146,1255,1288,1289,1314],[86,100,146,1252,1256,1257,1281,1284,1311,1314,1315],[100,146,1263],[100,146,176,194],[100,113,117,146,187],[100,113,146,176,187],[100,108,146],[100,110,113,146,184,187],[100,146,165,184],[100,108,146,194],[100,110,113,146,165,187],[100,105,106,109,112,146,157,176,187],[100,113,120,146],[100,105,111,146],[100,113,134,135,146],[100,109,113,146,179,187,194],[100,134,146,194],[100,107,108,146,194],[100,113,146],[100,107,108,109,110,111,112,113,114,115,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,135,136,137,138,139,140,146],[100,113,128,146],[100,113,120,121,146],[100,111,113,121,122,146],[100,112,146],[100,105,108,113,146],[100,113,117,121,122,146],[100,117,146],[100,111,113,116,146,187],[100,105,110,113,120,146],[100,146,176],[100,108,113,134,146,192,194],[100,146,666],[86,100,146,588,589,649,650,651,653,660,662],[86,100,146,587,650,654,655,657,658,659,660],[100,146,588],[100,146,589,649],[100,146,648],[100,146,651],[100,146,656],[100,146,586,587,588,589,649,650,651,652,653,655,657,658,659,660,661,662,663,664,665],[100,146,653,655],[100,146,588,650,651,653,654],[100,146,652],[100,146,667,678],[100,146,677],[100,146,670,671,672,673,674,675,676],[86,100,146,262,655],[100,146,663],[100,146,651,659,661],[100,146,1254],[100,146,778],[100,146,1406,1407],[100,146,1404,1405,1406,1408,1409,1414],[100,146,1405,1406],[100,146,1414],[100,146,1415],[100,146,1406],[100,146,1404,1405,1406,1409,1410,1411,1412,1413],[100,146,1404,1405,1416],[100,146,770],[100,146,770,773],[100,146,764,770,771,772,773,774,775,776,777],[100,146,770,771],[100,146,770,772],[100,146,709,711,712,713,714],[100,146,709,711,713,714],[100,146,709,711,713],[100,146,708,709,711,712,714],[100,146,709,710,711,712,713,714,715,716,764,765,766,767,768,769],[100,146,711,714],[100,146,708,709,710,712,713,714],[100,146,711,765,768],[100,146,711,712,713,714],[100,146,713],[100,146,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763],[100,146,697,698,700,701,702,704],[100,146,700,701,702,703,704],[100,146,697,700,701,702,704],[100,146,785,786],[86,100,146,478,810],[100,146,1366],[86,100,146,468,537,539,545],[86,100,146,478,692,780,1439],[86,100,146,478,692,1371],[100,146,780,1439],[86,100,146,692,1369],[100,146,583,805,806],[100,146,539],[86,100,146,495,1467],[100,146,468,537,539,545],[100,146,478,495,508,688,792,793],[100,146,1475],[86,100,146,478],[100,146,1477],[100,146,1495],[100,146,517,1495],[86,100,146,478,537,538,539,551,707,792,1473,1474],[86,100,146,478,537,538,539,551,566,781,792,1473,1474],[86,100,146,1365],[86,100,146,537,539,542,545,566,584,812,1246,1249,1364],[100,146,478,537,539,545],[86,100,146,530,537,538,539,542,545,546,551,566,572],[86,100,146,537,539,551,572,1437],[86,100,146,537,538,539,551],[100,146,478,537,539,542,545,551,692,1368],[86,100,146,478,537,538,539,542,545,551,566,692,780,1249,1368,1403,1418,1419,1420,1430,1432,1433,1434,1438],[86,100,146,478,537,538,539,542,545,566,579,692,1249,1368],[86,100,146,520,526,528,529,530,537,539,542,545,546,579,581,582,1442,1443,1447,1448,1451,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466],[100,146,530,537,538,539,542,546,551,1446],[86,100,146,530,537,539,542],[86,100,146,530,537,538,539],[100,146,540,543],[100,146,537,538,546,551,572],[100,146,520,537,538,539,542,546,551,566,572,1446],[100,146,530,537,538,539,542,546,551,566,572,1419,1446,1447],[100,146,530,537,538,539,542,546,551,566,1419,1446,1450],[100,146,530,537,539,542,572],[100,146,537,538,542,551,566,572,1419,1446],[100,146,537,538,551,566,572,1446],[100,146,537,538,551,566,572],[100,146,537,538,539,551,572,1419],[100,146,537,538,551,566,572,1419],[100,146,537,538,539,542,551,572,1453],[100,146,537,538,551,566,572,1419,1446],[100,146,537,538,539,542,545,546],[86,100,146,530,537,538,539,544,545,546,573],[100,146,547,548,574,580],[100,146,530,537,539,542,545],[100,146,530,537,539,542,545,573,579],[100,146,551,566,692],[100,146,478,539,566,792],[86,100,146,539,706],[86,100,146,539],[100,146,539,566,793],[86,100,146,537,541,1452],[86,100,146,534,541],[86,100,146,531,534,541],[86,100,146,531,534,536],[86,100,146,537,539,541,1245],[86,100,146,541],[86,100,146,539,541,1248],[86,100,146,539,541,572,1431],[86,100,146,539,541,568,571],[86,100,146,541,1449],[86,100,146,539,541,802],[86,100,146,539,1420],[86,100,146,536],[86,100,146,536,550],[86,100,146,541,1429],[86,100,146,541,1480],[86,100,146,536,539,565],[86,100,146,539,541,568],[86,100,146,536,1436],[86,100,146,541,1445],[86,100,146,536,578],[86,100,146,541,1483],[100,146,532,535],[86,100,146,570],[86,100,146,521,523,524,526,528,529],[86,100,146,521,530],[100,146,508,688],[86,100,146,478,537,538,539,706,707,793,798,803,804],[100,146,509,690],[100,146,524,525,526,527],[100,146,692,1494],[100,146,694,1494],[100,146,524,530],[100,146,522],[100,146,539,706],[100,146,692,779],[100,146,779],[100,146,507,508,509,1495],[100,146,699,705],[100,146,539,699,705],[100,146,692,699,705],[100,146,694,695,699,705,787],[100,146,692]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"2ab096661c711e4a81cc464fa1e6feb929a54f5340b46b0a07ac6bbf857471f0","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"196cb558a13d4533a5163286f30b0509ce0210e4b316c56c38d4c0fd2fb38405","affectsGlobalScope":true,"impliedFormat":1},{"version":"73f78680d4c08509933daf80947902f6ff41b6230f94dd002ae372620adb0f60","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5239f5c01bcfa9cd32f37c496cf19c61d69d37e48be9de612b541aac915805b","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"023a61743079dd96f914f6e04f8dbd1b4535c1e6c1a489cc889f4f1fa749fc5f","affectsGlobalScope":true},{"version":"170d4db14678c68178ee8a3d5a990d5afb759ecb6ec44dbd885c50f6da6204f6","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a8eb4ebffd85e589a1cc7c178e291626c359543403d58c9cd22b81fab5b1fb9","impliedFormat":1},{"version":"0ff1b165090b491f5e1407ae680b9a0bc3806dc56827ec85f93c57390491e732","impliedFormat":1},{"version":"acd8fd5090ac73902278889c38336ff3f48af6ba03aa665eb34a75e7ba1dccc4","impliedFormat":1},{"version":"d6258883868fb2680d2ca96bc8b1352cab69874581493e6d52680c5ffecdb6cc","impliedFormat":1},{"version":"1b61d259de5350f8b1e5db06290d31eaebebc6baafd5f79d314b5af9256d7153","impliedFormat":1},{"version":"f258e3960f324a956fc76a3d3d9e964fff2244ff5859dcc6ce5951e5413ca826","impliedFormat":1},{"version":"643f7232d07bf75e15bd8f658f664d6183a0efaca5eb84b48201c7671a266979","impliedFormat":1},{"version":"0f6666b58e9276ac3a38fdc80993d19208442d6027ab885580d93aec76b4ef00","impliedFormat":1},{"version":"05fd364b8ef02fb1e174fbac8b825bdb1e5a36a016997c8e421f5fab0a6da0a0","impliedFormat":1},{"version":"631eff75b0e35d1b1b31081d55209abc43e16b49426546ab5a9b40bdd40b1f60","impliedFormat":1},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","affectsGlobalScope":true,"impliedFormat":1},{"version":"ba481bca06f37d3f2c137ce343c7d5937029b2468f8e26111f3c9d9963d6568d","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d9ef24f9a22a88e3e9b3b3d8c40ab1ddb0853f1bfbd5c843c37800138437b61","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"2cbe0621042e2a68c7cbce5dfed3906a1862a16a7d496010636cdbdb91341c0f","affectsGlobalScope":true,"impliedFormat":1},{"version":"e2677634fe27e87348825bb041651e22d50a613e2fdf6a4a3ade971d71bac37e","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"8c0bcd6c6b67b4b503c11e91a1fb91522ed585900eab2ab1f61bba7d7caa9d6f","impliedFormat":1},{"version":"8cd19276b6590b3ebbeeb030ac271871b9ed0afc3074ac88a94ed2449174b776","affectsGlobalScope":true,"impliedFormat":1},{"version":"696eb8d28f5949b87d894b26dc97318ef944c794a9a4e4f62360cd1d1958014b","impliedFormat":1},{"version":"3f8fa3061bd7402970b399300880d55257953ee6d3cd408722cb9ac20126460c","impliedFormat":1},{"version":"35ec8b6760fd7138bbf5809b84551e31028fb2ba7b6dc91d95d098bf212ca8b4","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"68bd56c92c2bd7d2339457eb84d63e7de3bd56a69b25f3576e1568d21a162398","affectsGlobalScope":true,"impliedFormat":1},{"version":"3e93b123f7c2944969d291b35fed2af79a6e9e27fdd5faa99748a51c07c02d28","impliedFormat":1},{"version":"9d19808c8c291a9010a6c788e8532a2da70f811adb431c97520803e0ec649991","impliedFormat":1},{"version":"87aad3dd9752067dc875cfaa466fc44246451c0c560b820796bdd528e29bef40","impliedFormat":1},{"version":"4aacb0dd020eeaef65426153686cc639a78ec2885dc72ad220be1d25f1a439df","impliedFormat":1},{"version":"f0bd7e6d931657b59605c44112eaf8b980ba7f957a5051ed21cb93d978cf2f45","impliedFormat":1},{"version":"8db0ae9cb14d9955b14c214f34dae1b9ef2baee2fe4ce794a4cd3ac2531e3255","affectsGlobalScope":true,"impliedFormat":1},{"version":"15fc6f7512c86810273af28f224251a5a879e4261b4d4c7e532abfbfc3983134","impliedFormat":1},{"version":"58adba1a8ab2d10b54dc1dced4e41f4e7c9772cbbac40939c0dc8ce2cdb1d442","impliedFormat":1},{"version":"2fd4c143eff88dabb57701e6a40e02a4dbc36d5eb1362e7964d32028056a782b","impliedFormat":1},{"version":"714435130b9015fae551788df2a88038471a5a11eb471f27c4ede86552842bc9","impliedFormat":1},{"version":"855cd5f7eb396f5f1ab1bc0f8580339bff77b68a770f84c6b254e319bbfd1ac7","impliedFormat":1},{"version":"5650cf3dace09e7c25d384e3e6b818b938f68f4e8de96f52d9c5a1b3db068e86","impliedFormat":1},{"version":"1354ca5c38bd3fd3836a68e0f7c9f91f172582ba30ab15bb8c075891b91502b7","affectsGlobalScope":true,"impliedFormat":1},{"version":"27fdb0da0daf3b337c5530c5f266efe046a6ceb606e395b346974e4360c36419","impliedFormat":1},{"version":"2d2fcaab481b31a5882065c7951255703ddbe1c0e507af56ea42d79ac3911201","impliedFormat":1},{"version":"afbe24ab0d74694372baa632ecb28bb375be53f3be53f9b07ecd7fc994907de5","impliedFormat":1},{"version":"ca867399f7db82df981d6915bcbb2d81131d7d1ef683bc782b59f71dda59bc85","affectsGlobalScope":true,"impliedFormat":1},{"version":"f1dc4bc37e2476766f29718f5006981009e2c7470ddd538d87be731b8bb24280","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e043a1bc8fbf2a255bccf9bf27e0f1caf916c3b0518ea34aa72357c0afd42ec","impliedFormat":1},{"version":"b4f70ec656a11d570e1a9edce07d118cd58d9760239e2ece99306ee9dfe61d02","impliedFormat":1},{"version":"3bc2f1e2c95c04048212c569ed38e338873f6a8593930cf5a7ef24ffb38fc3b6","impliedFormat":1},{"version":"6e70e9570e98aae2b825b533aa6292b6abd542e8d9f6e9475e88e1d7ba17c866","impliedFormat":1},{"version":"f9d9d753d430ed050dc1bf2667a1bab711ccbb1c1507183d794cc195a5b085cc","impliedFormat":1},{"version":"9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","impliedFormat":1},{"version":"47ab634529c5955b6ad793474ae188fce3e6163e3a3fb5edd7e0e48f14435333","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"0225ecb9ed86bdb7a2c7fd01f1556906902929377b44483dc4b83e03b3ef227d","affectsGlobalScope":true,"impliedFormat":1},{"version":"74cf591a0f63db318651e0e04cb55f8791385f86e987a67fd4d2eaab8191f730","impliedFormat":1},{"version":"5eab9b3dc9b34f185417342436ec3f106898da5f4801992d8ff38ab3aff346b5","impliedFormat":1},{"version":"12ed4559eba17cd977aa0db658d25c4047067444b51acfdcbf38470630642b23","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3ffabc95802521e1e4bcba4c88d8615176dc6e09111d920c7a213bdda6e1d65","impliedFormat":1},{"version":"f9ab232778f2842ffd6955f88b1049982fa2ecb764d129ee4893cbc290f41977","impliedFormat":1},{"version":"ae56f65caf3be91108707bd8dfbccc2a57a91feb5daabf7165a06a945545ed26","impliedFormat":1},{"version":"a136d5de521da20f31631a0a96bf712370779d1c05b7015d7019a9b2a0446ca9","impliedFormat":1},{"version":"c3b41e74b9a84b88b1dca61ec39eee25c0dbc8e7d519ba11bb070918cfacf656","affectsGlobalScope":true,"impliedFormat":1},{"version":"4737a9dc24d0e68b734e6cfbcea0c15a2cfafeb493485e27905f7856988c6b29","affectsGlobalScope":true,"impliedFormat":1},{"version":"36d8d3e7506b631c9582c251a2c0b8a28855af3f76719b12b534c6edf952748d","impliedFormat":1},{"version":"1ca69210cc42729e7ca97d3a9ad48f2e9cb0042bada4075b588ae5387debd318","impliedFormat":1},{"version":"f5ebe66baaf7c552cfa59d75f2bfba679f329204847db3cec385acda245e574e","impliedFormat":1},{"version":"ed59add13139f84da271cafd32e2171876b0a0af2f798d0c663e8eeb867732cf","affectsGlobalScope":true,"impliedFormat":1},{"version":"05db535df8bdc30d9116fe754a3473d1b6479afbc14ae8eb18b605c62677d518","impliedFormat":1},{"version":"b1810689b76fd473bd12cc9ee219f8e62f54a7d08019a235d07424afbf074d25","impliedFormat":1},{"version":"24259d3dae14de55d22f8b3d3e96954e5175a925ab6a830dc05a1993d4794eda","impliedFormat":1},{"version":"05069916ab9175271d15f9315a41ab28401561fe0e5f85f295c43538a38bd62e","impliedFormat":1},{"version":"be1cc4d94ea60cbe567bc29ed479d42587bf1e6cba490f123d329976b0fe4ee5","impliedFormat":1},{"version":"42bc0e1a903408137c3df2b06dfd7e402cdab5bbfa5fcfb871b22ebfdb30bd0b","impliedFormat":1},{"version":"9894dafe342b976d251aac58e616ac6df8db91fb9d98934ff9dd103e9e82578f","impliedFormat":1},{"version":"413df52d4ea14472c2fa5bee62f7a40abd1eb49be0b9722ee01ee4e52e63beb2","impliedFormat":1},{"version":"db6d2d9daad8a6d83f281af12ce4355a20b9a3e71b82b9f57cddcca0a8964a96","impliedFormat":1},{"version":"829b9e6028b29e6a8b1c01ddb713efe59da04d857089298fa79acbdb3cfcfdef","impliedFormat":1},{"version":"24f8562308dd8ba6013120557fa7b44950b619610b2c6cb8784c79f11e3c4f90","impliedFormat":1},{"version":"c696aa0753345ae6bdaab0e2d4b2053ee76be5140470860eef7e6cadc9f725a1","impliedFormat":1},{"version":"a86f82d646a739041d6702101afa82dcb935c416dd93cbca7fd754fd0282ce1f","impliedFormat":1},{"version":"ad0d1d75d129b1c80f911be438d6b61bfa8703930a8ff2be2f0e1f8a91841c64","impliedFormat":1},{"version":"ce75b1aebb33d510ff28af960a9221410a3eaf7f18fc5f21f9404075fba77256","impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":1},{"version":"496bbf339f3838c41f164238543e9fe5f1f10659cb30b68903851618464b98ba","impliedFormat":1},{"version":"5178eb4415a172c287c711dc60a619e110c3fd0b7de01ed0627e51a5336aa09c","impliedFormat":1},{"version":"ca6e5264278b53345bc1ce95f42fb0a8b733a09e3d6479c6ccfca55cdc45038c","impliedFormat":1},{"version":"9e2739b32f741859263fdba0244c194ca8e96da49b430377930b8f721d77c000","impliedFormat":1},{"version":"fb1d8e814a3eeb5101ca13515e0548e112bd1ff3fb358ece535b93e94adf5a3a","impliedFormat":1},{"version":"ffa495b17a5ef1d0399586b590bd281056cee6ce3583e34f39926f8dcc6ecdb5","impliedFormat":1},{"version":"98b18458acb46072947aabeeeab1e410f047e0cacc972943059ca5500b0a5e95","impliedFormat":1},{"version":"361e2b13c6765d7f85bb7600b48fde782b90c7c41105b7dab1f6e7871071ba20","impliedFormat":1},{"version":"c86fe861cf1b4c46a0fb7d74dffe596cf679a2e5e8b1456881313170f092e3fa","impliedFormat":1},{"version":"b6db56e4903e9c32e533b78ac85522de734b3d3a8541bf24d256058d464bf04b","impliedFormat":1},{"version":"24daa0366f837d22c94a5c0bad5bf1fd0f6b29e1fae92dc47c3072c3fdb2fbd5","impliedFormat":1},{"version":"570bb5a00836ffad3e4127f6adf581bfc4535737d8ff763a4d6f4cc877e60d98","impliedFormat":1},{"version":"889c00f3d32091841268f0b994beba4dceaa5df7573be12c2c829d7c5fbc232c","impliedFormat":1},{"version":"65f43099ded6073336e697512d9b80f2d4fec3182b7b2316abf712e84104db00","impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":1},{"version":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"acf5a2ac47b59ca07afa9abbd2b31d001bf7448b041927befae2ea5b1951d9f9","impliedFormat":1},{"version":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"d71291eff1e19d8762a908ba947e891af44749f3a2cbc5bd2ec4b72f72ea795f","impliedFormat":1},{"version":"c0480e03db4b816dff2682b347c95f2177699525c54e7e6f6aa8ded890b76be7","impliedFormat":1},{"version":"27ab780875bcbb65e09da7496f2ca36288b0c541abaa75c311450a077d54ec15","impliedFormat":1},{"version":"b620391fe8060cf9bedc176a4d01366e6574d7a71e0ac0ab344a4e76576fcbb8","impliedFormat":1},{"version":"380647d8f3b7f852cca6d154a376dbf8ac620a2f12b936594504a8a852e71d2f","impliedFormat":1},{"version":"208c9af9429dd3c76f5927b971263174aaa4bc7621ddec63f163640cbd3c473c","impliedFormat":1},{"version":"6459054aabb306821a043e02b89d54da508e3a6966601a41e71c166e4ea1474f","impliedFormat":1},{"version":"a23185bc5ef590c287c28a91baf280367b50ae4ea40327366ad01f6f4a8edbc5","impliedFormat":1},{"version":"bb37588926aba35c9283fe8d46ebf4e79ffe976343105f5c6d45f282793352b2","impliedFormat":1},{"version":"002eae065e6960458bda3cf695e578b0d1e2785523476f8a9170b103c709cd4f","impliedFormat":1},{"version":"c83bb0c9c5645a46c68356c2f73fdc9de339ce77f7f45a954f560c7e0b8d5ebb","impliedFormat":1},{"version":"05c97cddbaf99978f83d96de2d8af86aded9332592f08ce4a284d72d0952c391","impliedFormat":1},{"version":"72179f9dd22a86deaad4cc3490eb0fe69ee084d503b686985965654013f1391b","impliedFormat":1},{"version":"2e6114a7dd6feeef85b2c80120fdbfb59a5529c0dcc5bfa8447b6996c97a69f5","impliedFormat":1},{"version":"7b6ff760c8a240b40dab6e4419b989f06a5b782f4710d2967e67c695ef3e93c4","impliedFormat":1},{"version":"c8f004e6036aa1c764ad4ec543cf89a5c1893a9535c80ef3f2b653e370de45e6","impliedFormat":1},{"version":"dd80b1e600d00f5c6a6ba23f455b84a7db121219e68f89f10552c54ba46e4dc9","impliedFormat":1},{"version":"b064c36f35de7387d71c599bfcf28875849a1dbc733e82bd26cae3d1cd060521","impliedFormat":1},{"version":"6a148329edecbda07c21098639ef4254ef7869fb25a69f58e5d6a8b7b69d4236","impliedFormat":1},{"version":"8de9fe97fa9e00ec00666fa77ab6e91b35d25af8ca75dabcb01e14ad3299b150","impliedFormat":1},{"version":"f63ab283a1c8f5c79fabe7ca4ef85f9633339c4f0e822fce6a767f9d59282af2","impliedFormat":1},{"version":"dba114fb6a32b355a9cfc26ca2276834d72fe0e94cd2c3494005547025015369","impliedFormat":1},{"version":"a54c996c8870ef1728a2c1fa9b8eaec0bf4a8001cd2583c02dd5869289465b10","impliedFormat":1},{"version":"3e7efde639c6a6c3edb9847b3f61e308bf7a69685b92f665048c45132f51c218","impliedFormat":1},{"version":"df45ca1176e6ac211eae7ddf51336dc075c5314bc5c253651bae639defd5eec5","impliedFormat":1},{"version":"3754982006a3b32c502cff0867ca83584f7a43b1035989ca73603f400de13c96","impliedFormat":1},{"version":"a30ae9bb8a8fa7b90f24b8a0496702063ae4fe75deb27da731ed4a03b2eb6631","impliedFormat":1},{"version":"f974e4a06953682a2c15d5bd5114c0284d5abf8bc0fe4da25cb9159427b70072","impliedFormat":1},{"version":"50256e9c31318487f3752b7ac12ff365c8949953e04568009c8705db802776fb","impliedFormat":1},{"version":"7d73b24e7bf31dfb8a931ca6c4245f6bb0814dfae17e4b60c9e194a631fe5f7b","impliedFormat":1},{"version":"413586add0cfe7369b64979d4ec2ed56c3f771c0667fbde1bf1f10063ede0b08","impliedFormat":1},{"version":"06472528e998d152375ad3bd8ebcb69ff4694fd8d2effaf60a9d9f25a37a097a","impliedFormat":1},{"version":"50b5bc34ce6b12eccb76214b51aadfa56572aa6cc79c2b9455cdbb3d6c76af1d","impliedFormat":1},{"version":"b7e16ef7f646a50991119b205794ebfd3a4d8f8e0f314981ebbe991639023d0e","impliedFormat":1},{"version":"42c169fb8c2d42f4f668c624a9a11e719d5d07dacbebb63cbcf7ef365b0a75b3","impliedFormat":1},{"version":"a401617604fa1f6ce437b81689563dfdc377069e4c58465dbd8d16069aede0a5","impliedFormat":1},{"version":"e9dd71cf12123419c60dab867d44fbee5c358169f99529121eaef277f5c83531","impliedFormat":1},{"version":"5b6a189ba3a0befa1f5d9cb028eb9eec2af2089c32f04ff50e2411f63d70f25d","impliedFormat":1},{"version":"d6e73f8010935b7b4c7487b6fb13ea197cc610f0965b759bec03a561ccf8423a","impliedFormat":1},{"version":"174f3864e398f3f33f9a446a4f403d55a892aa55328cf6686135dfaf9e171657","impliedFormat":1},{"version":"824c76aec8d8c7e65769688cbee102238c0ef421ed6686f41b2a7d8e7e78a931","impliedFormat":1},{"version":"75b868be3463d5a8cfc0d9396f0a3d973b8c297401d00bfb008a42ab16643f13","impliedFormat":1},{"version":"15a234e5031b19c48a69ccc1607522d6e4b50f57d308ecb7fe863d44cd9f9eb3","impliedFormat":1},{"version":"d682336018141807fb602709e2d95a192828fcb8d5ba06dda3833a8ea98f69e3","impliedFormat":1},{"version":"6124e973eab8c52cabf3c07575204efc1784aca6b0a30c79eb85fe240a857efa","impliedFormat":1},{"version":"0d891735a21edc75df51f3eb995e18149e119d1ce22fd40db2b260c5960b914e","impliedFormat":1},{"version":"3b414b99a73171e1c4b7b7714e26b87d6c5cb03d200352da5342ab4088a54c85","impliedFormat":1},{"version":"4fbd3116e00ed3a6410499924b6403cc9367fdca303e34838129b328058ede40","impliedFormat":1},{"version":"b01bd582a6e41457bc56e6f0f9de4cb17f33f5f3843a7cf8210ac9c18472fb0f","impliedFormat":1},{"version":"0a437ae178f999b46b6153d79095b60c42c996bc0458c04955f1c996dc68b971","impliedFormat":1},{"version":"74b2a5e5197bd0f2e0077a1ea7c07455bbea67b87b0869d9786d55104006784f","impliedFormat":1},{"version":"4a7baeb6325920044f66c0f8e5e6f1f52e06e6d87588d837bdf44feb6f35c664","impliedFormat":1},{"version":"6dcf60530c25194a9ee0962230e874ff29d34c59605d8e069a49928759a17e0a","impliedFormat":1},{"version":"7274fbffbd7c9589d8d0ffba68157237afd5cecff1e99881ea3399127e60572f","impliedFormat":1},{"version":"1a42d2ec31a1fe62fdc51591768695ed4a2dc64c01be113e7ff22890bebb5e3f","impliedFormat":1},{"version":"1a82deef4c1d39f6882f28d275cad4c01f907b9b39be9cbc472fcf2cf051e05b","impliedFormat":1},{"version":"c5426dbfc1cf90532f66965a7aa8c1136a78d4d0f96d8180ecbfc11d7722f1a5","impliedFormat":1},{"version":"65a15fc47900787c0bd18b603afb98d33ede930bed1798fc984d5ebb78b26cf9","impliedFormat":1},{"version":"9d202701f6e0744adb6314d03d2eb8fc994798fc83d91b691b75b07626a69801","impliedFormat":1},{"version":"de9d2df7663e64e3a91bf495f315a7577e23ba088f2949d5ce9ec96f44fba37d","impliedFormat":1},{"version":"c7af78a2ea7cb1cd009cfb5bdb48cd0b03dad3b54f6da7aab615c2e9e9d570c5","impliedFormat":1},{"version":"1ee45496b5f8bdee6f7abc233355898e5bf9bd51255db65f5ff7ede617ca0027","impliedFormat":1},{"version":"0c7c947ff881c4274c0800deaa0086971e0bfe51f89a33bd3048eaa3792d4876","affectsGlobalScope":true,"impliedFormat":1},{"version":"db01d18853469bcb5601b9fc9826931cc84cc1a1944b33cad76fd6f1e3d8c544","affectsGlobalScope":true,"impliedFormat":1},{"version":"a8f8e6ab2fa07b45251f403548b78eaf2022f3c2254df3dc186cb2671fe4996d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fa6c12a7c0f6b84d512f200690bfc74819e99efae69e4c95c4cd30f6884c526e","impliedFormat":1},{"version":"f1c32f9ce9c497da4dc215c3bc84b722ea02497d35f9134db3bb40a8d918b92b","impliedFormat":1},{"version":"b73c319af2cc3ef8f6421308a250f328836531ea3761823b4cabbd133047aefa","affectsGlobalScope":true,"impliedFormat":1},{"version":"e433b0337b8106909e7953015e8fa3f2d30797cea27141d1c5b135365bb975a6","impliedFormat":1},{"version":"15b36126e0089bfef173ab61329e8286ce74af5e809d8a72edcafd0cc049057f","impliedFormat":1},{"version":"ddff7fc6edbdc5163a09e22bf8df7bef75f75369ebd7ecea95ba55c4386e2441","impliedFormat":1},{"version":"106c6025f1d99fd468fd8bf6e5bda724e11e5905a4076c5d29790b6c3745e50c","impliedFormat":1},{"version":"a57b1802794433adec9ff3fed12aa79d671faed86c49b09e02e1ac41b4f1d33a","impliedFormat":1},{"version":"ad10d4f0517599cdeca7755b930f148804e3e0e5b5a3847adce0f1f71bbccd74","impliedFormat":1},{"version":"1042064ece5bb47d6aba91648fbe0635c17c600ebdf567588b4ca715602f0a9d","impliedFormat":1},{"version":"c49469a5349b3cc1965710b5b0f98ed6c028686aa8450bcb3796728873eb923e","impliedFormat":1},{"version":"4a889f2c763edb4d55cb624257272ac10d04a1cad2ed2948b10ed4a7fda2a428","impliedFormat":1},{"version":"7bb79aa2fead87d9d56294ef71e056487e848d7b550c9a367523ee5416c44cfa","impliedFormat":1},{"version":"72d63643a657c02d3e51cd99a08b47c9b020a565c55f246907050d3c8a5e77fb","impliedFormat":1},{"version":"1d415445ea58f8033ba199703e55ff7483c52ac6742075b803bd3e7bbe9f5d61","impliedFormat":1},{"version":"d6406c629bb3efc31aedb2de809bef471e475c86c7e67f3ef9b676b5d7e0d6b2","impliedFormat":1},{"version":"27ff4196654e6373c9af16b6165120e2dd2169f9ad6abb5c935af5abd8c7938c","impliedFormat":1},{"version":"24428762d0c97b44c4784d28eee9556547167c4592d20d542a79243f7ca6a73f","impliedFormat":1},{"version":"8c030e515014c10a2b98f9f48408e3ba18023dfd3f56e3312c6c2f3ae1f55a16","impliedFormat":1},{"version":"dafc31e9e8751f437122eb8582b93d477e002839864410ff782504a12f2a550c","impliedFormat":1},{"version":"754498c5208ce3c5134f6eabd49b25cf5e1a042373515718953581636491f3c3","impliedFormat":1},{"version":"9c82171d836c47486074e4ca8e059735bf97b205e70b196535b5efd40cbe1bc5","impliedFormat":1},{"version":"f56bdc6884648806d34bc66d31cdb787c4718d04105ce2cd88535db214631f82","impliedFormat":1},{"version":"633d58a237f4bb25ec7d565e4ffa32cecdcee8660ac12189c4351c52557cee9e","impliedFormat":1},{"version":"2e4f37ffe8862b14d8e24ae8763daaa8340c0df0b859d9a9733def0eee7562d9","impliedFormat":1},{"version":"13283350547389802aa35d9f2188effaeac805499169a06ef5cd77ce2a0bd63f","impliedFormat":1},{"version":"ce791f6ea807560f08065d1af6014581eeb54a05abd73294777a281b6dfd73c2","impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","impliedFormat":1},{"version":"49f95e989b4632c6c2a578cc0078ee19a5831832d79cc59abecf5160ea71abad","impliedFormat":1},{"version":"9666533332f26e8995e4d6fe472bdeec9f15d405693723e6497bf94120c566c8","impliedFormat":1},{"version":"ce0df82a9ae6f914ba08409d4d883983cc08e6d59eb2df02d8e4d68309e7848b","impliedFormat":1},{"version":"796273b2edc72e78a04e86d7c58ae94d370ab93a0ddf40b1aa85a37a1c29ecd7","impliedFormat":1},{"version":"5df15a69187d737d6d8d066e189ae4f97e41f4d53712a46b2710ff9f8563ec9f","impliedFormat":1},{"version":"e17cd049a1448de4944800399daa4a64c5db8657cc9be7ef46be66e2a2cd0e7c","impliedFormat":1},{"version":"43fa6ea8714e18adc312b30450b13562949ba2f205a1972a459180fa54471018","impliedFormat":1},{"version":"6e89c2c177347d90916bad67714d0fb473f7e37fb3ce912f4ed521fe2892cd0d","impliedFormat":1},{"version":"43ba4f2fa8c698f5c304d21a3ef596741e8e85a810b7c1f9b692653791d8d97a","impliedFormat":1},{"version":"4d4927cbee21750904af7acf940c5e3c491b4d5ebc676530211e389dd375607a","impliedFormat":1},{"version":"72105519d0390262cf0abe84cf41c926ade0ff475d35eb21307b2f94de985778","impliedFormat":1},{"version":"8a97e578a9bc40eb4f1b0ca78f476f2e9154ecbbfd5567ee72943bab37fc156a","impliedFormat":1},{"version":"c857e0aae3f5f444abd791ec81206020fbcc1223e187316677e026d1c1d6fe08","impliedFormat":1},{"version":"ccf6dd45b708fb74ba9ed0f2478d4eb9195c9dfef0ff83a6092fa3cf2ff53b4f","impliedFormat":1},{"version":"2d7db1d73456e8c5075387d4240c29a2a900847f9c1bff106a2e490da8fbd457","impliedFormat":1},{"version":"2b15c805f48e4e970f8ec0b1915f22d13ca6212375e8987663e2ef5f0205e832","impliedFormat":1},{"version":"f22d05663d873ee7a600faf78abb67f3f719d32266803440cf11d5db7ac0cab2","impliedFormat":1},{"version":"d93c544ad20197b3976b0716c6d5cd5994e71165985d31dcab6e1f77feb4b8f2","impliedFormat":1},{"version":"35069c2c417bd7443ae7c7cafd1de02f665bf015479fec998985ffbbf500628c","impliedFormat":1},{"version":"a8b1c79a833ee148251e88a2553d02ce1641d71d2921cce28e79678f3d8b96aa","impliedFormat":1},{"version":"126d4f950d2bba0bd45b3a86c76554d4126c16339e257e6d2fabf8b6bf1ce00c","impliedFormat":1},{"version":"7e0b7f91c5ab6e33f511efc640d36e6f933510b11be24f98836a20a2dc914c2d","impliedFormat":1},{"version":"045b752f44bf9bbdcaffd882424ab0e15cb8d11fa94e1448942e338c8ef19fba","impliedFormat":1},{"version":"2894c56cad581928bb37607810af011764a2f511f575d28c9f4af0f2ef02d1ab","impliedFormat":1},{"version":"0a72186f94215d020cb386f7dca81d7495ab6c17066eb07d0f44a5bf33c1b21a","impliedFormat":1},{"version":"2d3cc2211f352f46ea6b7cf2c751c141ffcdf514d6e7ae7ee20b7b6742da313f","impliedFormat":1},{"version":"c75445151ff8b77d9923191efed7203985b1a9e09eccf4b054e7be864e27923d","impliedFormat":1},{"version":"0aedb02516baf3e66b2c1db9fef50666d6ed257edac0f866ea32f1aa05aa474f","impliedFormat":1},{"version":"fa8a8fbf91ee2a4779496225f0312aac6635b0f21aa09cdafa4283fe32d519c5","affectsGlobalScope":true,"impliedFormat":1},{"version":"0e8aef93d79b000deb6ec336b5645c87de167168e184e84521886f9ecc69a4b5","impliedFormat":1},{"version":"56ccb49443bfb72e5952f7012f0de1a8679f9f75fc93a5c1ac0bafb28725fc5f","impliedFormat":1},{"version":"20fa37b636fdcc1746ea0738f733d0aed17890d1cd7cb1b2f37010222c23f13e","impliedFormat":1},{"version":"d90b9f1520366d713a73bd30c5a9eb0040d0fb6076aff370796bc776fd705943","impliedFormat":1},{"version":"88e9caa9c5d2ba629240b5913842e7c57c5c0315383b8dc9d436ef2b60f1c391","impliedFormat":1},{"version":"19df3488557c2fc9b4d8f0bac0fd20fb59aa19dec67c81f93813951a81a867f8","affectsGlobalScope":true,"impliedFormat":1},{"version":"a15cf91ab29d3667801562a95730c5f0d96e1d87dffa00a8a91da0002e89fd2d","affectsGlobalScope":true,"impliedFormat":1},{"version":"bef86adb77316505c6b471da1d9b8c9e428867c2566270e8894d4d773a1c4dc2","impliedFormat":1},{"version":"de7052bfee2981443498239a90c04ea5cc07065d5b9bb61b12cb6c84313ad4ef","impliedFormat":1},{"version":"a3e7d932dc9c09daa99141a8e4800fc6c58c625af0d4bbb017773dc36da75426","impliedFormat":1},{"version":"43e96a3d5d1411ab40ba2f61d6a3192e58177bcf3b133a80ad2a16591611726d","impliedFormat":1},{"version":"4a2edd238d9104eac35b60d727f1123de5062f452b70ed8e0366cb36387dfdfd","impliedFormat":1},{"version":"ca921bf56756cb6fe957f6af693a35251b134fb932dc13f3dfff0bb7106f80b4","impliedFormat":1},{"version":"fee92c97f1aa59eb7098a0cc34ff4df7e6b11bae71526aca84359a2575f313d8","impliedFormat":1},{"version":"0bd0297484aacea217d0b76e55452862da3c5d9e33b24430e0719d1161657225","impliedFormat":1},{"version":"2ab6d334bcbf2aff3acfc4fd8c73ecd82b981d3c3aa47b3f3b89281772286904","impliedFormat":1},{"version":"d07cbc787a997d83f7bde3877fec5fb5b12ce8c1b7047eb792996ed9726b4dde","impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","impliedFormat":1},{"version":"4805f6161c2c8cefb8d3b8bd96a080c0fe8dbc9315f6ad2e53238f9a79e528a6","impliedFormat":1},{"version":"b83cb14474fa60c5f3ec660146b97d122f0735627f80d82dd03e8caa39b4388c","impliedFormat":1},{"version":"f374cb24e93e7798c4d9e83ff872fa52d2cdb36306392b840a6ddf46cb925cb6","impliedFormat":1},{"version":"49179c6a23701c642bd99abe30d996919748014848b738d8e85181fc159685ff","impliedFormat":1},{"version":"b73cbf0a72c8800cf8f96a9acfe94f3ad32ca71342a8908b8ae484d61113f647","impliedFormat":1},{"version":"bae6dd176832f6423966647382c0d7ba9e63f8c167522f09a982f086cd4e8b23","impliedFormat":1},{"version":"20865ac316b8893c1a0cc383ccfc1801443fbcc2a7255be166cf90d03fac88c9","impliedFormat":1},{"version":"c9958eb32126a3843deedda8c22fb97024aa5d6dd588b90af2d7f2bfac540f23","impliedFormat":1},{"version":"461d0ad8ae5f2ff981778af912ba71b37a8426a33301daa00f21c6ccb27f8156","impliedFormat":1},{"version":"e927c2c13c4eaf0a7f17e6022eee8519eb29ef42c4c13a31e81a611ab8c95577","impliedFormat":1},{"version":"fcafff163ca5e66d3b87126e756e1b6dfa8c526aa9cd2a2b0a9da837d81bbd72","impliedFormat":1},{"version":"70246ad95ad8a22bdfe806cb5d383a26c0c6e58e7207ab9c431f1cb175aca657","impliedFormat":1},{"version":"f00f3aa5d64ff46e600648b55a79dcd1333458f7a10da2ed594d9f0a44b76d0b","impliedFormat":1},{"version":"772d8d5eb158b6c92412c03228bd9902ccb1457d7a705b8129814a5d1a6308fc","impliedFormat":1},{"version":"45490817629431853543adcb91c0673c25af52a456479588b6486daba34f68bb","impliedFormat":1},{"version":"802e797bcab5663b2c9f63f51bdf67eff7c41bc64c0fd65e6da3e7941359e2f7","impliedFormat":1},{"version":"8b4327413e5af38cd8cb97c59f48c3c866015d5d642f28518e3a891c469f240e","impliedFormat":1},{"version":"8514c62ce38e58457d967e9e73f128eedc1378115f712b9eef7127f7c88f82ae","impliedFormat":1},{"version":"f1289e05358c546a5b664fbb35a27738954ec2cc6eb4137350353099d154fc62","impliedFormat":1},{"version":"4b20fcf10a5413680e39f5666464859fc56b1003e7dfe2405ced82371ebd49b6","impliedFormat":1},{"version":"1d17ba45cfbe77a9c7e0df92f7d95f3eefd49ee23d1104d0548b215be56945ad","impliedFormat":1},{"version":"f7d628893c9fa52ba3ab01bcb5e79191636c4331ee5667ecc6373cbccff8ae12","impliedFormat":1},{"version":"5b2323ca2d1bd97e1f32f09452908e015b012e0e4f958f649cbe0c8989a3fb4f","impliedFormat":1},{"version":"9f5a0f3ed33e363b7393223ba4f4af15c13ce94fe3dbdaa476afd2437553a7dd","impliedFormat":1},{"version":"46273e8c29816125d0d0b56ce9a849cc77f60f9a5ba627447501d214466f0ff3","impliedFormat":1},{"version":"d663134457d8d669ae0df34eabd57028bddc04fc444c4bc04bc5215afc91e1f4","impliedFormat":1},{"version":"985153f0deb9b4391110331a2f0c114019dbea90cba5ca68a4107700796e0d75","impliedFormat":1},{"version":"3af3584f79c57853028ef9421ec172539e1fe01853296dc05a9d615ade4ffaf6","impliedFormat":1},{"version":"f82579d87701d639ff4e3930a9b24f4ee13ca74221a9a3a792feb47f01881a9c","impliedFormat":1},{"version":"d7e5d5245a8ba34a274717d085174b2c9827722778129b0081fefd341cca8f55","impliedFormat":1},{"version":"d9d32f94056181c31f553b32ce41d0ef75004912e27450738d57efcd2409c324","impliedFormat":1},{"version":"752513f35f6cff294ffe02d6027c41373adf7bfa35e593dbfd53d95c203635ee","impliedFormat":1},{"version":"6c800b281b9e89e69165fd11536195488de3ff53004e55905e6c0059a2d8591e","impliedFormat":1},{"version":"7d4254b4c6c67a29d5e7f65e67d72540480ac2cfb041ca484847f5ae70480b62","impliedFormat":1},{"version":"1a7e2ea171726446850ec72f4d1525d547ff7e86724cc9e7eec509725752a758","impliedFormat":1},{"version":"8c901126d73f09ecdea4785e9a187d1ac4e793e07da308009db04a7283ec2f37","impliedFormat":1},{"version":"db97922b767bd2675fdfa71e08b49c38b7d2c847a1cc4a7274cb77be23b026f1","impliedFormat":1},{"version":"aab290b8e4b7c399f2c09b957666fc95335eb4522b2dd9ead1bf0cb64da6d6ee","impliedFormat":1},{"version":"94fe3281392e1015b22f39535878610b4fa6f1388dc8d78746be3bc4e4bb8950","impliedFormat":1},{"version":"2652448ac55a2010a1f71dd141f828b682298d39728f9871e1cdf8696ef443fd","impliedFormat":1},{"version":"06c25ddfc2242bd06c19f66c9eae4c46d937349a267810f89783680a1d7b5259","impliedFormat":1},{"version":"120599fd965257b1f4d0ff794bc696162832d9d8467224f4665f713a3119078b","impliedFormat":1},{"version":"5433f33b0a20300cca35d2f229a7fc20b0e8477c44be2affeb21cb464af60c76","impliedFormat":1},{"version":"db036c56f79186da50af66511d37d9fe77fa6793381927292d17f81f787bb195","impliedFormat":1},{"version":"bd4131091b773973ca5d2326c60b789ab1f5e02d8843b3587effe6e1ea7c9d86","impliedFormat":1},{"version":"c7f6485931085bf010fbaf46880a9b9ec1a285ad9dc8c695a9e936f5a48f34b4","impliedFormat":1},{"version":"14f6b927888a1112d662877a5966b05ac1bf7ed25d6c84386db4c23c95a5363b","impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","impliedFormat":1},{"version":"0427df5c06fafc5fe126d14b9becd24160a288deff40e838bfbd92a35f8d0d00","impliedFormat":1},{"version":"90c54a02432d04e4246c87736e53a6a83084357acfeeba7a489c5422b22f5c7a","impliedFormat":1},{"version":"49c346823ba6d4b12278c12c977fb3a31c06b9ca719015978cb145eb86da1c61","impliedFormat":1},{"version":"bfac6e50eaa7e73bb66b7e052c38fdc8ccfc8dbde2777648642af33cf349f7f1","impliedFormat":1},{"version":"92f7c1a4da7fbfd67a2228d1687d5c2e1faa0ba865a94d3550a3941d7527a45d","impliedFormat":1},{"version":"f53b120213a9289d9a26f5af90c4c686dd71d91487a0aa5451a38366c70dc64b","impliedFormat":1},{"version":"83fe880c090afe485a5c02262c0b7cdd76a299a50c48d9bde02be8e908fb4ae6","impliedFormat":1},{"version":"0a372c2d12a259da78e21b25974d2878502f14d89c6d16b97bd9c5017ab1bc12","impliedFormat":1},{"version":"57d67b72e06059adc5e9454de26bbfe567d412b962a501d263c75c2db430f40e","impliedFormat":1},{"version":"6511e4503cf74c469c60aafd6589e4d14d5eb0a25f9bf043dcbecdf65f261972","impliedFormat":1},{"version":"ec1ca97598eda26b7a5e6c8053623acbd88e43be7c4d29c77ccd57abc4c43999","impliedFormat":1},{"version":"6e2261cd9836b2c25eecb13940d92c024ebed7f8efe23c4b084145cd3a13b8a6","impliedFormat":1},{"version":"a67b87d0281c97dfc1197ef28dfe397fc2c865ccd41f7e32b53f647184cc7307","impliedFormat":1},{"version":"771ffb773f1ddd562492a6b9aaca648192ac3f056f0e1d997678ff97dbb6bf9b","impliedFormat":1},{"version":"232f70c0cf2b432f3a6e56a8dc3417103eb162292a9fd376d51a3a9ea5fbbf6f","impliedFormat":1},{"version":"a47e6d954d22dd9ebb802e7e431b560ed7c581e79fb885e44dc92ed4f60d4c07","impliedFormat":1},{"version":"f019e57d2491c159d47a107fd90219a1734bdd2e25cd8d1db3c8fae5c6b414c4","impliedFormat":1},{"version":"8a0e762ceb20c7e72504feef83d709468a70af4abccb304f32d6b9bac1129b2c","impliedFormat":1},{"version":"d1c9bf292a54312888a77bb19dba5e2503ad803f5393beafd45d78d2f4fe9b48","impliedFormat":1},{"version":"9252d498a77517aab5d8d4b5eb9d71e4b225bbc7123df9713e08181de63180f6","impliedFormat":1},{"version":"cb8d8ef7b9ce8ed3e6f1c814fcbf3f90dab0cb8863079236784fc350746e27c4","impliedFormat":1},{"version":"35e6379c3f7cb27b111ad4c1aa69538fd8e788ab737b8ff7596a1b40e96f4f90","impliedFormat":1},{"version":"1fffe726740f9787f15b532e1dc870af3cd964dbe29e191e76121aa3dd8693f2","impliedFormat":1},{"version":"3be035da7bee86b4c3abf392e0edaa44fc6e45092995eefe36b39118c8a84068","affectsGlobalScope":true,"impliedFormat":1},{"version":"8f828825d077c2fa0ea606649faeb122749273a353daab23924fe674e98ba44c","impliedFormat":1},{"version":"2896c2e673a5d3bd9b4246811f79486a073cbb03950c3d252fba10003c57411a","impliedFormat":1},{"version":"616775f16134fa9d01fc677ad3f76e68c051a056c22ab552c64cc281a9686790","impliedFormat":1},{"version":"65c24a8baa2cca1de069a0ba9fba82a173690f52d7e2d0f1f7542d59d5eb4db0","impliedFormat":1},{"version":"f9fe6af238339a0e5f7563acee3178f51db37f32a2e7c09f85273098cee7ec49","impliedFormat":1},{"version":"407a06ba04eede4074eec470ecba2784cbb3bf4e7de56833b097dd90a2aa0651","impliedFormat":1},{"version":"77e71242e71ebf8528c5802993697878f0533db8f2299b4d36aa015bae08a79c","impliedFormat":1},{"version":"98a787be42bd92f8c2a37d7df5f13e5992da0d967fab794adbb7ee18370f9849","impliedFormat":1},{"version":"5c96bad5f78466785cdad664c056e9e2802d5482ca5f862ed19ba34ffbb7b3a4","impliedFormat":1},{"version":"81d8603ac527e75cfec72bb9391228b58f161c2b33514a9d814c7f3ebd3ef466","impliedFormat":1},{"version":"5f3dc10ae646f375776b4e028d2bed039a93eebbba105694d8b910feebbe8b9c","impliedFormat":1},{"version":"bb0cd7862b72f5eba39909c9889d566e198fcaddf7207c16737d0c2246112678","impliedFormat":1},{"version":"4545c1a1ceca170d5d83452dd7c4994644c35cf676a671412601689d9a62da35","impliedFormat":1},{"version":"320f4091e33548b554d2214ce5fc31c96631b513dffa806e2e3a60766c8c49d9","impliedFormat":1},{"version":"a2d648d333cf67b9aeac5d81a1a379d563a8ffa91ddd61c6179f68de724260ff","impliedFormat":1},{"version":"d90d5f524de38889d1e1dbc2aeef00060d779f8688c02766ddb9ca195e4a713d","impliedFormat":1},{"version":"a3f41ed1b4f2fc3049394b945a68ae4fdefd49fa1739c32f149d32c0545d67f5","impliedFormat":1},{"version":"bad68fd0401eb90fe7da408565c8aee9c7a7021c2577aec92fa1382e8876071a","impliedFormat":1},{"version":"47699512e6d8bebf7be488182427189f999affe3addc1c87c882d36b7f2d0b0e","impliedFormat":1},{"version":"fec01479923e169fb52bd4f668dbeef1d7a7ea6e6d491e15617b46f2cacfa37d","impliedFormat":1},{"version":"8a8fb3097ba52f0ae6530ec6ab34e43e316506eb1d9aa29420a4b1e92a81442d","impliedFormat":1},{"version":"44e09c831fefb6fe59b8e65ad8f68a7ecc0e708d152cfcbe7ba6d6080c31c61e","impliedFormat":1},{"version":"1c0a98de1323051010ce5b958ad47bc1c007f7921973123c999300e2b7b0ecc0","impliedFormat":1},{"version":"4655709c9cb3fd6db2b866cab7c418c40ed9533ce8ea4b66b5f17ec2feea46a9","impliedFormat":1},{"version":"87affad8e2243635d3a191fa72ef896842748d812e973b7510a55c6200b3c2a4","impliedFormat":1},{"version":"ad036a85efcd9e5b4f7dd5c1a7362c8478f9a3b6c3554654ca24a29aa850a9c5","impliedFormat":1},{"version":"fedebeae32c5cdd1a85b4e0504a01996e4a8adf3dfa72876920d3dd6e42978e7","impliedFormat":1},{"version":"3eecb25bb467a948c04874d70452b14ae7edb707660aac17dc053e42f2088b00","impliedFormat":1},{"version":"cdf21eee8007e339b1b9945abf4a7b44930b1d695cc528459e68a3adc39a622e","impliedFormat":1},{"version":"330896c1a2b9693edd617be24fbf9e5895d6e18c7955d6c08f028f272b37314d","impliedFormat":1},{"version":"1d9c0a9a6df4e8f29dc84c25c5aa0bb1da5456ebede7a03e03df08bb8b27bae6","impliedFormat":1},{"version":"84380af21da938a567c65ef95aefb5354f676368ee1a1cbb4cae81604a4c7d17","impliedFormat":1},{"version":"1af3e1f2a5d1332e136f8b0b95c0e6c0a02aaabd5092b36b64f3042a03debf28","impliedFormat":1},{"version":"30d8da250766efa99490fc02801047c2c6d72dd0da1bba6581c7e80d1d8842a4","impliedFormat":1},{"version":"03566202f5553bd2d9de22dfab0c61aa163cabb64f0223c08431fb3fc8f70280","impliedFormat":1},{"version":"5f0292a40df210ab94b9fb44c8b775c51e96777e14e073900e392b295ca1061b","impliedFormat":1},{"version":"bc9ee0192f056b3d5527bcd78dc3f9e527a9ba2bdc0a2c296fbc9027147df4b2","impliedFormat":1},{"version":"8627ad129bcf56e82adff0ab5951627c993937aa99f5949c33240d690088b803","impliedFormat":1},{"version":"1de80059b8078ea5749941c9f863aa970b4735bdbb003be4925c853a8b6b4450","impliedFormat":1},{"version":"1d079c37fa53e3c21ed3fa214a27507bda9991f2a41458705b19ed8c2b61173d","impliedFormat":1},{"version":"5bf5c7a44e779790d1eb54c234b668b15e34affa95e78eada73e5757f61ed76a","impliedFormat":1},{"version":"5835a6e0d7cd2738e56b671af0e561e7c1b4fb77751383672f4b009f4e161d70","impliedFormat":1},{"version":"5c634644d45a1b6bc7b05e71e05e52ec04f3d73d9ac85d5927f647a5f965181a","impliedFormat":1},{"version":"4b7f74b772140395e7af67c4841be1ab867c11b3b82a51b1aeb692822b76c872","impliedFormat":1},{"version":"27be6622e2922a1b412eb057faa854831b95db9db5035c3f6d4b677b902ab3b7","impliedFormat":1},{"version":"a68d4b3182e8d776cdede7ac9630c209a7bfbb59191f99a52479151816ef9f9e","impliedFormat":99},{"version":"39644b343e4e3d748344af8182111e3bbc594930fff0170256567e13bbdbebb0","impliedFormat":99},{"version":"ed7fd5160b47b0de3b1571c5c5578e8e7e3314e33ae0b8ea85a895774ee64749","impliedFormat":99},{"version":"63a7595a5015e65262557f883463f934904959da563b4f788306f699411e9bac","impliedFormat":1},{"version":"ecbaf0da125974be39c0aac869e403f72f033a4e7fd0d8cd821a8349b4159628","impliedFormat":1},{"version":"4ba137d6553965703b6b55fd2000b4e07ba365f8caeb0359162ad7247f9707a6","impliedFormat":1},{"version":"ceec3c81b2d81f5e3b855d9367c1d4c664ab5046dff8fd56552df015b7ccbe8f","affectsGlobalScope":true,"impliedFormat":1},{"version":"8fac4a15690b27612d8474fb2fc7cc00388df52d169791b78d1a3645d60b4c8b","affectsGlobalScope":true,"impliedFormat":1},{"version":"064ac1c2ac4b2867c2ceaa74bbdce0cb6a4c16e7c31a6497097159c18f74aa7c","impliedFormat":1},{"version":"3dc14e1ab45e497e5d5e4295271d54ff689aeae00b4277979fdd10fa563540ae","impliedFormat":1},{"version":"1d63055b690a582006435ddd3aa9c03aac16a696fac77ce2ed808f3e5a06efab","impliedFormat":1},{"version":"b789bf89eb19c777ed1e956dbad0925ca795701552d22e68fd130a032008b9f9","impliedFormat":1},"85ae5aee75f011967cf2d25cbc342f62d69314e9d925f7f4aa3456fc2cffcca6",{"version":"d238747e88c8c708451fa6f01ca63893f0396c43d072ec0c7c61f63eaf201789","impliedFormat":99},{"version":"f3d73901e4383f84add3a98573a2738ac5d0cbc648697c302b69b26b75ee140f","impliedFormat":99},{"version":"4acccd722f80edbf731840b8363e17f18f679434a4578ee44f1d3b70c67d858c","impliedFormat":99},{"version":"b3fae73d7dd47d6be5831e14cfa75be9ad8ad5da6ca1f1777bb30be81d744d2b","impliedFormat":99},{"version":"c2ea0cb5e8f8b454f942b3da57e88327cef84016971b28a6b0937475fc815f83","signature":"9c0eeb8de8dfdfb63ebcef09564c84ae1f6b6187c8e8e274fc5b0ee0a2c8432b"},{"version":"03981a348c4473a6a0bbaf606b651043860c8fc3efd7786bc02c4a1e05bf37b1","impliedFormat":99},{"version":"fb82344c312fd920a25c33ae4e0381023f46ef1432775cda1d9ab50077e639a8","impliedFormat":99},{"version":"e0037499acbd201cd60956a4d54ee45e4953cd60f80a2d8acb1bd13c9b134842","impliedFormat":99},{"version":"92339882b71c2ec1f48f82fe70d4ccd003822c4959169f0bab4f1ed0e99dd486","impliedFormat":99},{"version":"d627151917233bf28874a54e2478a6c5e15ef92b7aa8ed0500ca663d1510ce26","impliedFormat":99},{"version":"b83ed62180881087ad8d0bbcaf9c1e18c1bf54c2e7746aa14091334ecf5064f1","signature":"f16c45978bca52f9e6e15e30cb2a644c14a8f12ef7e7883955c0e855a1461639"},{"version":"1506833b09415d814e6904736b77e3cfa9c314d3e8e9608a45402b45cc1d445e","signature":"b5921651dd7f84bf735c77ba7f97a48389e53930d65916f7ac64ae0423c39d81"},{"version":"3f20dbe66f579955935fd0087811cb36ddc84114b894899994f2c540859b645b","signature":"86bd58c9db702e6d85d09d5f2c048e41d1a46879f779e682616e2566ea2db90b"},{"version":"52d0b34f865c3261d992c38f235278e45d1cc5b0706df8a3833bb65c02c539ee","signature":"70b83359a8592fd5bd75c234e3f94f3190a7d16a5d98c543e5fa6fa09a922637"},{"version":"1d4fea28255fec3900e4fa87b50f964dcb2f8c4b57db18fbacb0622fa76a66c3","signature":"d1560f98cd525aba422fab9d0eab88a99d688535f9fe3e9571ad07107150658e"},{"version":"a6a73e063520c9b6f5366304198dd85932f8883a4a6af92b9593a759e4e1c915","signature":"89aad0b689a67c22ccf4d9286189d9100d12392a33cc1e3e4c82e33b0f5532ae"},{"version":"58347b71d621efa402f085188b5eb1d50ed2e5d59a8244d93fef9bc348132696","signature":"52d8766ccab59f3b1886174386c40c467d39ec131d95db874278e5caa0435ff6"},{"version":"dcd039568bf735bef587e81103259821f4075276b00b09b0a953bdd3993382b3","signature":"07b872bf818081b560e585efa3abe6791f40a56e690bedde9cb5e6533bc9dd59"},{"version":"18c8fa37685cf18ac8661cdd8ef2e6cb228d1a7f018988afee3853c1f2d70dd1","signature":"ab4f78ab1262fc757477b389dc41e2059a98fbfc2f126e908ad968e24edf2208"},{"version":"73cd7d6e4cf95533c4773d70a053560ede25412e8dc3fe78899295d2772f5256","signature":"9cf6dcf6fdcc94f8e2883f3b5e55cafe601eff468954d53710503bd1c2877c65"},{"version":"a7d595f18175110b5d8d0fa0d84e7353089073715a2260651fde382c1d937cd5","signature":"43bf088ea02b5e1c3ed20cb3c09f838865b8cf7541483947a7d67d32b92c43fe"},{"version":"825d8bf942dbc5fdd8da71cef6e8f75608e81e19de6176fbeebdbc4ac8a8dd75","signature":"dfd5af6b0313b9befc7d45c6ffa3f928cd0f2dba7b7ebec0b46f6d664d05bb66"},{"version":"7983641709059d23a092a9282d84aa0561c299f34524397e2486b9369df7746b","signature":"3723342edc83c5309506073f6c0231da3b44ebaf9d57ff80b817d29655ecd33e"},{"version":"053a7a1a336d0882da361b3c63b7b48ae4bf284ae7bb0fa3b5c66f2174625413","signature":"d11c33d82518e60e038f5993fe8dc94b15fc2e6feead064782042369b812e74e"},{"version":"cfbe250c72daafde65b81a94d66b65b2ddc9a1d4a6a8a0eb4cb1232585e29892","signature":"7f5929c9df2d83e29fb75f2d9959c3195425bfa56e341df1c46dfbed4d774717"},{"version":"37fdea562c838a09547d37927c74eeaac84cac0b07a48ae62e45c4f193d3f1d2","signature":"5eb024f17d5b963ed6f7f8f618c6b8539e73e229bc069b6525d67407fa70f56f"},{"version":"81942a3fd07d235c8be95afbb798f8e1228893e015b24970eaf2fdf2b4d7d4c4","signature":"0ce99cf8b7c831aecd35edffaf5e2833b891c5ae0870767779cbb73bd8d49b82"},{"version":"c1f887932e7b4c903a217018a90da79d09b84e40de2fd7efac3eb9439ca72702","signature":"b51a28810590d2e1702f7b2f87379f777cbe22fae892b5101c09d1b87b492bb3"},{"version":"4f5393f847df4a59dec6db36c86f1f3227c89f8ff5a41a13e96ee381fb578ade","signature":"97e8b5455bb1a3c1a0fb8b2234bd5d71deb08e860406d5f8f01b93c8c2c27e98"},{"version":"f8a1781244d0365c586fd2836a6489937db097f699f0afe255c14f2118ead13d","signature":"82ea000610fcca063cd4626d04ca441f65445309fc9f908330b6b91cdd89328f"},{"version":"76b78ba4d067c913b91c58631d21f779ddb5d52838a4e3304292d0d22f33d0cf","signature":"2580fc580c698686de6eec861a57e00e1d65175bbf09aad3632473a56508e0fe"},"2507d545427fb45bf8515cef9550802b025d10960aa8aa88188cb60788e6e608",{"version":"493b55f19c267a21ff59698bf8bef4903756a9d743be8ac9cc94e234334e4345","signature":"f0155ac4d1b089ce94de259b4c1536fd2b4d6c4276773a776d37577630287d10"},{"version":"a346701ad6dcdaa58e388fe0995fc5304c09c395b8cba68ed872780f8c102004","impliedFormat":99},{"version":"c57b441e0c0a9cbdfa7d850dae1f8a387d6f81cbffbc3cd0465d530084c2417d","impliedFormat":99},{"version":"2fbe402f0ee5aa8ab55367f88030f79d46211c0a0f342becaa9f648bf8534e9d","impliedFormat":1},{"version":"b94258ef37e67474ac5522e9c519489a55dcb3d4a8f645e335fc68ea2215fe88","impliedFormat":1},{"version":"8b15d05f236e8537d3ecbe4422ce46bf0de4e4cd40b2f909c91c5818af4ff17a","impliedFormat":1},{"version":"982bf16c5d13d9ab58c3d3a6485c39fe44f3796f8f5163d880f8818432b22ee0","signature":"512960c0e955a2324b34354dac25e3e4d431a1af4cd33077935eda5e95c8b7e1"},{"version":"d5793bd9966c2082ad4ec484f7e5a699e2a94d732b1ac2b3b3899535f53ae255","signature":"c0a523ae4fc5a14fb42b9e2212b16e13c8c8494ec020cc1e52adc1bf84e7fb05"},{"version":"1100f3eab8432605642b8cead539c936179c53c905b212b488b295db2bf6e177","signature":"fe4ceb08d9067ccba5e917a320e68f5b6c3e371eeb6cfc352a1035b278585100"},{"version":"f7aa45a83c6b92541437a989e435bc06234dd42d445831d3ddb9df6e6d444260","impliedFormat":1},"7426cfc9f7ea4b9f674c92859a323beda8ef85785cafd97d5cd71e0c84adc04e",{"version":"d1f1e0d62cb8d8d1e04c26e14de842d8a151f75812d81b046c65b5d1fe8e4b27","signature":"512960c0e955a2324b34354dac25e3e4d431a1af4cd33077935eda5e95c8b7e1"},{"version":"8329a0b50f818665f1aca05ab93c16b103178b463f2949234ee4416bbc7d3fe2","signature":"1f8bb24b9445ba23ba7975442082768beedd19cb8e032b538ee8714acdd20108"},"35f7dff7d58c1c02dbda8e4f74ea97ae96084da6b108d28e445866036f3197c0","7fe0b310644a21bbe1b464223a79d2f653e8d74d1c09f4b15c2905fa045e5174",{"version":"5b066e9723a0825f49eb8f3d0cb54fa1afde3870a0237a5a254f4a42a358fb6e","signature":"49df9a46ebdc372b3fa4df4ccc8425c638bd56e72dee2cfff3ea1e97d2c794de"},{"version":"6aa2859da46f726a22040725e684ea964d7469a6b26f1c0a6634bb65e79062b0","impliedFormat":99},{"version":"04e74bcb4dcffb60f68e28996a310f39576386db51ee93f1a2a52efad9e0cc5a","signature":"f15525c528f2fb2d83814b552f1f477d8d44572672982ed99da742bcd9b77646"},"f10b176063a412d211163321a18fab7fe077d5f39cde3c23d198ee36a1d9ee75",{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"71acd198e19fa38447a3cbc5c33f2f5a719d933fccf314aaff0e8b0593271324","impliedFormat":99},{"version":"4db2dc92c77cf9107c5413328b05788d20525bc0cd58d92250c8ec40371266a9","signature":"7711adec5eed0b4cb819cae62ea768204c4bd260fa3ee1aceb586358db5f6aa0"},{"version":"a9373d52584b48809ffd61d74f5b3dfd127da846e3c4ee3c415560386df3994b","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"7ec047b73f621c526468517fea779fec2007dd05baa880989def59126c98ef79","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"8dd450de6d756cee0761f277c6dc58b0b5a66b8c274b980949318b8cad26d712","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"6b5f886fe41e2e767168e491fe6048398ed6439d44e006d9f51cc31265f08978","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"56a87e37f91f5625eb7d5f8394904f3f1e2a90fb08f347161dc94f1ae586bdd0","impliedFormat":99},{"version":"6b863463764ae572b9ada405bf77aac37b5e5089a3ab420d0862e4471051393b","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"904d6ad970b6bd825449480488a73d9b98432357ab38cf8d31ffd651ae376ff5","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"1179ef8174e0e4a09d35576199df04803b1db17c0fb35b9326442884bc0b0cce","impliedFormat":99},{"version":"43a882fde54ca685bcb35d77e588846ff3391155e320436b6c271af7f8de1a7d","signature":"d77c731b000c1abdf6097fdc49718bdab8e373595417be6f898c3d83eedaea1e"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"dfcf16e716338e9fe8cf790ac7756f61c85b83b699861df970661e97bf482692","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"2a00cea77767cb26393ee6f972fd32941249a0d65b246bfcb20a780a2b919a21","impliedFormat":99},{"version":"98007168d58f43df4d2428e25ba09e0ee7ace257b3aa1a48fb53cdd33e428c7f","signature":"8aed813c358a5eb08feb1e4808c7f4a6c12b247ad6b2b16f17cd04f94992cf28"},{"version":"8dedd59e5ce4288bb28f7b50cc8716d9b23487e08a13bc399bb53381de9fb786","signature":"daa157691b1d671ea52f53a1128f2c339e01062d2d59c8a11f2e6b8f245cc922"},{"version":"d0e53c82110ea048b94ce6cbb02c438e434236cf7a729bde5e41e35d2f7e9db2","signature":"b6248c081835f1aab18a92a4d06b8a9fe0077edec8062f3b3b4ee05d8a58da6c"},"1ff3502399e9a2ae11018d06780a2b1da7b3f5bdd026e361b939fdd183169ca2",{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"68b6a7501a56babd7bcd840e0d638ee7ec582f1e70b3c36ebf32e5e5836913c8","impliedFormat":99},{"version":"7a14bf21ae8a29d64c42173c08f026928daf418bed1b97b37ac4bb2aa197b89b","impliedFormat":99},{"version":"711dbe2de6452fe53027615421afc6f5941533aacc6fb3e9a831635bb0f23ced","signature":"20f5c6fda7d5906e7abca36cb5068de741c18155bbe26f5aca1e1c29ca5e2f42"},{"version":"e07e2c8c681206772610f407512c3c66c669f97a55c20d5af168b155198dd5b9","signature":"01bf2c1d25dfac48c5a001ac0f07f792b75c566b67362d58900d6fcc20f29224"},"b9107eccee190d80e37633f8b9414394be98ee0a9ef556df3f39fdf71a291af2",{"version":"2f304078088f2f4dad8c89966a7abb2f5989e450ca36bbba6b6ca175b7cd1733","signature":"fa01815d97da0e20aa59b46fb1e69096b102d91a5a471ddcffa4e7105a3b23ce"},{"version":"4446850b5665c2f5bc7c4363a6e42256a47a3df4620da09ffd1f84d3b8293f10","signature":"2da657bfb326db428e9d1328473b688da6648efedc0bfdd528718109c202981a"},{"version":"d1ff367c377396feb0ef5b12f1a404a930dcd0f7082bcf8d9276a802d94ef3ab","signature":"f00cb3cf2eb0b87c43e88211235cec90902469631c81f525038b66203f083209"},{"version":"48b94f3b652c68c0f427d19773e6460c6176ee95f0ea9864cb03e8cc9176acf8","signature":"91f51641daa8dadd247163be7a1e293765df88595205afaa7d2678217491783f"},{"version":"e3507ff969a7c1c9d55e0e6a7986d863433ac6fab17e27f5fa6c8d0fd79c15be","impliedFormat":99},{"version":"8bb642bc24d7a21e67124613f77174e377b053b4e50f08d3bb8b4b71c30da185","impliedFormat":99},{"version":"c043623180122dddecf5565e0809ea90426d6fc370454cd2ba1ab99ca3398248","impliedFormat":99},{"version":"70f20697bc3ed03af85920db61fb1e4388fffa37cd2e0c0d937e7608f5608bd1","impliedFormat":99},{"version":"5e35a2a3f0b62ee763fd1d1f13cdec015ea10fb1ed7a670989b1ba49b37ad287","impliedFormat":1},{"version":"b3b5aca751100320745c8bfd826202aed7d753d336448ce2265b9470dfa8a298","impliedFormat":1},{"version":"5fa35c6051059d5ed57cbda5479b593cec15d5405229542042bd583c1e680fb4","impliedFormat":1},{"version":"7df3932c1b8816845e1774538c4e921e196d396b3419e2e18bc973079b4064a3","impliedFormat":1},{"version":"c8a7131a27d7892f009ab03d78dc113582f819c429af2064280bec83c2e7c599","impliedFormat":1},{"version":"19629032a378771a07e93c0ab8253b92cb83e786446f1c0aed01d8f9b96a3fb6","impliedFormat":1},{"version":"fd4b51f120103d53cc03eea9d98d6a1c7e6c07f04847c0658ec925ceeb7667aa","impliedFormat":1},{"version":"53bacb19d6714c3ea41bebf01a34d35468a0ac0c9331d2ffdc411ce452444a2f","impliedFormat":1},{"version":"e2ce339ecc8f65810eda93bb801eb9278f616b653f5974135908df2c30acc5ae","impliedFormat":1},{"version":"234058398306e26bc917e6efba8fb26c9d9f2cfdfbaa17abfcb11138847de081","impliedFormat":1},{"version":"b3ff9aff54c18834bce9690184e69fd44fd5d57273a98a47fbf518b68cc4ec60","impliedFormat":1},{"version":"e6cfcf171b5f7ec0cb620eee4669739ad2711597d0ff7fdb79298dfc1118e66a","impliedFormat":1},{"version":"3dc40ead9c5ac3f164af434069561d6c660e64f77c71ab6ad405c5edc0724a94","impliedFormat":1},{"version":"d5fb34e3200ce13445c603012c0dfbd116317f8d5fef294e11f49d00a859a3d0","impliedFormat":1},{"version":"58fc843cdfd37a8b1ae2cbf3d6d3718d41cdafcbbf17e228bd6a7762a7235bf0","impliedFormat":1},{"version":"a4d0945318f81b27529abcae16d65612decf4164021a0d4d2ec19fbfcbaf1555","impliedFormat":1},{"version":"fbe57f37a07a627af9ae5922c86132677e58689427cc748866a549ef3862f859","impliedFormat":1},{"version":"8df750d51d498be760d538ac9818c7aebea597f21d4937a65fb2ebedd8a976e7","impliedFormat":1},{"version":"5b9c5efb469020fd6a8c6cb8c4b378ef3dc46ad97938ac900882f1d5f237bc91","impliedFormat":1},{"version":"83dc862cd9b7b1a929bcc03e9bbc8690cebc7e29b1edfa263f6fd11b737f19df","impliedFormat":1},{"version":"fffacebbcc213081096e101e64402c9fb772c5b4b36ad5e3d675e8d487c9e8af","impliedFormat":1},{"version":"1b243b5a51dff2bf70b7a6ce368fe7ff845c300027404b5a41a87ce5490cdad0","impliedFormat":1},{"version":"dfb119c12d7d177eb47b98c011677ca852dff82ddbe40ea571e31e04d2b84278","impliedFormat":1},{"version":"e0b50044596bf7b246a9ad7b804cc5ab521f02e89460a017981384895a468f23","impliedFormat":1},{"version":"b303a99933b69d9d6589ac24f215e5d987933782244251a10e62534f08852d94","impliedFormat":1},{"version":"e052b679185d44460040d5ce3d703d503e5f7108cd4e9d057323f307c6c0e42e","impliedFormat":1},{"version":"ddb79ad4350198a188ad3230d2646b4c67467941ddf4022ed01e4511a56d2cd9","impliedFormat":1},{"version":"8b3de2f727cfd97055765350c2e4d50ea322cabb517ff7aa3fa0ad74aab4826e","impliedFormat":1},{"version":"b3e584a57553f573aa01b34bf0d08c4dfefb2b9ede471c70d85207131f0f742f","impliedFormat":1},{"version":"23a24f7efe3c9186a1b05cd9a64a300818dd0716ffbd522d27178ec13dc1f620","impliedFormat":1},{"version":"6849f3dd56770a08b9783d61e3ba6e2d0ba82850a20ae97e1bdcaeb231d2f7fc","impliedFormat":1},{"version":"6fb23beb59f1f5c8dc97bfc012d5edac81ffca1c1b83a91381b4e130e7ce24f3","impliedFormat":1},{"version":"bc759b587b3e7213fc658fe78dbaf7b0e7c0a85f37626823b4bbef063759c406","impliedFormat":1},{"version":"04ed59801192608de22461e38b9f2e300953f1d6d6c05332f19e78e668d6a843","impliedFormat":1},{"version":"bf5cfc96bacabfe71962c32755df63ac499f732571368db3bdd7e144336c50f7","impliedFormat":1},{"version":"4c10770eca2ae9c1d5c97dad5c715b0c65def8699066231851a69fa58aaab3bf","impliedFormat":1},{"version":"c7e7d48913bfa205453911f699307e7ce630deb3c3e68326377bc2ba20abb1f9","impliedFormat":1},{"version":"4b78505d4f7ba7a80b24dae9b9808c2ec3ecb6171af03a4b86a7a0855d7a80c1","impliedFormat":1},{"version":"d09d8ac8da326eb4cf708d3a3937266180fe28e91c3a26e47218425b2ec1851d","impliedFormat":1},{"version":"50c0c2b5e76e48e1168355e3622ca22e939c09867e3deb9b7a260d5f4e8d890c","impliedFormat":1},{"version":"66491ea35e30cc8c11169e5580aef31e30fdf20b39bc22e0847c2c7994e2071b","impliedFormat":1},{"version":"35680fb7f25a165e31e93ea22d106220db4450b1270a135b73f731b66b3d4539","impliedFormat":1},{"version":"5865007a5331be0842d8f0aace163deda0a0672e95389fe6f87b61988478a626","impliedFormat":1},{"version":"dddc865f251a4993b9e23494a9ae0fb58997e0941b1ec774490a272d5a0b29bd","impliedFormat":1},{"version":"76d1f106ef20648708a7d410326b8ad90fc6f7d4cdf0e262edd6bd150676151b","impliedFormat":1},{"version":"6e974c9f7e02b1f1b7c9538619fe25d9d23e4eb5df3102f62f3bb0cb3d735d1a","impliedFormat":1},{"version":"18f3835257e2f87f8dc995c566217c5434d9bc14a6d18e7ca0e2afbfc2f1eca8","impliedFormat":1},{"version":"69055f4f0b1b2df9f0ca89231075c0578975518543100582dd37adb956ad6135","impliedFormat":1},{"version":"c3f85a0f71b64d78e7dfb27a12d10b0cd621745f40752b8e9fa61a7099d4290e","impliedFormat":1},{"version":"0b4b2424b5d19bbac7e7ad9366419746fff0f70001c1867b04440d0031b26991","impliedFormat":1},{"version":"e6d999c047721b80fc44a025370dbc02022390bfcf3c1e05cd200c53720c3f16","impliedFormat":1},{"version":"4fd695c068c325f2eb6effd7a2ed607d04f4ed24b1f7cc006b8325b3eb5bd595","impliedFormat":1},{"version":"c18fb9b8d4a7f41ae537512368ec9028d50b17e33e26c99f864912824b6e8c30","impliedFormat":1},{"version":"2b214fb1c919b0483175967f9cf0809e0ac595a7be41ba5566be27ce3d66cf86","impliedFormat":1},{"version":"ff8ece28a240cb8a29342a8c54efdaf124f93301081afa047bd1e7f6ec2a79e3","impliedFormat":1},{"version":"9b923be7ef4337bbddbd1713b13cf81da9a955034bdf657bb9e60a8fc9b20ac5","affectsGlobalScope":true,"impliedFormat":1},{"version":"527668d62da5909154a74b74a7a9ae59c41ab4a70da76c2f476765308efafb0f","impliedFormat":1},{"version":"e2974b2b0a7ba6384f5f3338d2a6a70170c3002112d6e05ce593d966100bf232","impliedFormat":1},{"version":"cc3738598b5fe875e341f701824403b3cac48c50472c72423d3e236b610fa977","impliedFormat":1},{"version":"f06e49e80942ebd4f352b1d52d51e749cb943e5b7e368cdf0ce15a169cfad5d0","impliedFormat":99},{"version":"adcbd1ed0d1621b7b2998cc3639871b57d85a3f862759d81c8634fbb6f3ec260","impliedFormat":99},{"version":"c982042c9614e12edd22a8ec0ba55c52fb31b41a513e841a0f3916fea6f775ca","impliedFormat":99},{"version":"28004f9370a7177104fe5c71381f4d2ddf8099066ba15ad0264df14135f0210a","impliedFormat":99},{"version":"0d85481bf9d4418ad633806d8d909777749291164161e87d3f76fb68ab1ae4b1","impliedFormat":99},{"version":"26474a5870247854706ee1a1b53846c464fa46d4f0fce6feca43516c6a565ece","impliedFormat":99},{"version":"499060fff17e6127887065c69309b9785808229fa4851185762b434fd191eb8f","impliedFormat":99},{"version":"e8b61ed76ce071a18c16b3d5145c9ec24a79afa4a40e4e70482d420988ad2e92","impliedFormat":99},{"version":"959c15065a76d4dc5e77e5c83dab8bcd52ebaa5779eb4d42fb43a5134c219eca","impliedFormat":99},{"version":"6aba2b87d07562e15164415aeb5ef55e544cfc4ead91c18982e0c5b70739c120","impliedFormat":99},{"version":"876324641782ef0d4123c39ce5b4fe59ddf3dcd8ef747bc06bd935aedf0a71c6","impliedFormat":99},{"version":"0716a38be84ad12588a2ffeb66977b960b6f9ec477473063b61b7fab971bbe4e","impliedFormat":99},{"version":"029fc7882219b11a8d7f0b64a51ecc6cceff45813fb0d5daf793c503a20dffa7","impliedFormat":99},{"version":"5cfb2066d3fe03aa5d6ffad84629bcb1eb4fe7cad46f874afca80aa459962b75","impliedFormat":99},{"version":"0a1b0a946c2dc3dbc3f7b41fab8ca5a3bb5f21fc3965dc07d1cb5af831a962d3","impliedFormat":99},{"version":"0e1a03168fbe0d48c1a558ce495ea48c922f9c2c98658092ef8361bb8c40536a","impliedFormat":99},{"version":"1204aa56ffbdf67afe38cd279d602ff1033fe9dc2110fc8fc219f1deb4b18a5e","impliedFormat":99},{"version":"922f879e741bb05195e598b51a58e3784f34761ee4d92f2f470f57740ffa1b7b","impliedFormat":99},{"version":"a06db219f83fd299973856c648293bcfca1f606a2617b7750f75b13dd28ca5fd","impliedFormat":99},{"version":"8832937a4f608e96d8c7b53fd5c040fd1e2be78dea6ca926b9c16e235f114749","impliedFormat":99},{"version":"60fa62255c9a3fc917f4be2d8c23ded1f3e919f68db44af67f8c67b46014663a","impliedFormat":99},{"version":"ebd64fdcbf908c363ab65ccb1ad9f26d82cd2bbb910fee5a955f3b75f937b1d2","impliedFormat":99},{"version":"608c0d45e9440b26e61a906bcd32ca23db396fa32aa29087db107bee281d70bf","impliedFormat":99},{"version":"c57ff70bc0ae1a2abe4f1a4c8fc8708f7cd99d0de97fac042e0ba9f4970c35db","impliedFormat":99},{"version":"cf5007ed1f1bdd4d9c696370c6fa698eddef590768bbb9807c7b9cb4000a9ec7","impliedFormat":99},{"version":"b96853f733fed9aa8ad28d397e1ec843792749dd8432e7f764edcb5231ec4160","impliedFormat":99},{"version":"6ee0d36f09cff8a99010c8761003a83b910149e5d7b39656f889b2bbbabe0f27","impliedFormat":99},{"version":"b9f6ae525124fa2244c7e5ae3d788d787db47c4dab1beda7809cfb6c47f74968","impliedFormat":99},{"version":"a74c7a2244c60699441eb66577f230112eb56235a0fd7b26451ffe03c999991d","impliedFormat":99},{"version":"a1fc2559d90de9e703fab40ed46ff05a402113d164892c3c4ca192102f136c99","impliedFormat":99},{"version":"514167c3cc3640146a0ede53e59dc82c1d27ad1bc1e134912a0ea2cff69f997c","impliedFormat":99},{"version":"10ce8a11a9beb91431a0246977d0c9342c9f530b6ddaf756a0ad6fef22818b9d","impliedFormat":99},{"version":"269ed3176766758542995bfab9612b921bb47c3b1efd382b3ec843d0e2dc147d","impliedFormat":99},{"version":"f3ec93a448c4bf491bd372962f4c9a402ba97a917ce905ac0251f16c2e03fb43","impliedFormat":99},{"version":"3c7869711e28e33bb715dedb6879707cb54bb91b0ea9e54c9e308ed23be6b8b4","impliedFormat":99},{"version":"abbd33f1c632b4e592fde62769716a5134831f960832d7007a6491e73e4ae109","impliedFormat":99},{"version":"f88a59d7650984e794b40b34303dcedc1c3802acf21429f110c832fedb529dc0","impliedFormat":99},{"version":"2e7ef180b0a117ec2edfc2e349b4ccea4ad63114ea41b0262aa3a6e01cb223f0","impliedFormat":99},{"version":"9e909c7914b218861b219760732ae7a7a880b7d8e5d4feff64eef921ca5efaae","impliedFormat":99},{"version":"de94ac03f309847b4febab46e6a7de3ed68cf6d3a3faf50823def5d1309cbf47","impliedFormat":99},{"version":"97eba2d9706d755314bb85231c44219b707f84209032197255c4c11c6acbfd3c","signature":"496cd22bb4f82c69d05d88ac924b20c9777a3232348707278cf5375b7a1ab576"},{"version":"ae4eef1bf8c13f009f82147f6a2763f2c7472529c7f7fb739f8d45c7bff03a47","signature":"0bb5669ada7a7c579244609dbed2c0db86aebc5c8b89bed00f121775ab60cc49"},{"version":"91f6bdd3a9e945fa50d6a3c005a07b6f15de69415ead01293a039f4603b7523d","signature":"ed59bf3031f5aa24f0ceda91d6c5c9ea5e094f196ba2359409722b13e88de6f8"},{"version":"4badb8e0f2fba7a7a55e32d877f93572292b41fb086b2cd2672388c803f00e84","signature":"a77b1deae4fb9f9916400df3926ffc60e1b27657a8c74f1d5f80fb612f63c07f"},{"version":"b0fc4f6c3cc05fa872c4580e8795ab24bd27dafbc4be70fe3cbba8d4465ceda3","signature":"0c5c3f2215f494cc70301fb873c29441118a9232a5d14eaf6f67ed0dc2317885"},{"version":"473f734af60adb3d6962b0d457063f709fd4570d7c18ed09b50efee7ff9615ce","signature":"b098e49412a79e18117a33c5ebf61cb00b5ab79a0b296528fe7ad705b9bdd013"},{"version":"7fc745acebbee6e62e1d9498a48328d2d8b730a0e4cee78a6349a1be43be7d80","signature":"bd2ee593357e30f039c0a1e7e6901eab64ce342549240e0724ff461e11061584"},{"version":"f74bec68dd458976ea06f05ebdb4cc5b0e42e5242e5361edf0e5ec6e25dd717b","signature":"709605705d4907db12fa43a49e08de13bc875b40e469640cfca3ab72721c87b4"},{"version":"4d7d964609a07368d076ce943b07106c5ebee8138c307d3273ba1cf3a0c3c751","impliedFormat":99},{"version":"0e48c1354203ba2ca366b62a0f22fec9e10c251d9d6420c6d435da1d079e6126","impliedFormat":99},{"version":"0662a451f0584bb3026340c3661c3a89774182976cd373eca502a1d3b5c7b580","impliedFormat":99},{"version":"68219da40672405b0632a0a544d1319b5bfe3fa0401f1283d4c9854b0cc114ce","impliedFormat":99},{"version":"ee40ce45ec7c5888f0c1042abc595649d08f51e509af2c78c77403f1db75482a","impliedFormat":99},{"version":"7841bca23a8296afd82fd036fc8d3b1fed3c1e0c82ee614254693ccd47e916fc","impliedFormat":99},{"version":"b09c433ed46538d0dc7e40f49a9bf532712221219761a0f389e60349c59b3932","impliedFormat":99},{"version":"2fe97c700340d65f35f1bf31a74e2a530d04f47fc2ce7423d4880216452ab085","impliedFormat":99},{"version":"50bc55fc955fa799a4a1a11c3484077f06cc87033c68f5da6466b520876cb12f","impliedFormat":99},{"version":"22973bc5e4a4013061472e4bf3355fb6bb52cc5dfb42406d0aef0357a1fb3735","signature":"5b053d96ccc6391f56b1067a3cfbf5242924a0d3b023d731e16e0590595b24ff"},{"version":"f97faedb195315ae8f6c7edc1c895e465fa4613ccf35d5a850b77309abb2f880","signature":"29b81b6565ea28b26b07a2397a01c385b9da74235f1a867a33121354ba494f6f"},{"version":"309ebd217636d68cf8784cbc3272c16fb94fb8e969e18b6fe88c35200340aef1","impliedFormat":1},{"version":"f987c74a4b4baf361afbf22a16d230ee490d662f9aa2066853bb7ebbb8611355","impliedFormat":1},{"version":"1ff91526fcdd634148c655ef86e912a273ce6a0239e2505701561f086678262b","impliedFormat":1},{"version":"bd93f6fc4da70275db4def32903eed2be03547a41857142df63ddfebb9a67bdf","impliedFormat":1},{"version":"8d67b13da77316a8a2fabc21d340866ddf8a4b99e76a6c951cc45189142df652","impliedFormat":1},{"version":"7952419455ca298776db0005b9b5b75571d484d526a29bfbdf041652213bce6f","impliedFormat":1},{"version":"21360500b20e0ec570f26f1cbb388c155ede043698970f316969840da4f16465","impliedFormat":1},{"version":"3a819c2928ee06bbcc84e2797fd3558ae2ebb7e0ed8d87f71732fb2e2acc87b4","impliedFormat":1},{"version":"1765e61249cb44bf5064d42bfa06956455bbc74dc05f074d5727e8962592c920","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"568b463d762d0df07ed10081293715069168ad7cf6308525a3bb93777b127845","impliedFormat":1},{"version":"6e5857f38aa297a859cab4ec891408659218a5a2610cd317b6dcbef9979459cc","impliedFormat":1},{"version":"add0ce7b77ba5b308492fa68f77f24d1ed1d9148534bdf05ac17c30763fc1a79","impliedFormat":1},{"version":"56ccc6238510b913f5e6c21afdc447632873f76748d0b30a87cb313b42f1c196","impliedFormat":1},{"version":"c1a2e05eb6d7ca8d7e4a7f4c93ccf0c2857e842a64c98eaee4d85841ee9855e6","impliedFormat":1},{"version":"85021a58f728318a9c83977a8a3a09196dcfc61345e0b8bbbb39422c1594f36b","impliedFormat":1},{"version":"d91805544905a40fbd639ba1b85f65dc13d6996a07034848d634aa9edb63479e","impliedFormat":1},{"version":"6042774c61ece4ba77b3bf375f15942eb054675b7957882a00c22c0e4fe5865c","impliedFormat":1},{"version":"5a3bd57ed7a9d9afef74c75f77fce79ba3c786401af9810cdf45907c4e93f30e","impliedFormat":1},{"version":"8610f5dc475d74c4b095aafa0c191548bfd43f65802e6da54b5e526202b8cfe0","impliedFormat":1},{"version":"7b9496d2e1664155c3c293e1fbbe2aba288614163c88cb81ed6061905924b8f9","impliedFormat":1},{"version":"e27451b24234dfed45f6cf22112a04955183a99c42a2691fb4936d63cfe42761","impliedFormat":1},{"version":"58d65a2803c3b6629b0e18c8bf1bc883a686fcf0333230dd0151ab6e85b74307","impliedFormat":1},{"version":"e818471014c77c103330aee11f00a7a00b37b35500b53ea6f337aefacd6174c9","impliedFormat":1},{"version":"2fbc91ba70096f93f57e22d1f0af22b707dbb3f9f5692cc4f1200861d3b75d88","impliedFormat":1},{"version":"29f823cbe0166e10e7176a94afe609a24b9e5af3858628c541ff8ce1727023cd","impliedFormat":1},{"version":"4c160c0c0622cbe04bfd1024631e21c8ecf1670124a12ec8b23727d13e5979f6","signature":"07d5b52bba05b29db0926a4001feb035ce13e255731e33675706fa8b31b302fb"},{"version":"c0479252952435fc8723ff7c46ed0ee950c4df55120837b27388ec17aaebf48c","signature":"4ea3892acd9ef4bb3367f9965621da37d703ce70441bf1eef18a7d7ce294719d"},{"version":"0b538297db0f7f6d639363e6e05d44e838d6c22b54519b0f794b642dc4c7c8c5","signature":"38b417f10aa857d5069b795c8b22e2952d287d22434596aa41cdec514ef8a073"},{"version":"e2ab89665b8d3a6097916601f56f8d8af1a8491ff63badd7eac3343d74979e0c","signature":"7184a811eca741a0b632eaec8dc054be85644743c22d84c0d76c6ce766a8f003"},{"version":"591b5d40d84be86d4603185460d15b35bb362bae84c46d55b511e54017d4ffe1","signature":"4e6c38cb8996d9c28afbf8c421f736c09b408079582482f3e65a0cba51d70d94"},{"version":"375700e065dd9948ca1ebb6793f62c18890f37bcb42ab757d73df6623dd903d9","impliedFormat":99},{"version":"4781142e27cfd19d75a2c0ee432826153fcdf670bdc52631a6078330c9133e6f","impliedFormat":99},{"version":"93515fa80b2295b33e3e38c3f835f1f602e1a1899b2cfa4215f11600478379c2","impliedFormat":99},{"version":"94896adfc3bcc06c707d9b3e4b3d0001d9ea39cd4ae805082a14491efbed6316","signature":"ee7a7d891dd0b0005b4dc9a7bcdb89e4300038f59ef33866731f1ae221e6f8ee"},{"version":"57aa303c296ff62f609c5a52ec5afbeb02cac7b769cbebb46be7b576e1ab3ddf","signature":"db56e1285f6ec596827631cbe48c095bbea2e8fdc3f901db2b21a51c08e60ce3"},{"version":"c13bc0c7c75bc996a9157a6319e3d007996d1389efc23e1417f0f42a3faf6045","impliedFormat":99},{"version":"f665b7400ea6d37fcc8bf8adb593cbc976926c13a616bc1bd6de8d8edda9f2b8","impliedFormat":99},{"version":"5c1255a52052237b712730bd0da805b0a708262909e500479a321688c1d6d197","impliedFormat":99},{"version":"b5a7c01a7b037ba33207ea7f1cf4c1fe65cfdde4ef83a8e1deb03f777e7ef2e0","signature":"7daf2126a5d8bdf4ef07669a69b291a46b76739e1085849baedcb94ef341e814"},{"version":"aa7a5425ff1fe64b035d4ac9c77ca1faaf410c4de7200be4cd112d53df6c1af9","signature":"9bc80befce6a60cc78a9eff1499995de23613754ca5339d92024a1b10a3ae338"},{"version":"703473df5a12fd91f969f58394059f512dd70d88c2eed68583a77212968094b6","signature":"048ef49f923e7ad7b06ffe95ceb407238a4554bf49dc36eaf1a76eaf75535edb"},{"version":"8309c9db65b1f3ecf337e2d73e26d137ef711d951f2a93643a7bcdcd7a979a19","signature":"658714ef591d2d51abab7172f2dcbddac9cfcd3e7c9ef6ba4f0a85248f6850df"},{"version":"4902f89e2c23ae6814a3818577c8602e2211912c1c74219846dd0d7709f3c328","signature":"5b4567b44b055c85ac88531073f1550a5465ea96dd82620c7b756ac0a8552ed3"},{"version":"228b0e18d6c64b67f83ecf29d0ac5394a4cebc2bdd7a9d5ee12f5dcff6a95805","signature":"b2c7cf7f304f6ebfea4dda1e9c526a79a591fc8d3bd003af083384025da649b1"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"89783bd45ab35df55203b522f8271500189c3526976af533a599a86caaf31362","impliedFormat":99},{"version":"26e6c521a290630ea31f0205a46a87cab35faac96e2b30606f37bae7bcda4f9d","impliedFormat":99},{"version":"798b5337dc147d88c65de01f7221e0bfa04272968a1fce6acc1ec0bef7d9ddb9","signature":"0ae95632387b568863f5432688f3d5b538edb7f0b60efa3e403667dbf4a6f509"},{"version":"163c2623809f0fce501b02fe357fbfdcd7139d1328c10f9be20104ef26a1dcb0","signature":"3c08f6713620a686351d4a0751134e94e3f78f66642b7c22f8afffd2c523b703"},{"version":"950bea01f2a3f9ecad239726a080cad2b9d47153849a4d14abb905f0f60d8292","signature":"0a7fd7460c25272fe93528407b12b7e1874a657e9c3a3070d6e37864f095b6a0"},"cb1149dc9b8b49da93176fad7a5a04f97fd7814b92c00b2608fd06c9142f76af","9df2681521a3c1735b5f226ef0ea22506fad3fe592a0bd5822154b138ae9b4e1",{"version":"10ec649a9babfe0e5d0caaeb83a6967947609b8c1b97451a5e107a7964a68ff8","signature":"a7a00932d3632b1b2e88331c72f65f544ccd70eefce739837b05744011075fba"},{"version":"b67e583128915dd73859e4e8f1e0df85f461ba3cc6997fb9b9af2402e4a5f431","signature":"e48edb6bb46fd51d556c424443612274746402c087eb39181775343d8e823618"},{"version":"f3a959e927e7f615371474ae959d900f19f03586a582e4e7dc9d35055cd06ac8","signature":"817ea241dbf951a15227290a558a5f75568c2baa3ab780809dc77e3cc45fda07"},{"version":"cb8f71eb51a21690b5cd207c0624b2e791de4c86617ec4f77edbc43738821211","signature":"b12a354249fdbc0ade9ef40f09af35ac2a6eea05cfc4c0410595379f518bdef4"},{"version":"742246c4523cfe0256bb85e503d55afa7411d5dd0792e8ff69bfdf8afe1cec76","signature":"d4ae819a0e3b5a81e1da7c92cab87f3d0724595e70b05ab6c431d93e08ac6361"},{"version":"57ae71d27ee71b7d1f2c6d867ddafbbfbaa629ad75565e63a508dbaa3ef9f859","impliedFormat":99},{"version":"60924ca0c60f0674f208bfa1eaaa54e6973ced7650df7c7a81ae069730ef665a","impliedFormat":99},{"version":"e3181c7595a89dd03ba9a20eb5065fa37e0b0a514261bed774f6ae2241634470","impliedFormat":99},{"version":"c42d5cbf94816659c01f7c2298d0370247f1a981f8ca6370301b7a03b3ced950","impliedFormat":99},{"version":"18c18ab0341fd5fdfefb5d992c365be1696bfe000c7081c964582b315e33f8f2","impliedFormat":99},{"version":"dafbd4199902d904e3d4a233b5faf5dc4c98847fcd8c0ddd7617b2aed50e90d8","impliedFormat":99},{"version":"9fc866f9783d12d0412ed8d68af5e4c9e44f0072d442b0c33c3bda0a5c8cae15","impliedFormat":99},{"version":"5fc13d24a2d0328eac00c4e73cc052a987fbced2151bc0d3b7eb8f3ba4d0f4e2","impliedFormat":99},{"version":"2cef84bf00cbdb452fdc5d8ecfe7b8c0aa3fa788bdc4ad8961e2e636530dbb60","impliedFormat":99},{"version":"24104650185414f379d5cc35c0e2c19f06684a73de5b472bae79e0d855771ecf","impliedFormat":99},{"version":"799003c0ab928582fca04977f47b8d85b43a8de610f4eef0ad2d069fbb9f9399","impliedFormat":99},{"version":"b13dd41c344a23e085f81b2f5cd96792e6b35ae814f32b25e39d9841844ad240","impliedFormat":99},{"version":"17d8b4e6416e48b6e23b73d05fd2fde407e2af8fddbe9da2a98ede14949c3489","impliedFormat":99},{"version":"6d17b2b41f874ab4369b8e04bdbe660163ea5c8239785c850f767370604959e3","impliedFormat":99},{"version":"04b4c044c8fe6af77b6c196a16c41e0f7d76b285d036d79dcaa6d92e24b4982b","impliedFormat":99},{"version":"30bdeead5293c1ddfaea4097d3e9dd5a6b0bc59a1e07ff4714ea1bbe7c5b2318","impliedFormat":99},{"version":"e7df226dcc1b0ce76b32f160556f3d1550124c894aae2d5f73cefaaf28df7779","impliedFormat":99},{"version":"f2b7eef5c46c61e6e72fba9afd7cc612a08c0c48ed44c3c5518559d8508146a2","impliedFormat":99},{"version":"00f0ba57e829398d10168b7db1e16217f87933e61bd8612b53a894bd7d6371da","impliedFormat":99},{"version":"126b20947d9fa74a88bb4e9281462bda05e529f90e22d08ee9f116a224291e84","impliedFormat":99},{"version":"40d9e43acee39702745eb5c641993978ac40f227475eacc99a83ba893ad995db","impliedFormat":99},{"version":"8a66b69b21c8de9cb88b4b6d12f655d5b7636e692a014c5aa1bd81745c8c51d5","impliedFormat":99},{"version":"ebbb846bdd5a78fdacff59ae04cea7a097912aeb1a2b34f8d88f4ebb84643069","impliedFormat":99},{"version":"7321adb29ffd637acb33ee67ea035f1a97d0aa0b14173291cc2fd58e93296e04","impliedFormat":99},{"version":"320816f1a4211188f07a782bdb6c1a44555b3e716ce13018f528ad7387108d5f","impliedFormat":99},{"version":"b2cc8a474b7657f4a03c67baf6bff75e26635fd4b5850675e8cad524a09ddd0c","impliedFormat":99},{"version":"0d081e9dc251063cc69611041c17d25847e8bdbe18164baaa89b7f1f1633c0ab","impliedFormat":99},{"version":"a64c25d8f4ec16339db49867ea2324e77060782993432a875d6e5e8608b0de1e","impliedFormat":99},{"version":"0739310b6b777f3e2baaf908c0fbc622c71160e6310eb93e0d820d86a52e2e23","impliedFormat":99},{"version":"37b32e4eadd8cd3c263e7ac1681c58b2ac54f3f77bb34c5e4326cc78516d55a9","impliedFormat":99},{"version":"9b7a8974e028c4ed6f7f9abb969e3eb224c069fd7f226e26fcc3a5b0e2a1eba8","impliedFormat":99},{"version":"e8100b569926a5592146ed68a0418109d625a045a94ed878a8c5152b1379237c","impliedFormat":99},{"version":"594201c616c318b7f3149a912abd8d6bdf338d765b7bcbde86bca2e66b144606","impliedFormat":99},{"version":"03e380975e047c5c6ded532cf8589e6cc85abb7be3629e1e4b0c9e703f2fd36f","impliedFormat":99},{"version":"fae14b53b7f52a8eb3274c67c11f261a58530969885599efe3df0277b48909e1","impliedFormat":99},{"version":"c41206757c428186f2e0d1fd373915c823504c249336bdc9a9c9bbdf9da95fef","impliedFormat":99},{"version":"e961f853b7b0111c42b763a6aa46fc70d06a697db3d8ed69b38f7ba0ae42a62b","impliedFormat":99},{"version":"3db90f79e36bcb60b3f8de1bc60321026800979c150e5615047d598c787a64b7","impliedFormat":99},{"version":"639b6fb3afbb8f6067c1564af2bd284c3e883f0f1556d59bd5eb87cdbbdd8486","impliedFormat":99},{"version":"49795f5478cb607fd5965aa337135a8e7fd1c58bc40c0b6db726adf186dd403f","impliedFormat":99},{"version":"7d8890e6e2e4e215959e71d5b5bd49482cf7a23be68d48ea446601a4c99bd511","impliedFormat":99},{"version":"d56f72c4bb518de5702b8b6ae3d3c3045c99e0fd48b3d3b54c653693a8378017","impliedFormat":99},{"version":"4c9ac40163e4265b5750510d6d2933fb7b39023eed69f7b7c68b540ad960826e","impliedFormat":99},{"version":"8dfab17cf48e7be6e023c438a9cdf6d15a9b4d2fa976c26e223ba40c53eb8da8","impliedFormat":99},{"version":"38bdf7ccacfd8e418de3a7b1e3cecc29b5625f90abc2fa4ac7843a290f3bf555","impliedFormat":99},{"version":"9819e46a914735211fbc04b8dc6ba65152c62e3a329ca0601a46ba6e05b2c897","impliedFormat":99},{"version":"50f0dc9a42931fb5d65cdd64ba0f7b378aedd36e0cfca988aa4109aad5e714cb","impliedFormat":99},{"version":"894f23066f9fafccc6e2dd006ed5bd85f3b913de90f17cf1fe15a2eb677fd603","impliedFormat":99},{"version":"abdf39173867e6c2d6045f120a316de451bbb6351a6929546b8470ddf2e4b3b9","impliedFormat":99},{"version":"aa2cb4053f948fbd606228195bbe44d78733861b6f7204558bbee603202ee440","impliedFormat":99},{"version":"6911b41bfe9942ac59c2da1bbcbe5c3c1f4e510bf65cae89ed00f434cc588860","impliedFormat":99},{"version":"7b81bc4d4e2c764e85d869a8dd9fe3652b34b45c065482ac94ffaacc642b2507","impliedFormat":99},{"version":"895df4edb46ccdcbce2ec982f5eed292cf7ea3f7168f1efea738ee346feab273","impliedFormat":99},{"version":"8692bb1a4799eda7b2e3288a6646519d4cebb9a0bddf800085fc1bd8076997a0","impliedFormat":99},{"version":"239c9e98547fe99711b01a0293f8a1a776fc10330094aa261f3970aaba957c82","impliedFormat":99},{"version":"34833ec50360a32efdc12780ae624e9a710dd1fd7013b58c540abf856b54285a","impliedFormat":99},{"version":"647538e4007dcc351a8882067310a0835b5bb8559d1cfa5f378e929bceb2e64d","impliedFormat":99},{"version":"992d6b1abcc9b6092e5a574d51d441238566b6461ade5de53cb9718e4f27da46","impliedFormat":99},{"version":"938702305649bf1050bd79f3803cf5cc2904596fc1edd4e3b91033184eae5c54","impliedFormat":99},{"version":"1e931d3c367d4b96fe043e792196d9c2cf74f672ff9c0b894be54e000280a79d","impliedFormat":99},{"version":"05bec322ea9f6eb9efcd6458bb47087e55bd688afdd232b78379eb5d526816ed","impliedFormat":99},{"version":"4c449a874c2d2e5e5bc508e6aa98f3140218e78c585597a21a508a647acd780a","impliedFormat":99},{"version":"dae15e326140a633d7693e92b1af63274f7295ea94fb7c322d5cbe3f5e48be88","impliedFormat":99},{"version":"c2b0a869713bca307e58d81d1d1f4b99ebfc7ec8b8f17e80dde40739aa8a2bc6","impliedFormat":99},{"version":"6e4b4ff6c7c54fa9c6022e88f2f3e675eac3c6923143eb8b9139150f09074049","impliedFormat":99},{"version":"69559172a9a97bbe34a32bff8c24ef1d8c8063feb5f16a6d3407833b7ee504cf","impliedFormat":99},{"version":"86b94a2a3edcb78d9bfcdb3b382547d47cb017e71abe770c9ee8721e9c84857f","impliedFormat":99},{"version":"e3fafafda82853c45c0afc075fea1eaf0df373a06daf6e6c7f382f9f61b2deb3","impliedFormat":99},{"version":"a4ba4b31de9e9140bc49c0addddbfaf96b943a7956a46d45f894822e12bf5560","impliedFormat":99},{"version":"d8a7926fc75f2ed887f17bae732ee31a4064b8a95a406c87e430c58578ee1f67","impliedFormat":99},{"version":"9886ffbb134b0a0059fd82219eba2a75f8af341d98bc6331b6ef8a921e10ec68","impliedFormat":99},{"version":"c2ead057b70d0ae7b87a771461a6222ebdb187ba6f300c974768b0ae5966d10e","impliedFormat":99},{"version":"46687d985aed8485ab2c71085f82fafb11e69e82e8552cf5d3849c00e64a00a5","impliedFormat":99},{"version":"999ca66d4b5e2790b656e0a7ce42267737577fc7a52b891e97644ec418eff7ec","impliedFormat":99},{"version":"ec948ee7e92d0888f92d4a490fdd0afb27fbf6d7aabebe2347a3e8ac82c36db9","impliedFormat":99},{"version":"03ef2386c683707ce741a1c30cb126e8c51a908aa0acc01c3471fafb9baaacd5","impliedFormat":99},{"version":"66a372e03c41d2d5e920df5282dadcec2acae4c629cb51cab850825d2a144cea","impliedFormat":99},{"version":"ddf9b157bd4c06c2e4646c9f034f36267a0fbd028bd4738214709de7ea7c548b","impliedFormat":99},{"version":"3e795aac9be23d4ad9781c00b153e7603be580602e40e5228e2dafe8a8e3aba1","impliedFormat":99},{"version":"98c461ec5953dfb1b5d5bca5fee0833c8a932383b9e651ca6548e55f1e2c71c3","impliedFormat":99},{"version":"5c42107b46cb1d36b6f1dee268df125e930b81f9b47b5fa0b7a5f2a42d556c10","impliedFormat":99},{"version":"7e32f1251d1e986e9dd98b6ff25f62c06445301b94aeebdf1f4296dbd2b8652f","impliedFormat":99},{"version":"2f7e328dda700dcb2b72db0f58c652ae926913de27391bd11505fc5e9aae6c33","impliedFormat":99},{"version":"3de7190e4d37da0c316db53a8a60096dbcd06d1a50677ccf11d182fa26882080","impliedFormat":99},{"version":"a9d6f87e59b32b02c861aade3f4477d7277c30d43939462b93f48644fa548c58","impliedFormat":99},{"version":"2bce8fd2d16a9432110bbe0ba1e663fd02f7d8b8968cd10178ea7bc306c4a5df","impliedFormat":99},{"version":"798bedbf45a8f1e55594e6879cd46023e8767757ecce1d3feaa78d16ad728703","impliedFormat":99},{"version":"62723d5ac66f7ed6885a3931dd5cfa017797e73000d590492988a944832e8bc2","impliedFormat":99},{"version":"03db8e7df7514bf17fc729c87fff56ca99567b9aa50821f544587a666537c233","impliedFormat":99},{"version":"9b1f311ba4409968b68bf20b5d892dbd3c5b1d65c673d5841c7dbde351bc0d0b","impliedFormat":99},{"version":"2d1e8b5431502739fe335ceec0aaded030b0f918e758a5d76f61effa0965b189","impliedFormat":99},{"version":"e725839b8f884dab141b42e9d7ff5659212f6e1d7b4054caa23bc719a4629071","impliedFormat":99},{"version":"4fa38a0b8ae02507f966675d0a7d230ed67c92ab8b5736d99a16c5fbe2b42036","impliedFormat":99},{"version":"50ec1e8c23bad160ddedf8debeebc722becbddda127b8fdce06c23eacd3fe689","impliedFormat":99},{"version":"9a0aea3a113064fd607f41375ade308c035911d3c8af5ae9db89593b5ca9f1f9","impliedFormat":99},{"version":"8d643903b58a0bf739ce4e6a8b0e5fb3fbdfaacbae50581b90803934b27d5b89","impliedFormat":99},{"version":"19de2915ccebc0a1482c2337b34cb178d446def2493bf775c4018a4ea355adb8","impliedFormat":99},{"version":"9be8fc03c8b5392cd17d40fd61063d73f08d0ee3457ecf075dcb3768ae1427bd","impliedFormat":99},{"version":"a2d89a8dc5a993514ca79585039eea083a56822b1d9b9d9d85b14232e4782cbe","impliedFormat":99},{"version":"f526f20cae73f17e8f38905de4c3765287575c9c4d9ecacee41cfda8c887da5b","impliedFormat":99},{"version":"d9ec0978b7023612b9b83a71fee8972e290d02f8ff894e95cdd732cd0213b070","impliedFormat":99},{"version":"7ab10c473a058ec8ac4790b05cae6f3a86c56be9b0c0a897771d428a2a48a9f9","impliedFormat":99},{"version":"451d7a93f8249d2e1453b495b13805e58f47784ef2131061821b0e456a9fd0e1","impliedFormat":99},{"version":"21c56fe515d227ed4943f275a8b242d884046001722a4ba81f342a08dbe74ae2","impliedFormat":99},{"version":"d8311f0c39381aa1825081c921efde36e618c5cf46258c351633342a11601208","impliedFormat":99},{"version":"6b50c3bcc92dc417047740810596fcb2df2502aa3f280c9e7827e87896da168a","impliedFormat":99},{"version":"18a6b318d1e7b31e5749a52be0cf9bbce1b275f63190ef32e2c79db0579328ca","impliedFormat":99},{"version":"6a2d0af2c27b993aa85414f3759898502aa198301bc58b0d410948fe908b07b0","impliedFormat":99},{"version":"2da11b6f5c374300e5e66a6b01c3c78ec21b5d3fec0748a28cc28e00be73e006","impliedFormat":99},{"version":"0729691b39c24d222f0b854776b00530877217bfc30aac1dc7fa2f4b1795c536","impliedFormat":99},{"version":"ca45bb5c98c474d669f0e47615e4a5ae65d90a2e78531fda7862ee43e687a059","impliedFormat":99},{"version":"c1c058b91d5b9a24c95a51aea814b0ad4185f411c38ac1d5eef0bf3cebec17dc","impliedFormat":99},{"version":"3ab0ed4060b8e5b5e594138aab3e7f0262d68ad671d6678bcda51568d4fc4ccc","impliedFormat":99},{"version":"e2bf1faba4ff10a6020c41df276411f641d3fdce5c6bae1db0ec84a0bf042106","impliedFormat":99},{"version":"80b0a8fe14d47a71e23d7c3d4dcee9584d4282ef1d843b70cab1a42a4ea1588c","impliedFormat":99},{"version":"a0f02a73f6e3de48168d14abe33bf5970fdacdb52d7c574e908e75ad571e78f7","impliedFormat":99},{"version":"c728002a759d8ec6bccb10eed56184e86aeff0a762c1555b62b5d0fa9d1f7d64","impliedFormat":99},{"version":"586f94e07a295f3d02f847f9e0e47dbf14c16e04ccc172b011b3f4774a28aaea","impliedFormat":99},{"version":"cfe1a0f4ed2df36a2c65ea6bc235dbb8cf6e6c25feb6629989f1fa51210b32e7","impliedFormat":99},{"version":"8ba69c9bf6de79c177329451ffde48ddab7ec495410b86972ded226552f664df","impliedFormat":99},{"version":"15111cbe020f8802ad1d150524f974a5251f53d2fe10eb55675f9df1e82dbb62","impliedFormat":99},{"version":"782dc153c56a99c9ed07b2f6f497d8ad2747764966876dbfef32f3e27ce11421","impliedFormat":99},{"version":"cc2db30c3d8bb7feb53a9c9ff9b0b859dd5e04c83d678680930b5594b2bf99cb","impliedFormat":99},{"version":"46909b8c85a6fd52e0807d18045da0991e3bdc7373435794a6ba425bc23cc6be","impliedFormat":99},{"version":"e4e511ff63bb6bd69a2a51e472c6044298bca2c27835a34a20827bc3ef9b7d13","impliedFormat":99},{"version":"2c86f279d7db3c024de0f21cd9c8c2c972972f842357016bfbbd86955723b223","impliedFormat":99},{"version":"112c895cff9554cf754f928477c7d58a21191c8089bffbf6905c87fe2dc6054f","impliedFormat":99},{"version":"8cfc293b33082003cacbf7856b8b5e2d6dd3bde46abbd575b0c935dc83af4844","impliedFormat":99},{"version":"d2c5c53f85ce0474b3a876d76c4fc44ff7bb766b14ed1bf495f9abac181d7f5f","impliedFormat":99},{"version":"3c523f27926905fcbe20b8301a0cc2da317f3f9aea2273f8fc8d9ae88b524819","impliedFormat":99},{"version":"9ca0d706f6b039cc52552323aeccb4db72e600b67ddc7a54cebc095fc6f35539","impliedFormat":99},{"version":"a64909a9f75081342ddd061f8c6b49decf0d28051bc78e698d347bdcb9746577","impliedFormat":99},{"version":"7d8d55ae58766d0d52033eae73084c4db6a93c4630a3e17f419dd8a0b2a4dcd8","impliedFormat":99},{"version":"b8b5c8ba972d9ffff313b3c8a3321e7c14523fc58173862187e8d1cb814168ac","impliedFormat":99},{"version":"9c42c0fa76ee36cf9cc7cc34b1389fbb4bd49033ec124b93674ec635fabf7ffe","impliedFormat":99},{"version":"6184c8da9d8107e3e67c0b99dedb5d2dfe5ccf6dfea55c2a71d4037caf8ca196","impliedFormat":99},{"version":"4030ceea7bf41449c1b86478b786e3b7eadd13dfe5a4f8f5fe2eb359260e08b3","impliedFormat":99},{"version":"7bf516ec5dfc60e97a5bde32a6b73d772bd9de24a2e0ec91d83138d39ac83d04","impliedFormat":99},{"version":"e6a6fb3e6525f84edf42ba92e261240d4efead3093aca3d6eb1799d5942ba393","impliedFormat":99},{"version":"45df74648934f97d26800262e9b2af2f77ef7191d4a5c2eb1df0062f55e77891","impliedFormat":99},{"version":"3fe361e4e567f32a53af1f2c67ad62d958e3d264e974b0a8763d174102fe3b29","impliedFormat":99},{"version":"28b520acee4bc6911bfe458d1ad3ebc455fa23678463f59946ad97a327c9ab2b","impliedFormat":99},{"version":"121b39b1a9ad5d23ed1076b0db2fe326025150ef476dccb8bf87778fcc4f6dd7","impliedFormat":99},{"version":"f791f92a060b52aa043dde44eb60307938f18d4c7ac13df1b52c82a1e658953f","impliedFormat":99},{"version":"df09443e7743fd6adc7eb108e760084bacdf5914403b7aac5fbd4dc4e24e0c2c","impliedFormat":99},{"version":"eeb4ff4aa06956083eaa2aad59070361c20254b865d986bc997ee345dbd44cbb","impliedFormat":99},{"version":"ed84d5043444d51e1e5908f664addc4472c227b9da8401f13daa565f23624b6e","impliedFormat":99},{"version":"146bf888b703d8baa825f3f2fb1b7b31bda5dff803e15973d9636cdda33f4af3","impliedFormat":99},{"version":"b4ec8b7a8d23bdf7e1c31e43e5beac3209deb7571d2ccf2a9572865bf242da7c","impliedFormat":99},{"version":"3fba0d61d172091638e56fba651aa1f8a8500aac02147d29bd5a9cc0bc8f9ec2","impliedFormat":99},{"version":"a5a57deb0351b03041e0a1448d3a0cc5558c48e0ed9b79b69c99163cdca64ad8","impliedFormat":99},{"version":"9bcecf0cbc2bfc17e33199864c19549905309a0f9ecc37871146107aac6e05ae","impliedFormat":99},{"version":"d6a211db4b4a821e93c978add57e484f2a003142a6aef9dbfa1fe990c66f337b","impliedFormat":99},{"version":"bd4d10bd44ce3f630dd9ce44f102422cb2814ead5711955aa537a52c8d2cae14","impliedFormat":99},{"version":"08e4c39ab1e52eea1e528ee597170480405716bae92ebe7a7c529f490afff1e0","impliedFormat":99},{"version":"625bb2bc3867557ea7912bd4581288a9fca4f3423b8dffa1d9ed57fafc8610e3","impliedFormat":99},{"version":"d1992164ecc334257e0bef56b1fd7e3e1cea649c70c64ffc39999bb480c0ecdf","impliedFormat":99},{"version":"a53ff2c4037481eb357e33b85e0d78e8236e285b6428b93aa286ceea1db2f5dc","impliedFormat":99},{"version":"4fe608d524954b6857d78857efce623852fcb0c155f010710656f9db86e973a5","impliedFormat":99},{"version":"b53b62a9838d3f57b70cc456093662302abb9962e5555f5def046172a4fe0d4e","impliedFormat":99},{"version":"9866369eb72b6e77be2a92589c9df9be1232a1a66e96736170819e8a1297b61f","impliedFormat":99},{"version":"43abfbdf4e297868d780b8f4cfdd8b781b90ecd9f588b05e845192146a86df34","impliedFormat":99},{"version":"582419791241fb851403ae4a08d0712a63d4c94787524a7419c2bc8e0eb1b031","impliedFormat":99},{"version":"18437eeb932fe48590b15f404090db0ab3b32d58f831d5ffc157f63b04885ee5","impliedFormat":99},{"version":"0c5eaedf622d7a8150f5c2ec1f79ac3d51eea1966b0b3e61bfdea35e8ca213a7","impliedFormat":99},{"version":"fac39fc7a9367c0246de3543a6ee866a0cf2e4c3a8f64641461c9f2dac0d8aae","impliedFormat":99},{"version":"3b9f559d0200134f3c196168630997caedeadc6733523c8b6076a09615d5dec8","impliedFormat":99},{"version":"932af64286d9723da5ef7b77a0c4229829ce8e085e6bcc5f874cb0b83e8310d4","impliedFormat":99},{"version":"adeb9278f11f5561157feee565171c72fd48f5fe34ed06f71abf24e561fcaa1e","impliedFormat":99},{"version":"2269fef79b4900fc6b08c840260622ca33524771ff24fda5b9101ad98ea551f3","impliedFormat":99},{"version":"73d47498a1b73d5392d40fb42a3e7b009ae900c8423f4088c4faa663cc508886","impliedFormat":99},{"version":"7efc34cdc4da0968c3ba687bc780d5cacde561915577d8d1c1e46c7ac931d023","impliedFormat":99},{"version":"3c20a3bb0c50c819419f44aa55acc58476dad4754a16884cef06012d02b0722f","impliedFormat":99},{"version":"4569abf6bc7d51a455503670f3f1c0e9b4f8632a3b030e0794c61bfbba2d13be","impliedFormat":99},{"version":"98b2297b4dc1404078a54b61758d8643e4c1d7830af724f3ed2445d77a7a2d57","impliedFormat":99},{"version":"952ba89d75f1b589e07070fea2d8174332e3028752e76fd46e1c16cc51e6e2af","impliedFormat":99},{"version":"b6c9a2deefb6a57ff68d2a38d33c34407b9939487fc9ee9f32ba3ecf2987a88a","impliedFormat":99},{"version":"f6b371377bab3018dac2bca63e27502ecbd5d06f708ad7e312658d3b5315d948","impliedFormat":99},{"version":"31947dd8f1c8eeb7841e1f139a493a73bd520f90e59a6415375d0d8e6a031f01","impliedFormat":99},{"version":"95cd83b807e10b1af408e62caf5fea98562221e8ddca9d7ccc053d482283ddda","impliedFormat":99},{"version":"19287d6b76288c2814f1633bdd68d2b76748757ffd355e73e41151644e4773d6","impliedFormat":99},{"version":"fc4e6ec7dade5f9d422b153c5d8f6ad074bd9cc4e280415b7dc58fb5c52b5df1","impliedFormat":99},{"version":"3aea973106e1184db82d8880f0ca134388b6cbc420f7309d1c8947b842886349","impliedFormat":99},{"version":"765e278c464923da94dda7c2b281ece92f58981642421ae097862effe2bd30fa","impliedFormat":99},{"version":"de260bed7f7d25593f59e859bd7c7f8c6e6bb87e8686a0fcafa3774cb5ca02d8","impliedFormat":99},{"version":"b5c341ce978f5777fbe05bc86f65e9906a492fa6b327bda3c6aae900c22e76c6","impliedFormat":99},{"version":"686ddbfaf88f06b02c6324005042f85317187866ca0f8f4c9584dd9479653344","impliedFormat":99},{"version":"7f789c0c1db29dd3aab6e159d1ba82894a046bf8df595ac48385931ae6ad83e0","impliedFormat":99},{"version":"8eb3057d4fe9b59b2492921b73a795a2455ebe94ccb3d01027a7866612ead137","impliedFormat":99},{"version":"1e43c5d7aee1c5ec20611e28b5417f5840c75d048de9d7f1800d6808499236f8","impliedFormat":99},{"version":"d42610a5a2bee4b71769968a24878885c9910cd049569daa2d2ee94208b3a7a5","impliedFormat":99},{"version":"f6ed95506a6ed2d40ed5425747529befaa4c35fcbbc1e0d793813f6d725690fa","impliedFormat":99},{"version":"a6fcc1cd6583939506c906dff1276e7ebdc38fbe12d3e108ba38ad231bd18d97","impliedFormat":99},{"version":"ed13354f0d96fb6d5878655b1fead51722b54875e91d5e53ef16de5b71a0e278","impliedFormat":99},{"version":"1193b4872c1fb65769d8b164ca48124c7ebacc33eae03abf52087c2b29e8c46c","impliedFormat":99},{"version":"af682dfabe85688289b420d939020a10eb61f0120e393d53c127f1968b3e9f66","impliedFormat":99},{"version":"0dca04006bf13f72240c6a6a502df9c0b49c41c3cab2be75e81e9b592dcd4ea8","impliedFormat":99},{"version":"79d6ac4a2a229047259116688f9cd62fda25422dee3ad304f77d7e9af53a41ef","impliedFormat":99},{"version":"64534c17173990dc4c3d9388d16675a059aac407031cfce8f7fdffa4ee2de988","impliedFormat":99},{"version":"ba46d160a192639f3ca9e5b640b870b1263f24ac77b6895ab42960937b42dcbb","impliedFormat":99},{"version":"5e5ddd6fc5b590190dde881974ab969455e7fad61012e32423415ae3d085b037","impliedFormat":99},{"version":"1c16fd00c42b60b96fe0fa62113a953af58ddf0d93b0a49cb4919cf5644616f0","impliedFormat":99},{"version":"eb240c0e6b412c57f7d9a9f1c6cd933642a929837c807b179a818f6e8d3a4e44","impliedFormat":99},{"version":"4a7bde5a1155107fc7d9483b8830099f1a6072b6afda5b78d91eb5d6549b3956","impliedFormat":99},{"version":"3c1baaffa9a24cc7ef9eea6b64742394498e0616b127ca630aca0e11e3298006","impliedFormat":99},{"version":"87ca1c31a326c898fa3feb99ec10750d775e1c84dbb7c4b37252bcf3742c7b21","impliedFormat":99},{"version":"d7bd26af1f5457f037225602035c2d7e876b80d02663ab4ca644099ad3a55888","impliedFormat":99},{"version":"2ad0a6b93e84a56b64f92f36a07de7ebcb910822f9a72ad22df5f5d642aff6f3","impliedFormat":99},{"version":"523d1775135260f53f672264937ee0f3dc42a92a39de8bee6c48c7ea60b50b5a","impliedFormat":99},{"version":"e441b9eebbc1284e5d995d99b53ed520b76a87cab512286651c4612d86cd408e","impliedFormat":99},{"version":"76f853ee21425c339a79d28e0859d74f2e53dee2e4919edafff6883dd7b7a80f","impliedFormat":99},{"version":"00cf042cd6ba1915648c8d6d2aa00e63bbbc300ea54d28ed087185f0f662e080","impliedFormat":99},{"version":"f57e6707d035ab89a03797d34faef37deefd3dd90aa17d90de2f33dce46a2c56","impliedFormat":99},{"version":"cc8b559b2cf9380ca72922c64576a43f000275c72042b2af2415ce0fb88d7077","impliedFormat":99},{"version":"1a337ca294c428ba8f2eb01e887b28d080ee4a4307ae87e02e468b1d26af4a74","impliedFormat":99},{"version":"5a15362fc2e72765a908c0d4dd89e3ab3b763e8bc8c23f19234a709ecfd202fe","impliedFormat":99},{"version":"2dffdfe62ac8af0943853234519616db6fd8958fc7ff631149fd8364e663f361","impliedFormat":99},{"version":"5dbdb2b2229b5547d8177c34705272da5a10b8d0033c49efbc9f6efba5e617f2","impliedFormat":99},{"version":"6fc0498cd8823d139004baff830343c9a0d210c687b2402c1384fb40f0aa461c","impliedFormat":99},{"version":"8492306a4864a1dc6fc7e0cc0de0ae9279cbd37f3aae3e9dc1065afcdc83dddc","impliedFormat":99},{"version":"c011b378127497d6337a93f020a05f726db2c30d55dc56d20e6a5090f05919a6","impliedFormat":99},{"version":"f4556979e95a274687ae206bbab2bb9a71c3ad923b92df241d9ab88c184b3f40","impliedFormat":99},{"version":"50e82bb6e238db008b5beba16d733b77e8b2a933c9152d1019cf8096845171a4","impliedFormat":99},{"version":"d6011f8b8bbf5163ef1e73588e64a53e8bf1f13533c375ec53e631aad95f1375","impliedFormat":99},{"version":"693cd7936ac7acfa026d4bcb5801fce71cec49835ba45c67af1ef90dbfd30af7","impliedFormat":99},{"version":"195e2cf684ecddfc1f6420564535d7c469f9611ce7a380d6e191811f84556cd2","impliedFormat":99},{"version":"1dc6b6e7b2a7f2962f31c77f4713f3a5a132bbe14c00db75d557568fe82e4311","impliedFormat":99},{"version":"add93b1180e9aaac2dae4ef3b16f7655893e2ecbe62bd9e48366c305f0063d89","impliedFormat":99},{"version":"594bd896fe37c970aafb7a376ebeec4c0d636b62a5f611e2e27d30fb839ad8a5","impliedFormat":99},{"version":"b1c6a6faf60542ba4b4271db045d7faea56e143b326ef507d2797815250f3afc","impliedFormat":99},{"version":"8c8b165beb794260f462679329b131419e9f5f35212de11c4d53e6d4d9cbedf6","impliedFormat":99},{"version":"ee5a4cf57d49fcf977249ab73c690a59995997c4672bb73fcaaf2eed65dbd1b2","impliedFormat":99},{"version":"f9f36051f138ab1c40b76b230c2a12b3ce6e1271179f4508da06a959f8bee4c1","impliedFormat":99},{"version":"9dc2011a3573d271a45c12656326530c0930f92539accbec3531d65131a14a14","impliedFormat":99},{"version":"091521ce3ede6747f784ae6f68ad2ea86bbda76b59d2bf678bcad2f9d141f629","impliedFormat":99},{"version":"202c2be951f53bafe943fb2c8d1245e35ed0e4dfed89f48c9a948e4d186dd6d4","impliedFormat":99},{"version":"c618aead1d799dbf4f5b28df5a6b9ce13d72722000a0ec3fe90a8115b1ea9226","impliedFormat":99},{"version":"9b0bf59708549c3e77fddd36530b95b55419414f88bbe5893f7bc8b534617973","impliedFormat":99},{"version":"7e216f67c4886f1bde564fb4eebdd6b185f262fe85ad1d6128cad9b229b10354","impliedFormat":99},{"version":"cd51e60b96b4d43698df74a665aa7a16604488193de86aa60ec0c44d9f114951","impliedFormat":99},{"version":"b63341fb6c7ba6f2aeabd9fc46b43e6cc2d2b9eec06534cfd583d9709f310ec2","impliedFormat":99},{"version":"be2af50c81b15bcfe54ad60f53eb1c72dae681c72d0a9dce1967825e1b5830a3","impliedFormat":99},{"version":"be5366845dfb9726f05005331b9b9645f237f1ddc594c0def851208e8b7d297b","impliedFormat":99},{"version":"5ddd536aaeadd4bf0f020492b3788ed209a7050ce27abec4e01c7563ff65da81","impliedFormat":99},{"version":"e243b24da119c1ef0d79af2a45217e50682b139cb48e7607efd66cc01bd9dcda","impliedFormat":99},{"version":"5b1398c8257fd180d0bf62e999fe0a89751c641e87089a83b24392efda720476","impliedFormat":99},{"version":"1588b1359f8507a16dbef67cd2759965fc2e8d305e5b3eb71be5aa9506277dff","impliedFormat":99},{"version":"4c99f2524eee1ec81356e2b4f67047a4b7efaf145f1c4eb530cd358c36784423","impliedFormat":99},{"version":"b30c6b9f6f30c35d6ef84daed1c3781e367f4360171b90598c02468b0db2fc3d","impliedFormat":99},{"version":"79c0d32274ccfd45fae74ac61d17a2be27aea74c70806d22c43fc625b7e9f12a","impliedFormat":99},{"version":"1b7e3958f668063c9d24ac75279f3e610755b0f49b1c02bb3b1c232deb958f54","impliedFormat":99},{"version":"779d4022c3d0a4df070f94858a33d9ebf54af3664754536c4ce9fd37c6f4a8db","impliedFormat":99},{"version":"e662f063d46aa8c088edffdf1d96cb13d9a2cbf06bc38dc6fc62b4d125fb7b49","impliedFormat":99},{"version":"d1d612df1e41c90d9678b07740d13d4f8e6acec2f17390d4ff4be5c889a6d37d","impliedFormat":99},{"version":"c95933fe140918892d569186f17b70ef6b1162f851a0f13f6a89e8f4d599c5a1","impliedFormat":99},{"version":"1d8d30677f87c13c2786980a80750ac1e281bdb65aa013ea193766fe9f0edd74","impliedFormat":99},{"version":"4661673cbc984b8a6ee5e14875a71ed529b64e7f8e347e12c0db4cecc25ad67d","impliedFormat":99},{"version":"7f980a414274f0f23658baa9a16e21d828535f9eac538e2eab2bb965325841db","impliedFormat":99},{"version":"20fb747a339d3c1d4a032a31881d0c65695f8167575e01f222df98791a65da9b","impliedFormat":99},{"version":"dd4e7ebd3f205a11becf1157422f98db675a626243d2fbd123b8b93efe5fb505","impliedFormat":99},{"version":"43ec6b74c8d31e88bb6947bb256ad78e5c6c435cbbbad991c3ff39315b1a3dba","impliedFormat":99},{"version":"b27242dd3af2a5548d0c7231db7da63d6373636d6c4e72d9b616adaa2acef7e1","impliedFormat":99},{"version":"e0ee7ba0571b83c53a3d6ec761cf391e7128d8f8f590f8832c28661b73c21b68","impliedFormat":99},{"version":"072bfd97fc61c894ef260723f43a416d49ebd8b703696f647c8322671c598873","impliedFormat":99},{"version":"e70875232f5d5528f1650dd6f5c94a5bed344ecf04bdbb998f7f78a3c1317d02","impliedFormat":99},{"version":"8e495129cb6cd8008de6f4ff8ce34fe1302a9e0dcff8d13714bd5593be3f7898","impliedFormat":99},{"version":"0345bc0b1067588c4ea4c48e34425d3284498c629bc6788ebc481c59949c9037","impliedFormat":99},{"version":"e30f5b5d77c891bc16bd65a2e46cd5384ea57ab3d216c377f482f535db48fc8f","impliedFormat":99},{"version":"f113afe92ee919df8fc29bca91cab6b2ffbdd12e4ac441d2bb56121eb5e7dbe3","impliedFormat":99},{"version":"49d567cc002efb337f437675717c04f207033f7067825b42bb59c9c269313d83","impliedFormat":99},{"version":"1d248f707d02dc76555298a934fba0f337f5028bb1163ce59cd7afb831c9070f","impliedFormat":99},{"version":"5d8debffc9e7b842dc0f17b111673fe0fc0cca65e67655a2b543db2150743385","impliedFormat":99},{"version":"5fccbedc3eb3b23bc6a3a1e44ceb110a1f1a70fa8e76941dce3ae25752caa7a9","impliedFormat":99},{"version":"f4031b95f3bab2b40e1616bd973880fb2f1a97c730bac5491d28d6484fac9560","impliedFormat":99},{"version":"dbe75b3c5ed547812656e7945628f023c4cd0bc1879db0db3f43a57fb8ec0e2b","impliedFormat":99},{"version":"b754718a546a1939399a6d2a99f9022d8a515f2db646bab09f7d2b5bff3cbb82","impliedFormat":99},{"version":"2eef10fb18ed0b4be450accf7a6d5bcce7b7f98e02cac4e6e793b7ad04fc0d79","impliedFormat":99},{"version":"c46f471e172c3be12c0d85d24876fedcc0c334b0dab48060cdb1f0f605f09fed","impliedFormat":99},{"version":"7d6ddeead1d208588586c58c26e4a23f0a826b7a143fb93de62ed094d0056a33","impliedFormat":99},{"version":"7c5782291ff6e7f2a3593295681b9a411c126e3736b83b37848032834832e6b9","impliedFormat":99},{"version":"3a3f09df6258a657dd909d06d4067ee360cd2dccc5f5d41533ae397944a11828","impliedFormat":99},{"version":"ea54615be964503fec7bce04336111a6fa455d3e8d93d44da37b02c863b93eb8","impliedFormat":99},{"version":"2a83694bc3541791b64b0e57766228ea23d92834df5bf0b0fcb93c5bb418069c","impliedFormat":99},{"version":"b5913641d6830e7de0c02366c08b1d26063b5758132d8464c938e78a45355979","impliedFormat":99},{"version":"46c095d39c1887979d9494a824eda7857ec13fb5c20a6d4f7d02c2975309bf45","impliedFormat":99},{"version":"f6e02ca076dc8e624aa38038e3488ebd0091e2faea419082ed764187ba8a6500","impliedFormat":99},{"version":"4d49e8a78aba1d4e0ad32289bf8727ae53bc2def9285dff56151a91e7d770c3e","impliedFormat":99},{"version":"63315cf08117cc728eab8f3eec8801a91d2cd86f91d0ae895d7fd928ab54596d","impliedFormat":99},{"version":"a14a6f3a5636bcaebfe9ec2ccfa9b07dc94deb1f6c30358e9d8ea800a1190d5e","impliedFormat":99},{"version":"21206e7e81876dabf2a7af7aa403f343af1c205bdcf7eff24d9d7f4eee6214c4","impliedFormat":99},{"version":"cd0a9f0ffec2486cad86b7ef1e4da42953ffeb0eb9f79f536e16ff933ec28698","impliedFormat":99},{"version":"f609a6ec6f1ab04dba769e14d6b55411262fd4627a099e333aa8876ea125b822","impliedFormat":99},{"version":"6d8052bb814be030c64cb22ca0e041fe036ad3fc8d66208170f4e90d0167d354","impliedFormat":99},{"version":"851f72a5d3e8a2bf7eeb84a3544da82628f74515c92bdf23c4a40af26dcc1d16","impliedFormat":99},{"version":"59692a7938aab65ea812a8339bbc63c160d64097fe5a457906ea734d6f36bcd4","impliedFormat":99},{"version":"8cb3b95e610c44a9986a7eab94d7b8f8462e5de457d5d10a0b9c6dd16bde563b","impliedFormat":99},{"version":"f571713abd9a676da6237fe1e624d2c6b88c0ca271c9f1acc1b4d8efeea60b66","impliedFormat":99},{"version":"16c5d3637d1517a3d17ed5ebcfbb0524f8a9997a7b60f6100f7c5309b3bb5ac8","impliedFormat":99},{"version":"ca1ec669726352c8e9d897f24899abf27ad15018a6b6bcf9168d5cd1242058ab","impliedFormat":99},{"version":"bffb1b39484facf6d0c5d5feefe6c0736d06b73540b9ce0cf0f12da2edfd8e1d","impliedFormat":99},{"version":"f1663c030754f6171b8bb429096c7d2743282de7733bccd6f67f84a4c588d96e","impliedFormat":99},{"version":"dd09693285e58504057413c3adc84943f52b07d2d2fd455917f50fa2a63c9d69","impliedFormat":99},{"version":"d94c94593d03d44a03810a85186ae6d61ebeb3a17a9b210a995d85f4b584f23d","impliedFormat":99},{"version":"c7c3bf625a8cb5a04b1c0a2fbe8066ecdbb1f383d574ca3ffdabe7571589a935","impliedFormat":99},{"version":"7a2f39a4467b819e873cd672c184f45f548511b18f6a408fe4e826136d0193bb","impliedFormat":99},{"version":"f8a0ae0d3d4993616196619da15da60a6ec5a7dfaf294fe877d274385eb07433","impliedFormat":99},{"version":"2cca80de38c80ef6c26deb4e403ca1ff4efbe3cf12451e26adae5e165421b58d","impliedFormat":99},{"version":"0070d3e17aa5ad697538bf865faaff94c41f064db9304b2b949eb8bcccb62d34","impliedFormat":99},{"version":"53df93f2db5b7eb8415e98242c1c60f6afcac2db44bce4a8830c8f21eee6b1dd","impliedFormat":99},{"version":"d67bf28dc9e6691d165357424c8729c5443290367344263146d99b2f02a72584","impliedFormat":99},{"version":"932557e93fbdf0c36cc29b9e35950f6875425b3ac917fa0d3c7c2a6b4f550078","impliedFormat":99},{"version":"e3dc7ec1597fb61de7959335fb7f8340c17bebf2feb1852ed8167a552d9a4a25","impliedFormat":99},{"version":"b64e15030511c5049542c2e0300f1fe096f926cf612662884f40227267f5cd9f","impliedFormat":99},{"version":"1932796f09c193783801972a05d8fb1bfef941bb46ac76fbe1abb0b3bfb674fa","impliedFormat":99},{"version":"d9575d5787311ee7d61ad503f5061ebcfaf76b531cfecce3dc12afb72bb2d105","impliedFormat":99},{"version":"5b41d96c9a4c2c2d83f1200949f795c3b6a4d2be432b357ad1ab687e0f0de07c","impliedFormat":99},{"version":"38ec829a548e869de4c5e51671245a909644c8fb8e7953259ebb028d36b4dd06","impliedFormat":99},{"version":"20c2c5e44d37dac953b516620b5dba60c9abd062235cdf2c3bfbf722d877a96b","impliedFormat":99},{"version":"875fe6f7103cf87c1b741a0895fda9240fed6353d5e7941c8c8cbfb686f072b4","impliedFormat":99},{"version":"c0ccccf8fbcf5d95f88ed151d0d8ce3015aa88cf98d4fd5e8f75e5f1534ee7ae","impliedFormat":99},{"version":"1b1f4aba21fd956269ced249b00b0e5bfdbd5ebd9e628a2877ab1a2cf493c919","impliedFormat":99},{"version":"939e3299952dff0869330e3324ba16efe42d2cf25456d7721d7f01a43c1b0b34","impliedFormat":99},{"version":"f0a9b52faec508ba22053dedfa4013a61c0425c8b96598cef3dea9e4a22637c6","impliedFormat":99},{"version":"d5b302f50db61181adc6e209af46ae1f27d7ef3d822de5ea808c9f44d7d219fd","impliedFormat":99},{"version":"19131632ba492c83e8eeadf91a481def0e0b39ffc3f155bc20a7f640e0570335","impliedFormat":99},{"version":"4581c03abea21396c3e1bb119e2fd785a4d91408756209cbeed0de7070f0ab5b","impliedFormat":99},{"version":"ebcd3b99e17329e9d542ef2ccdd64fddab7f39bc958ee99bbdb09056c02d6e64","impliedFormat":99},{"version":"4b148999deb1d95b8aedd1a810473a41d9794655af52b40e4894b51a8a4e6a6d","impliedFormat":99},{"version":"1781cc99a0f3b4f11668bb37cca7b8d71f136911e87269e032f15cf5baa339bf","impliedFormat":99},{"version":"33f1b7fa96117d690035a235b60ecd3cd979fb670f5f77b08206e4d8eb2eb521","impliedFormat":99},{"version":"01429b306b94ff0f1f5548ce5331344e4e0f5872b97a4776bd38fd2035ad4764","impliedFormat":99},{"version":"c1bc4f2136de7044943d784e7a18cb8411c558dbb7be4e4b4876d273cbd952af","impliedFormat":99},{"version":"5470f84a69b94643697f0d7ec2c8a54a4bea78838aaa9170189b9e0a6e75d2cf","impliedFormat":99},{"version":"36aaa44ee26b2508e9a6e93cd567e20ec700940b62595caf962249035e95b5e3","impliedFormat":99},{"version":"f8343562f283b7f701f86ad3732d0c7fd000c20fe5dc47fa4ed0073614202b4d","impliedFormat":99},{"version":"a53c572630a78cd99a25b529069c1e1370f8a5d8586d98e798875f9052ad7ad1","impliedFormat":99},{"version":"4ad3451d066711dde1430c544e30e123f39e23c744341b2dfd3859431c186c53","impliedFormat":99},{"version":"8069cbef9efa7445b2f09957ffbc27b5f8946fdbade4358fb68019e23df4c462","impliedFormat":99},{"version":"cd8b4e7ad04ba9d54eb5b28ac088315c07335b837ee6908765436a78d382b4c3","impliedFormat":99},{"version":"d533d8f8e5c80a30c51f0cbfe067b60b89b620f2321d3a581b5ba9ac8ffd7c3a","impliedFormat":99},{"version":"33f49f22fdda67e1ddbacdcba39e62924793937ea7f71f4948ed36e237555de3","impliedFormat":99},{"version":"710c31d7c30437e2b8795854d1aca43b540cb37cefd5900f09cfcd9e5b8540c4","impliedFormat":99},{"version":"b2c03a0e9628273bc26a1a58112c311ffbc7a0d39938f3878837ab14acf3bc41","impliedFormat":99},{"version":"a93beb0aa992c9b6408e355ea3f850c6f41e20328186a8e064173106375876c2","impliedFormat":99},{"version":"efdcba88fcd5421867898b5c0e8ea6331752492bd3547942dea96c7ebcb65194","impliedFormat":99},{"version":"a98e777e7a6c2c32336a017b011ba1419e327320c3556b9139413e48a8460b9a","impliedFormat":99},{"version":"ea44f7f8e1fe490516803c06636c1b33a6b82314366be1bd6ffa4ba89bc09f86","impliedFormat":99},{"version":"c25f22d78cc7f46226179c33bef0e4b29c54912bde47b62e5fdaf9312f22ffcb","impliedFormat":99},{"version":"d57579cfedc5a60fda79be303080e47dfe0c721185a5d95276523612228fcefc","impliedFormat":99},{"version":"a41630012afe0d4a9ff14707f96a7e26e1154266c008ddbd229e3f614e4d1cf7","impliedFormat":99},{"version":"298a858633dfa361bb8306bbd4cfd74f25ab7cc20631997dd9f57164bc2116d1","impliedFormat":99},{"version":"921782c45e09940feb232d8626a0b8edb881be2956520c42c44141d9b1ddb779","impliedFormat":99},{"version":"06117e4cc7399ce1c2b512aa070043464e0561f956bda39ef8971a2fcbcdbf2e","impliedFormat":99},{"version":"daccf332594b304566c7677c2732fed6e8d356da5faac8c5f09e38c2f607a4ab","impliedFormat":99},{"version":"4386051a0b6b072f35a2fc0695fecbe4a7a8a469a1d28c73be514548e95cd558","impliedFormat":99},{"version":"78e41de491fe25947a7fd8eeef7ebc8f1c28c1849a90705d6e33f34b1a083b90","impliedFormat":99},{"version":"3ccd198e0a693dd293ed22e527c8537c76b8fe188e1ebf20923589c7cfb2c270","impliedFormat":99},{"version":"2ebf2ee015d5c8008428493d4987e2af9815a76e4598025dd8c2f138edc1dcae","impliedFormat":99},{"version":"0dcc8f61382c9fcdafd48acc54b6ffda69ca4bb7e872f8ad12fb011672e8b20c","impliedFormat":99},{"version":"9db563287eb527ead0bcb9eb26fbec32f662f225869101af3cabcb6aee9259cf","impliedFormat":99},{"version":"068489bec523be43f12d8e4c5c337be4ff6a7efb4fe8658283673ae5aae14b85","impliedFormat":99},{"version":"838212d0dc5b97f7c5b5e29a89953de3906f72fce13c5ae3c5ade346f561d226","impliedFormat":99},{"version":"ddc78d29af824ad7587152ea523ed5d60f2bc0148d8741c5dacf9b5b44587b1b","impliedFormat":99},{"version":"019b522e3783e5519966927ceeb570eefcc64aba3f9545828a5fb4ae1fde53c6","impliedFormat":99},{"version":"b34623cc86497a5123de522afba770390009a56eebddba38d2aa5798b70b0a87","impliedFormat":99},{"version":"d2a8cbeb0c0caaf531342062b4b5c227118862879f6a25033e31fad00797b7eb","impliedFormat":99},{"version":"14891c20f15be1d0d42ecbbd63de1c56a4d745e3ea2b4c56775a4d5d36855630","impliedFormat":99},{"version":"e55a1f6b198a39e38a3cea3ffe916aab6fde7965c827db3b8a1cacf144a67cd9","impliedFormat":99},{"version":"f7910ccfe56131e99d52099d24f3585570dc9df9c85dd599a387b4499596dd4d","impliedFormat":99},{"version":"9409ac347c5779f339112000d7627f17ede6e39b0b6900679ce5454d3ad2e3c9","impliedFormat":99},{"version":"22dfe27b0aa1c669ce2891f5c89ece9be18074a867fe5dd8b8eb7c46be295ca1","impliedFormat":99},{"version":"684a5c26ce2bb7956ef6b21e7f2d1c584172cd120709e5764bc8b89bac1a10eb","impliedFormat":99},{"version":"caee92604debc32ccab33dc2128727eb3c82e56d9af95f91f0177033893ebb42","impliedFormat":99},{"version":"c66be51e3d121c163a4e140b6b520a92e1a6a8a8862d44337be682e6f5ec290a","impliedFormat":99},{"version":"66e486a9c9a86154dc9780f04325e61741f677713b7e78e515938bf54364fee2","impliedFormat":99},{"version":"d211bc80b6b6e98445df46fe9dd3091944825dd924986a1c15f9c66d7659c495","impliedFormat":99},{"version":"8dd2b72f5e9bf88939d066d965144d07518e180efec3e2b6d06ae5e725d84c7d","impliedFormat":99},{"version":"949cb88e315ab1a098c3aa4a8b02496a32b79c7ef6d189eee381b96471a7f609","impliedFormat":99},{"version":"bc43af2a5fa30a36be4a3ed195ff29ffb8067bf4925aa350ace9d9f18f380cc2","impliedFormat":99},{"version":"b9beb5d678e6cf67901f1154f91dff455378e6aa89b20da56ed1400f3fb1f3cf","impliedFormat":99},{"version":"8428e71f6d1b63acf55ceb56244aad9cf07678cf9626166e4aded15e3d252f8a","impliedFormat":99},{"version":"11505212ab24aa0f06d719a09add4be866e26f0fc15e96a1a2a8522c0c6a73a8","impliedFormat":99},{"version":"4d647d8335edecd696fa7e59a7f2f2fea835d56d800aa2cb9278c8e5c6806815","impliedFormat":99},{"version":"c44bb0071cededc08236d57d1131c44339c1add98b029a95584dfe1462533575","impliedFormat":99},{"version":"7a4935af71877da3bbc53938af00e5d4f6d445ef850e1573a240447dcb137b5c","impliedFormat":99},{"version":"4e313033202712168ecc70a6d830964ad05c9c93f81d806d7a25d344f6352565","impliedFormat":99},{"version":"8a1fc69eaf8fc8d447e6f776fbfa0c1b12245d7f35f1dbfb18fbc2d941f5edd8","impliedFormat":99},{"version":"afb9b4c8bd38fb43d38a674de56e6f940698f91114fded0aa119de99c6cd049a","impliedFormat":99},{"version":"1d277860f19b8825d027947fca9928ee1f3bfaa0095e85a97dd7a681b0698dfc","impliedFormat":99},{"version":"6d32122bb1e7c0b38b6f126d166dff1f74c8020f8ba050248d182dcafc835d08","impliedFormat":99},{"version":"cfac5627d337b82d2fbeff5f0f638b48a370a8d72d653327529868a70c5bc0f8","impliedFormat":99},{"version":"8a826bc18afa4c5ed096ceb5d923e2791a5bae802219e588a999f535b1c80492","impliedFormat":99},{"version":"73e94021c55ab908a1b8c53792e03bf7e0d195fee223bdc5567791b2ccbfcdec","impliedFormat":99},{"version":"5f73eb47b37f3a957fe2ac6fe654648d60185908cab930fc01c31832a5cb4b10","impliedFormat":99},{"version":"cb6372a2460010a342ba39e06e1dcfd722e696c9d63b4a71577f9a3c72d09e0a","impliedFormat":99},{"version":"1e289698069f553f36bbf12ee0084c492245004a69409066faceb173d2304ec4","impliedFormat":99},{"version":"f1ca71145e5c3bba4d7f731db295d593c3353e9a618b40c4af0a4e9a814bb290","impliedFormat":99},{"version":"ac12a6010ff501e641f5a8334b8eaf521d0e0739a7e254451b6eea924c3035c7","impliedFormat":99},{"version":"97395d1e03af4928f3496cc3b118c0468b560765ab896ce811acb86f6b902b5c","impliedFormat":99},{"version":"7dcfbd6a9f1ce1ddf3050bd469aa680e5259973b4522694dc6291afe20a2ae28","impliedFormat":99},{"version":"6e545419ad200ae4614f8e14d32b7e67e039c26a872c0f93437b0713f54cde53","impliedFormat":99},{"version":"efc225581aae9bb47d421a1b9f278db0238bc617b257ce6447943e59a2d1621e","impliedFormat":99},{"version":"8833b88e26156b685bc6f3d6a014c2014a878ffbd240a01a8aee8a9091014e9c","impliedFormat":99},{"version":"7a2a42a1ac642a9c28646731bd77d9849cb1a05aa1b7a8e648f19ab7d72dd7dc","impliedFormat":99},{"version":"4d371c53067a3cc1a882ff16432b03291a016f4834875b77169a2d10bb1b023e","impliedFormat":99},{"version":"99b38f72e30976fd1946d7b4efe91aa227ecf0c9180e1dd6502c1d39f37445b4","impliedFormat":99},{"version":"df1bcf0b1c413e2945ce63a67a1c5a7b21dbbec156a97d55e9ea0eed90d2c604","impliedFormat":99},{"version":"6e2011a859fa435b1196da1720be944ed59c668bb42d2f2711b49a506b3e4e90","impliedFormat":99},{"version":"b4bfa90fac90c6e0d0185d2fe22f059fec67587cc34281f62294f9c4615a8082","impliedFormat":99},{"version":"036d363e409ebe316a6366aff5207380846f8f82e100c2e3db4af5fe0ad0c378","impliedFormat":99},{"version":"5ae6642588e4a72e5a62f6111cb750820034a7fbe56b5d8ec2bcb29df806ce52","impliedFormat":99},{"version":"6fca09e1abc83168caf36b751dec4ddda308b5714ec841c3ff0f3dc07b93c1b8","impliedFormat":99},{"version":"2f7268e6ac610c7122b6b416e34415ce42b51c56d080bef41786d2365f06772d","impliedFormat":99},{"version":"9a07957f75128ed0be5fc8a692a14da900878d5d5c21880f7c08f89688354aa4","impliedFormat":99},{"version":"8b6f3ae84eab35c50cf0f1b608c143fe95f1f765df6f753cd5855ae61b3efbe2","impliedFormat":99},{"version":"992491d83ff2d1e7f64a8b9117daee73724af13161f1b03171f0fa3ffe9b4e3e","impliedFormat":99},{"version":"12bcf6af851be8dd5f3e66c152bb77a83829a6a8ba8c5acc267e7b15e11aa9ab","impliedFormat":99},{"version":"e2704efc7423b077d7d9a21ddb42f640af1565e668d5ec85f0c08550eff8b833","impliedFormat":99},{"version":"704482f2a4a47287b195fa15c63de9188819072bc0f7635da3411ed9509bfa63","impliedFormat":99},{"version":"20c66936bdbdf6938b49053377bceea1009f491d89c2dff81efa36812a85f298","impliedFormat":99},{"version":"0c06897f7ab3830cef0701e0e083b2c684ed783ae820b306aedd501f32e9562d","impliedFormat":99},{"version":"56cc6eae48fd08fa709cf9163d01649f8d24d3fea5806f488d2b1b53d25e1d6c","impliedFormat":99},{"version":"57a925b13947b38c34277d93fb1e85d6f03f47be18ca5293b14082a1bd4a48f5","impliedFormat":99},{"version":"9d9d64c1fa76211dd529b6a24061b8d724e2110ee55d3829131bca47f3fe4838","impliedFormat":99},{"version":"c13042e244bb8cf65586e4131ef7aed9ca33bf1e029a43ed0ebab338b4465553","impliedFormat":99},{"version":"54be9b9c71a17cb2519b841fad294fa9dc6e0796ed86c8ac8dd9d8c0d1c3a631","impliedFormat":99},{"version":"10881be85efd595bef1d74dfa7b9a76a5ab1bfed9fb4a4ca7f73396b72d25b90","impliedFormat":99},{"version":"925e71eaa87021d9a1215b5cf5c5933f85fe2371ddc81c32d1191d7842565302","impliedFormat":99},{"version":"faed0b3f8979bfbfb54babcff9d91bd51fda90931c7716effa686b4f30a09575","impliedFormat":99},{"version":"53c72d68328780f711dbd39de7af674287d57e387ddc5a7d94f0ffd53d8d3564","impliedFormat":99},{"version":"51129924d359cdebdccbf20dbabc98c381b58bfebe2457a7defed57002a61316","impliedFormat":99},{"version":"7270a757071e3bc7b5e7a6175f1ac9a4ddf4de09f3664d80cb8805138f7d365b","impliedFormat":99},{"version":"ea7b5c6a79a6511cdeeedc47610370be1b0e932e93297404ef75c90f05fc1b61","impliedFormat":99},{"version":"385186398bf278346f83d74d0fa6733bc30d7403e391c70c13918ae784bcb538","signature":"3b67826fbf472e0f44d5cb98d65c6faae1129c3151c7aeed37e1311fd43a1ea0"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"2c57db2bf2dbd9e8ef4853be7257d62a1cb72845f7b976bb4ee827d362675f96","impliedFormat":99},{"version":"894eb30992723a15e3ae75c46a3bf8808a526f5b3bff2c61c78f4d3e8d521cb8","signature":"c9e66c79207c3be6fa9cda6bf6f96476f6432d60a67bb823178c5c5bbc1ecb95"},{"version":"c1424847f8905ee22d15ce094f27ac27a0b33801fec847dbaf9b1239a5c2abd9","impliedFormat":1},{"version":"222ca30f5d8caedf7c691abb6ec681b4fe9d6a6008418f0c5f27ca64ee30e536","impliedFormat":1},{"version":"503c2d4238fb9e95fdfe87cab5e1683a673515e76516514ba1c571697a8d9655","impliedFormat":1},{"version":"2c378d9368abcd2eba8c29b294d40909845f68557bc0b38117e4f04fc56e5f9c","impliedFormat":1},{"version":"bb220eaac1677e2ad82ac4e7fd3e609a0c7b6f2d6d9c673a35068c97f9fcd5cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"c60b14c297cc569c648ddaea70bc1540903b7f4da416edd46687e88a543515a1","impliedFormat":1},{"version":"a43e9687b77e09d98cf9922bfe0910bb0ed7e5b910148c796e742764ce7dc773","impliedFormat":1},{"version":"faa03a3b555488b5ce533ce6b0cf46c75a7e1cd8f2af14211f5721ef6ea20c82","impliedFormat":1},{"version":"43c39d43de6c598e908401ed15ab7ba7d3e1b34460003025ea62ad48418dde98","impliedFormat":1},{"version":"80c3dbd0388dfa12adaab2ba562b961d79eabaa5f966dea4a59954effa7dbe8d","impliedFormat":1},{"version":"650c26b5a44787da1b03c89a3a17b2c6dc30c6f152c6314389298759e6a59275","impliedFormat":1},{"version":"e014c4f7e51d02f2aa47b21a45ab1313235283a07dc039dd2ab7a104f64da7f3","impliedFormat":1},{"version":"63b3480521274886ca85e33a7dadbd5052d3b5f3313800355a42428ea0361a96","impliedFormat":1},{"version":"f734b58ea162765ff4d4a36f671ee06da898921e985a2064510f4925ec1ed062","affectsGlobalScope":true,"impliedFormat":1},{"version":"acb93abc527fa52eb2adc5602a7c3c0949861f8e4317a187bb5c3372f872eff4","impliedFormat":1},{"version":"37f96daaddc2dd96712b2e86f3901f477ac01a5c2539b1bc07fd609d62039ee1","impliedFormat":1},{"version":"9c5c84c449a3d74e417343410ba9f1bd8bfeb32abd16945a1b3d0592ded31bc8","impliedFormat":1},{"version":"a7f09d2aaf994dbfd872eda4f2411d619217b04dbe0916202304e7a3d4b0f5f8","impliedFormat":1},{"version":"a1e2b9e55ddf6cfa9435f3a7026380749fda2f5a9f8dac57f4c5e1f40f53bf3c","impliedFormat":99},{"version":"fca68ac3b92725dbf3dac3f9fbc80775b66d2a9c642e75595a4a11a2095b3c9a","impliedFormat":1},{"version":"81c4a0e6de3d5674ec3a721e04b3eb3244180bda86a22c4185ecac0e3f051cd8","impliedFormat":1},{"version":"78d030052390a253a1ee7675591425671de366f6964130a8e148a2166d6fc452","impliedFormat":1},{"version":"223709d7c096b4e2bb00390775e43481426c370ac8e270de7e4c36d355fc8bc9","impliedFormat":1},{"version":"61a03761af9f60417c66882a48eb383957bda5987393d2f32e1ed104e8d48f15","impliedFormat":1},{"version":"2b8a883d217f55290af714b87ef738e32e0b99984b23b0f82a98caae362e7451","impliedFormat":1},{"version":"d5e806fbb24521445d9e5b11bc3fd626fdb2c0b11d3a8f96f9b68ea402cad9fa","impliedFormat":1},{"version":"7261cabedede09ebfd50e135af40be34f76fb9dbc617e129eaec21b00161ae86","impliedFormat":1},{"version":"ea554794a0d4136c5c6ea8f59ae894c3c0848b17848468a63ed5d3a307e148ae","impliedFormat":1},{"version":"26d9ea4d13529d0e6192db96841b264f9a0fc9236fe234d96cdf8e8141c24576","impliedFormat":1},{"version":"94c8c60f751015c8f38923e0d1ae32dd4780b572660123fa087b0cf9884a68a8","impliedFormat":1},{"version":"690c8311d7bcf6e2d2fb143335aebedc8025e9bbd5696da3d7fa35cf5ec5b6ac","impliedFormat":1},{"version":"685a189e1adddbdfd0eaee9f42df9e77e89fb60756305a398d8ee480148b6678","impliedFormat":1},{"version":"c5b47653a15ec7c0bde956e77e5ca103ddc180d40eb4b311e4a024ef7c668fb0","impliedFormat":1},{"version":"fb7e20b94d23d989fa7c7d20fccebef31c1ef2d3d9ca179cadba6516e4e918ad","impliedFormat":1},{"version":"8326f735a1f0d2b4ad20539cda4e0d2e7c5fc0b534e3c0d503d5ed20a5711009","impliedFormat":1},{"version":"8d720cd4ee809af1d81f4ce88f02168568d5fded574d89875afd8fe7afd9549e","impliedFormat":1},{"version":"df87c2628c5567fd71dc0b765c845b0cbfef61e7c2e56961ac527bfb615ea639","impliedFormat":1},{"version":"659a83f1dd901de4198c9c2aa70e4a46a9bd0c41ce8a42ee26f2dbff5e86b1f3","impliedFormat":1},{"version":"a66f3da7de689a5879af9501bbae12a28b42194e0a364afb7a6d395b3e3813c3","impliedFormat":1},{"version":"a0baa826317f013ecb3e451192a309b591f430432dddfec349fc61a11e9c44d4","impliedFormat":1},{"version":"953440f26228d2301293dbb5a71397b5508ba09f57c5dbcd33b16eca57076eb2","impliedFormat":1},{"version":"beb6995acedc0239d062124022004eb8341fa5eb62d9c867c1881c04f4233797","impliedFormat":1},{"version":"1b6358a3b261d9e6096154f9b5aecaddba845c95335d021e87a5626962092bd3","impliedFormat":1},{"version":"64aff4bce69cccfd193353af05e8b3ae3125c009969d2dda49072ec297e2fc82","impliedFormat":1},{"version":"cb4a9bad89a226da94b70cd0cca2010ffde636f34022bec7fc69caf9e6ad8e20","impliedFormat":1},{"version":"43587ce13d0b0bb9f6ee8363020d8521102381cefb4b650b1c4ae9ad56ed7e07","impliedFormat":1},{"version":"3f3526aea8d29f0c53f8fb99201c770c87c357b5e87349aca8494bfd0c145c26","impliedFormat":1},{"version":"e33bd2b4ebf93c3bb248d845e3751f5c31731268ce71bc38f99ec44e64daaab1","impliedFormat":1},{"version":"1801a58e8cbd538d216fbea6af3808bd2b25fa01cf8d52dba29b6b8ac93cb70c","impliedFormat":1},{"version":"4326dc453ff5bf36ad778e93b7021cdd9abcfc4efe75a5c04032324f404af558","impliedFormat":1},{"version":"9b597900f033ffe72808c6c39d62142c920499e51748a247d2f9dc16cdd3bcd5","impliedFormat":1},{"version":"64843c2f493a1ff3ef8cf8db3cff661598f13b6cb794675fc0b2af5fdb2f3116","impliedFormat":1},{"version":"0e447b14e81b5b3e5d83cbea58b734850f78fb883f810e46d3dedba1a5124658","impliedFormat":1},{"version":"bcd9c89a593fc73c694bb5e06c8bf7c6bdda0ac491195ef364d9dac5f7db0f03","impliedFormat":1},{"version":"929939785efdef0b6781b7d3a7098238ea3af41be010f18d6627fd061b6c9edf","impliedFormat":1},{"version":"6eaab464388a8b742621def40c40932bb0550813a32f70df10ecb6b2884c0c8f","impliedFormat":1},{"version":"fc94f97b7dbe8def50e4e6441cfc957a82e103358153b4bef1bf83d02c015ef0","impliedFormat":1},{"version":"6052522a593f094cfee0e99c76312a229cf2d49ac2e75095af83813ec9f4b109","impliedFormat":1},{"version":"7601b760d7679d3d678771b0719cb43b9406a3e10122da583f11b34ec96ebdbc","impliedFormat":1},{"version":"a63ce903dd08c662702e33700a3d28ca66ed21ac0591e1dbf4a0b309ae80e690","impliedFormat":1},{"version":"b9a7df08c1eebb4be745018c2eb1274bb8f3c833806a80bee366adeb6345bd4e","impliedFormat":1},{"version":"0e112389b534d19d42f5033e73cecbf189c7f1666853eb453649ae490595bb27","impliedFormat":1},{"version":"8f4844e37b671b16f618029c46ed308f8eecf129f7465d20f150b0bc2b505ac2","impliedFormat":1},{"version":"2ce8dcdc7d6ba8e1702e1d4aa2687d62990678ab518e26ac4d5495aa78199b14","impliedFormat":1},{"version":"b34fe66e28be3aaf3987b2ebb0f6553e63c54ba9d24ce81dc8666a472de5f46b","impliedFormat":1},{"version":"6e2d2b63c278fd1c8dd54da2328622c964f50afa62978ed1a73ccd85e99a4fc7","impliedFormat":1},{"version":"8bc28fd0aeb868da5ab03d778b6bfc14fd0243bc04495d0d897cb7e3cb4bfca8","impliedFormat":1},{"version":"f642b9a36789a744a3f269de516bdd08675bceda13ee45d26bc0302e9ec2dabe","impliedFormat":1},{"version":"6ce50ada4bc9d2ad69927dce35cead36da337a618de0a2daaaeeafe38c692597","impliedFormat":1},{"version":"13b8d0a9b0493191f15d11a5452e7c523f811583a983852c1c8539ab2cfdae7c","impliedFormat":1},{"version":"e8f45424b7cace1ce8c65052d4ee0c014b22e5aa3c114ae6fea32cef0f3d9c82","impliedFormat":1},{"version":"068f5afbae92a20a5fcd9cfce76f7b90de2c59a952396b5da225b61f95a1d60a","impliedFormat":1},{"version":"e97649774336f99385c03380cc4a1dbab65123c35cb3172f36ddef2f319a2ff9","impliedFormat":1},{"version":"a99bbc08536893273b1faa9c07c59c862f0fd363475a31d0c4b7bfc6df170c35","impliedFormat":1},{"version":"33a2af54111b3888415e1d81a7a803d37fada1ed2f419c427413742de3948ff5","impliedFormat":1},{"version":"0d364dcd873ebebc7d9c47c14808e9e179948537e903e76178237483581bbf6c","impliedFormat":1},{"version":"3fab75b3b823bf174ea1cee355e5bfb222277da1f8f9848f42150a05f5c3921b","impliedFormat":1},{"version":"14e655243975208ff46b52e65b9b36e3225dc610ffdd61afd8878565e2b62f3d","impliedFormat":1},{"version":"8c4224b82437321e1ba75fd34a0c1671e3ddcd8952b5c7bb84a1dead962ff953","impliedFormat":1},{"version":"e65e42a4d26b35a605baf789c348ee70220f72995c5ee6128a40328d3e8701c1","impliedFormat":1},{"version":"b5f27501077287cafa1257a91181b02c2c5fc6118206974960ee35c947bff460","impliedFormat":1},{"version":"f5f41e3a8df5eaa79ba16ae9c5f114beae9c2b32bb976a6175ecf3e2e975d10e","impliedFormat":1},{"version":"8a705ea6df44796af9df7704e6b7bc4fbff126fce0066fc9719936cc5668d054","impliedFormat":1},{"version":"fc8f837ef36ac7748fed8d55cce33bb3b3e8c10082f1f42512606c9b91e71b74","impliedFormat":1},{"version":"d080548751209b1ebf7f8e6284a82d8f87998fedce00f3872f513d4c11bad9d0","impliedFormat":1},{"version":"0f8107c8cc078f31adc9e1928c6f7b33230223f143ae183468a5ea3a7889b55b","impliedFormat":1},{"version":"38a131409a186927cc36d6cd16b9195a370082ff4cbecf60b23c9f7e5cd39901","impliedFormat":1},{"version":"81b262fe146dae64043337c7479a43b6ae67e74ac02c0729769e3d6e76d4d858","impliedFormat":1},{"version":"3051e0c946698682b8746ff3224ae5237435852c42a5179275358d5f547b71f7","impliedFormat":1},{"version":"4c7aa04345d784f2c8f96216370dafe86435add65ad0adcae5c1d2b82cd40a05","impliedFormat":1},{"version":"8fece074d02a27532eb2285f4f6803e98d7db8c956218d996910f2a961ee0fab","impliedFormat":1},{"version":"28675d40ec83b792b3003736fb009851b9729e70b7c97639625a0af5da4e0596","impliedFormat":1},{"version":"ad750b859d04354baa92aa0f02aafb3948ec2ae53c57906749ce94a0a2379ff4","impliedFormat":1},{"version":"4e8cec3e1789d0fe24376f6251e5cbe40fc5af278c7505d19789963570d9adee","impliedFormat":1},{"version":"7484b1e25cc822d12150f434159299ab2c8673adf5bd2434b54eb761ede22f76","impliedFormat":1},{"version":"9682bab70fa3b7027a9d30fb8ae1ee4e71ecb207b4643b913ba22e0eaf8f9b35","impliedFormat":1},{"version":"d7ed6d8bcc8c8d86a4307178e89cad6c88aac374fe87804c0bc7a0cc52c61a81","impliedFormat":1},{"version":"cff89395b8a7727af0a881b510273d74ce9df0fb6b640f6f4ce21da067485c2b","impliedFormat":1},{"version":"b713dea10b669b9d43a425d38525fc9aa6976eff98906a9491f055b48ee4d617","impliedFormat":1},{"version":"fb0ca8459e1a3c03e7f9b3f56b66df68e191748d6726c059732e79398abb9351","impliedFormat":1},{"version":"f83a4510748339b4157417db922474b9f1f43c0dc8dda5021b5c74923ed9a811","impliedFormat":1},{"version":"3d04566611a1a38f2d2c2fc8e2574c0e1d9d7afd692b4fcd8dc7a8f69ec9cd65","impliedFormat":1},{"version":"0052687c81e533e79a3135232798d3027c5e5afff69cd4b7ccc22be202bbbf4f","impliedFormat":1},{"version":"aa585adb25c3751a39bb6c6663ab1988f6dfd46f8225c0da12719e060562939e","impliedFormat":1},{"version":"a49ee6249fff5005c7b7db2b481fc0d75592da0c097af6c3580b67ce85713b8f","impliedFormat":1},{"version":"b88fbb95e567a0fa2df81bdd82b88b13545d79453787bda4543c0369f4f6d568","impliedFormat":1},{"version":"fd4a83bdc421c19734cd066e1411dae15348c25484db04a0a2f7029d1a256963","impliedFormat":1},{"version":"af31f37264ea5d5349eec50786ceca75c572ed3be91bdd7cb428fdd8cd14b17c","impliedFormat":1},{"version":"8d56fb4ae16943117591d60ffd52f4544affc46c44111b492d4f2ab51ff5268c","impliedFormat":1},{"version":"40683566071340b03c74d0a4ffa84d49fedb181a691ce04c97e11b231a7deee4","impliedFormat":1},{"version":"c53674e899725630a469dadd5cd0827b85903d5435afb784cacbe41c5e8c9eef","impliedFormat":1},{"version":"e885933b92f26fa3204403999eddc61651cd3109faf8bffa4f6b6e558b0ab2fa","impliedFormat":1},{"version":"5852ec0e134dda28852eada61248ab2b8027aa1238340ccc407234f013627f61","impliedFormat":1},{"version":"0463dbee62e1e2f1692ece7b08d31c329e642114355426606b390aab7978414e","impliedFormat":1},{"version":"f6bf2b22f3af7ddb26f9a93b47f8747547ecb598ca5b3002d9e76f72a65809b5","impliedFormat":1},{"version":"6733e3a832f92b68e7368878cfb4e54a4b942361e87a0b8fa2a475ec9369ad03","signature":"e05f7241b9f0d8920509251c4334b674d7dfe32fc4dd7901c62508cf53424b0d"},{"version":"1db57e4576635680f80735fa5d76e8ce9942de2986d2e8f8d579c47b77955d92","signature":"3989ffa2db8fa65dad58a77f17de46379a8f1b6acdbbc3e1edc92a9e8f66f6a9"},{"version":"5c1b479320c1e8727815f025889d437a51d7d9864141e1f2482b28ea65dc322c","signature":"0e9d205bf2e600c2985999726bac6490e2c0ed9e3646cc1e0e7f988b9463f9a6"},{"version":"4dc481ce5f4588cc7c9c3f7c7bb99407321b774e0e6db995f924f440149b101c","signature":"523cbf15f5b12fdc02dbcf3f59602623f8b49c4cc351678ce8b0106575cdddbf"},{"version":"8ee77e3b2e0b27a14404546146fb18f17a05a2ec9605857bfcbbedcd9705e2df","signature":"1875f9aee1a1e88b821c49e02e35d163013f9b1a672b0097478379cfafd87d06"},{"version":"cd8d704e31ca6e772eaaed0d1abbda5131968d07da6295ec31ca25f2f96f4603","signature":"8d23da0bcd77e78b20a2f20624973b039d3013ebf0fabd0c8e0615c58e74489f"},{"version":"7fc99ce30f28bfbf9015a20b7bf55752c0b2464188b33c69703001e993de6e50","signature":"8670ec89de827a6e9d8f0f268b29a415094ea5137e91e60da027ded8ad5cc098"},{"version":"fd432f424507ee57ff25fc592c2a0b16f28fa56deb4df236653654ecec348789","signature":"81e691d34825e62f13beb4439db7e04a3a7b4610ed434bc8b7d0e2f05436fb75"},{"version":"91b4ce96f6ad631a0a6920eb0ab928159ff01a439ae0e266ecdc9ea83126a195","impliedFormat":1},{"version":"88efe27bebddb62da9655a9f093e0c27719647e96747f16650489dc9671075d6","impliedFormat":1},{"version":"e348f128032c4807ad9359a1fff29fcbc5f551c81be807bfa86db5a45649b7ba","impliedFormat":1},{"version":"8ee6b07974528da39b7835556e12dd3198c0a13e4a9de321217cd2044f3de22e","impliedFormat":1},{"version":"5a38140438107de65fa204b3705b83529e225e1b01c68c73fb7fa4e88e5ddfa3","impliedFormat":1},{"version":"5f12132800d430adbe59b49c2c0354d85a71ada7d756e34250a655baa8ad4ae5","impliedFormat":1},{"version":"1996d1cd7d585a8359a35878f67abdd73cc35b1f675c9c6b147b202fdd8dfc3f","impliedFormat":1},{"version":"b16e757e4c35434065120a2b3bf13a518fc9e621dc9c2ed668f91635a9dc4e75","impliedFormat":1},{"version":"0b7ba8784d5de5560adeb015ca6d22d8a9d0920dcb16dd627b40010763f26d85","impliedFormat":1},{"version":"0377607549f9d921e43421851de61264443471afb1f0e86b847872e99bbe3ba0","impliedFormat":1},{"version":"4374cefdde5c6e9bad52b0436e887b8325b8f407c12035194ad02c28f1553a3a","impliedFormat":1},{"version":"9b70cad270593f676aecfe4d1611dc766464f0b8138527b0ebbf1ff773578d69","impliedFormat":1},{"version":"b4f85bfb7e831703ac81737361842f1ae4d924b42c5d1af2bff93cca521de4d1","impliedFormat":1},{"version":"5fea76008a2d537ca09d569ffae4e08b991b4a5ff90e9f4783bc983584454ede","impliedFormat":1},{"version":"21575cdeaca6a2c2a0beb8c2ecbc981d9deb95f879f82dc7d6e325fe8737b5ba","impliedFormat":1},{"version":"40ec58f0fadd0b3981b3d383e1c12fa0680115ae9f018387fc2cfc0bbcf23204","impliedFormat":1},{"version":"849b9e7283b7309a4556c9b90bb8e2dfc27751f157798065bbc513dcddb09a8c","impliedFormat":1},{"version":"10e109212c7be8a9f66e988e5d6c2a8900c9d14bf6beadf5fa70d32ada3425cf","impliedFormat":1},{"version":"2b821aeb31e690092f8eae671dd961a9d0fd598ff4883ce0a600c90e9e8fa716","impliedFormat":1},{"version":"26602933b613e4df3868a6c82e14fffa2393a08531cb333ed27b151923462981","impliedFormat":1},{"version":"f57a588d8f6b3ce5c8b494f2dc759a8885eaee18e80a4952df47de45403fedbe","impliedFormat":1},{"version":"34735727b3fe7a0ed0651a0f88d06449163d1989a2b2de7f047473adc7c1c383","impliedFormat":1},{"version":"a5b13abc88ab3186e713c445e59e2f6eee20c6167943517bc2f56985d89b8c55","impliedFormat":1},{"version":"c8a206a6ba4e32710ebb4a389187772423de0f4f6180b95a7ef1a5a1934c1be6","impliedFormat":1},{"version":"7ae65fe95b18205e241e6695cb2c61c0828d660aca7d08f68781b439a800e6b8","impliedFormat":1},{"version":"c2c8c166199d3a7bd093152437d1f6399d05e458a9ca9364456feecba920cda4","impliedFormat":1},{"version":"369b7270eeeb37982203b2cb18c7302947b89bf5818c1d3d2e95a0418f02b74e","impliedFormat":1},{"version":"94f95d223e2783b0aef4d15d7f6990a6a550fe17d099c501395f690337f7105e","impliedFormat":1},{"version":"039bd8d1e0d151570b66e75ee152877fb0e2f42eca43718632ac195e6884be34","impliedFormat":1},{"version":"9e615a787ac4628fe5bcf3f7b2edf1d487422945a5ce1826024cba04ee41daac","impliedFormat":1},{"version":"5f200be1d6585239093ed367e7a77a5400c76c80a00309ba9b4fc2bb5add9899","impliedFormat":1},{"version":"d3cfde44f8089768ebb08098c96d01ca260b88bccf238d55eee93f1c620ff5a5","impliedFormat":1},{"version":"293eadad9dead44c6fd1db6de552663c33f215c55a1bfa2802a1bceed88ff0ec","impliedFormat":1},{"version":"206e73f49f16633113787cc651dc03dc900379395dfa02ab1ef4c9cbbcd5adc2","impliedFormat":1},{"version":"fec412ded391a7239ef58f455278154b62939370309c1fed322293d98c8796a6","impliedFormat":1},{"version":"e3498cf5e428e6c6b9e97bd88736f26d6cf147dedbfa5a8ad3ed8e05e059af8a","impliedFormat":1},{"version":"dba3f34531fd9b1b6e072928b6f885aa4d28dd6789cbd0e93563d43f4b62da53","impliedFormat":1},{"version":"f672c876c1a04a223cf2023b3d91e8a52bb1544c576b81bf64a8fec82be9969c","impliedFormat":1},{"version":"e4b03ddcf8563b1c0aee782a185286ed85a255ce8a30df8453aade2188bbc904","impliedFormat":1},{"version":"2329d90062487e1eaca87b5e06abcbbeeecf80a82f65f949fd332cfcf824b87b","impliedFormat":1},{"version":"25b3f581e12ede11e5739f57a86e8668fbc0124f6649506def306cad2c59d262","impliedFormat":1},{"version":"93c3e73824ad57f98fd23b39335dbdae2db0bd98199b0dc0b9ccc60bf3c5134a","impliedFormat":1},{"version":"a9ebb67d6bbead6044b43714b50dcb77b8f7541ffe803046fdec1714c1eba206","impliedFormat":1},{"version":"833e92c058d033cde3f29a6c7603f517001d1ddd8020bc94d2067a3bc69b2a8e","impliedFormat":1},{"version":"8e6427dd1a4321b0857499739c641b98657ea6dc7cc9a02c9b2c25a845c3c8e6","impliedFormat":1},{"version":"58da08d1fe876c79c47dcf88be37c5c3fab55d97b34c8c09a666599a2191208d","impliedFormat":1},{"version":"85e75abb2b960333554d87b59c2c93837bcdac57fc8f5bec08e3785dfcdbca85","signature":"a013754e9c9372195578014767d9daa25f3a37a2cac34b96228225fbf6ba5c86"},{"version":"2576c3edc78797e0206c738577de487893253780821e977c690eeeb1bc4c3b71","signature":"efdd399105978f071ab08cbbd26ba9774eb8bc990875bcebbaeb7107c14b9abe"},{"version":"a26d74bc8768e134734fa049d5a89fb674a560292f4bf1b39392416dc04cf49e","impliedFormat":99},{"version":"ea7f3d87bb25b8cf26c1b440de31b628c53b5e72e8f1ab1726356bf58acf5946","impliedFormat":99},{"version":"7ec047b73f621c526468517fea779fec2007dd05baa880989def59126c98ef79","impliedFormat":99},{"version":"8dd450de6d756cee0761f277c6dc58b0b5a66b8c274b980949318b8cad26d712","impliedFormat":99},{"version":"6b5f886fe41e2e767168e491fe6048398ed6439d44e006d9f51cc31265f08978","impliedFormat":99},{"version":"f4a1eba860f7493d19df42373ddde4f3c6f31aa574b608e55e5b2bd459bba587","impliedFormat":99},{"version":"6b863463764ae572b9ada405bf77aac37b5e5089a3ab420d0862e4471051393b","impliedFormat":99},{"version":"904d6ad970b6bd825449480488a73d9b98432357ab38cf8d31ffd651ae376ff5","impliedFormat":99},{"version":"2535fc1a5fe64892783ff8f61321b181c24f824e688a4a05ae738da33466605b","impliedFormat":99},{"version":"c9c151ff19977b78e8d6b108f7162f4daef60aea6c9dd4dcf9faa883ec885430","signature":"3bbc2674f9e5d598c0701114b0081a64cbc78fd3928a2d2e652ddfda70124dee"},{"version":"bb703864a1bc9ca5ac3589ffd83785f6dc86f7f6c485c97d7ffd53438777cb9e","impliedFormat":1},{"version":"a171f27504ba8bfa244cb257956e01601f6f98a348e0cb94dc77e201260e377f","signature":"34695ed66680ea492a62489b33cfd7bfa9529b696be1bc23384122f471208d00"},{"version":"23d948d8f56babd009b022f9d2d95b5869a00a0b1d9fb25dfe62019db4895b49","signature":"1356a99efa4e82c4c75b28f8d669629821a83a05f5767a192b380abdda45f1ce"},{"version":"c351dc34a026a2e3ea1b23b2eb0d9d95a60599a156a6029d03607de67e715627","signature":"f138d5ffbc374cc396b5347b8fd34f866962b2540e7d85b69c0de168946ee499"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"cc3738ba01d9af5ba1206a313896837ff8779791afcd9869e582783550f17f38","impliedFormat":99},{"version":"3b217e02ad520f3d63c5ccc6d8870c91c1da51d8c0f09e834c3415ef051c1dfb","signature":"e7f0196b8c2cc640e4d5841868b7ce67c41d306262e568d0132ddafab39bc157"},{"version":"17247b09a117c79610d682568e2ba37566d96d2333d3540a66d0f8755a54893c","signature":"dcf0caf6d631c1007de4e649c1fb92791bf5ac0eb55d286bffd7cf12ab399d66"},{"version":"4c888d7fa80bc9a1dcc5b6cb0d5c79e684ac393c9555ad169cb771bb33ab9e31","signature":"6556c6baed9df53b7da342c0f3ce2ed14a456d2e645381ffb6aba4f6cdd21159"},{"version":"6d3bacd5150ba69409c66fdd6d34dd40936319692a793d0d313d5834a48c5b4a","signature":"e7ae15fba5ca5e6f6c5feb87053b004ef3e7ed91c61811dec07b556028050c29"},{"version":"734c978a53643112e0939f3493758ff2651ca56aa92f180cda3a0542274baff6","signature":"5710b2220aa08a5cdec279bc67698116171d4334ca0dbdb19e1b0f1e923f2523"},{"version":"96d87913d6fc27df14759c6892fc97bb07c843b52a3e3ef23e2c9cd5f3856f32","signature":"02aba73a5ca1a835386bb3084dd25ac2a664dee48a1f85f850986bb6c7bc3592"},{"version":"f467fc85a8b59e7c1bc8a56d795b00b7e080221c286e13218a26d1265b854116","signature":"e65416c124c9f46e7c3821cde9224b2900f734c3763aa7154bce71b8c97a2c0a"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"4a5aa16151dbec524bb043a5cbce2c3fec75957d175475c115a953aca53999a9","impliedFormat":99},{"version":"d4c744131c6161300510909aafe2c2cb6d819f2c7a8c2aeb75d4317004c7eff7","signature":"1913d3e9a871099126700f506a2c3b8fe9d47857253124e5787055b463b98b4c"},"7e740efc375e3f3b6034eafecc50f2cf5a36f4276294551809bca58851b357cd","04b7aac5477d5ee5c62b265171f674883c354276508a84994ac4f94f2f66ee89",{"version":"e7441be68f390975c6155c805cea8f54cc1b7f3656b6b9440ecbbbd7753499e6","impliedFormat":99},{"version":"5a99d073185e0ef6d984436547dce1f99c333dde7c1d7f33a2155dce05216514","signature":"a62a952464813ad6681414a2f6708d8d8cb5ccb7ee948cef6e7f7d6f11869795"},"61c2b20c96c801d91c5dbbf15b66d50e5c943d8c234a286ff745a94da09aa706",{"version":"31c30cc54e8c3da37c8e2e40e5658471f65915df22d348990d1601901e8c9ff3","impliedFormat":99},{"version":"a6f9e326f19cfa485b3a6c2eb7b9829c42f8012f29820cefab0b10dd5c1cb2fa","signature":"870119a5f3f2da219ba16214980357bbf0dd1f2bcfd77fd35da7d8465c0ae708"},{"version":"ad14d7864ec595f8f9224a085083fffd0137150d803092803b146643434d48a7","signature":"ade22b42ad26354dbff601e10439a06d15581696425231bd83fe6517a9438b0d"},{"version":"5993c89605dbafbc4369dd2a7ea7fa01224fffdea66398d90a653ed71201548e","signature":"e9215c110843d60cdcf28e5fa8144522681de43094a89e06e3855f7990f49a7f"},{"version":"5d0c5e767bf2a6f08629a58b6a89b7d91a81f6e35d9167bfda0bd9f1e2357b4e","signature":"f515561294f9cdcee8482e9c653ee65f600d63832257edb86a2f2f5a0cc1b64e"},{"version":"a963ef6cc6223495f81cabb8b127009be134248be2267070fa7c3b88b912fb02","signature":"b819d8b90a2f2e2b67c15c59eed25430cc7ed831fd114e567ff88833fa4b5de5"},{"version":"c6fdd0d48ea1ce1634bf1f2889eb7a106c53e3718de5eb9c8c95d3e80b3656f1","signature":"97b88cd12c3dda2a5fc7c2e658d589781dd5aba8920d00c252a623198190e172"},{"version":"4332f7ff1055be653332074efdd7c4960f0083b734c663033db0088a4f3bf3b1","signature":"4784c609db2af96dbe333cd902b10db5f72cda9d53057b6cedffb27dc8a52875"},{"version":"b7e512b41ea4f5bf1c8d6fcf6cb13708a6b9636f6304d705e5750b21184c6a09","signature":"9dff8a85e580b32a38517861c4adeaa44f516d226f8762207a57be459aa996ab"},{"version":"25c87d018f1ef9f0f73dbb465c3d75c7c50057d92aa8b7e5fb3c35c1507029bb","signature":"e96c6ac96f678b74cb2407c60eaaad4e23f317ca20bdae0591e974d529ac66c3"},"4012abed7b39073f7497b340722ccf697db4df2b453fe6618656282d235e1172",{"version":"83bd0d8407a4501dd60aa6a18b6a6d9fc73faf613850de209ec362832cefbbf5","signature":"abec593d0c5872aced84afb7046990d70b3016feebce6e521e6845d7998a219e"},{"version":"cf5a31f8d64d03be9a17d9f86cd18b41f39b665ff7502b51ff549fc877f98921","signature":"ea30d960932ca79984691953e1c38879c34a3dd702bca3b68b06947169e9e829"},{"version":"8df6b419289c0961123c4d6cac9c14bf01a55f95207071c721e89b7be9a30cc3","signature":"2b2c4db5b364af2c223aef79682842c401fee9875b5624d3f4856d090dd17c3d"},{"version":"f48eb40e426a9c3cf66bc5fe145bec945f186964536f0a8366cd2d0997298b8f","signature":"b49934ea0ebed672b4554b54ebf5047afe63d4212a629920553e3c4f98d1e210"},"6e37a2ea99e150d019f8b4a6df296eecc9cc26da8286c5b1c9049fc3e2fe29c9","23a6e9e2fb0ce3ea299b33e644dc16975d5889443adf27ecea3d946fe642f2ad",{"version":"cd8d704e31ca6e772eaaed0d1abbda5131968d07da6295ec31ca25f2f96f4603","signature":"8d23da0bcd77e78b20a2f20624973b039d3013ebf0fabd0c8e0615c58e74489f"},{"version":"fd432f424507ee57ff25fc592c2a0b16f28fa56deb4df236653654ecec348789","signature":"81e691d34825e62f13beb4439db7e04a3a7b4610ed434bc8b7d0e2f05436fb75"},{"version":"6d3bacd5150ba69409c66fdd6d34dd40936319692a793d0d313d5834a48c5b4a","signature":"e7ae15fba5ca5e6f6c5feb87053b004ef3e7ed91c61811dec07b556028050c29"},{"version":"734c978a53643112e0939f3493758ff2651ca56aa92f180cda3a0542274baff6","signature":"5710b2220aa08a5cdec279bc67698116171d4334ca0dbdb19e1b0f1e923f2523"},{"version":"13680c9726421b79c1957bf5f06d3deec35e7e5a113c49583b037ffab6ec6d39","signature":"c3b82b731c1bfda402eba10f9df571580d1f5a674d5ca43ce97a933ee02c2d22"},{"version":"1ca52accaf2273cc86e913b388ba0c36f4e4d8e19b3f9b015e81eea6c4ae5960","signature":"2a618d1e67da91688d27b94c9b241bbfba39b5cc1634eec5587a9288744c45c3"},{"version":"131acc8316fd3441b8159de979db10c447d27787d00961508d05cbd9daa21eb7","signature":"a9f7d0693bbfc1b3167c19e6756b12e8acc591d96dbb553a5a4a27ba4e4a35b4"},{"version":"c1a2518a277db331f5506a94c74afcae9f9d3287ed659b7a91407c28ed6ed6c6","signature":"63bde153cfa3cf0afe2a2a36aafa1a130e4b2caf41652c5d1dcbfaa0d6a9148c"},{"version":"939278542533ba85240a3f27dc77a8a4a70628e97f37c8fc58a7927a337ba610","signature":"e27aa7e6f6113a7b2c84125c2b9a273b8c06c822d94d1bdca4cdb0aa4ce5de0e"},{"version":"f142d5c2f148ecb72e45eaa5152a642ab1956e0a3235896b2eda30a6c4a8e0a8","signature":"11f5be9abc00c11cd52420abfbc71561ec3cdb19f272077b1eedfc066110e2f4"},{"version":"a9373d52584b48809ffd61d74f5b3dfd127da846e3c4ee3c415560386df3994b","impliedFormat":99},{"version":"cbfd5ef0c8fdb4983202252b5f5758a579f4500edc3b9ad413da60cffb5c3564","impliedFormat":99},{"version":"956cf4b485bcf57684caac10df2aa2a72387d0736d8f4cd1315c49ebd2da4615","signature":"1eb20268ebe644e6df6078e14bce71cc71590d43c562b4d3fdc2375777bca31a"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"233267a4a036c64aee95f66a0d31e3e0ef048cccc57dd66f9cf87582b38691e4","impliedFormat":99},{"version":"0397ed074259c28d961b3567cf425d491b6b434fff93bc25eea2fc93bbd75f7a","signature":"b49f7ee0feb128c542b7a46a8af92fd18942b5460e80d7be8aabd8ce507764d8"},{"version":"b598b1e9481a930b5f9e38e0e41a4267722ecb641d41a46ad04a0873fb92eb31","signature":"00ca1d2d1160f655bf2eb98c3454f9043ec52d5c63d7c8b360122b4afe4c27d9"},{"version":"9990f21aad5b08bd1367c26eaf653379fbd3cbf1c73835d7c89558a897cdb9e4","signature":"ffa79f62c536266410190ee8d522f68b1e8a1a01fb705451c8c2c987df92e062"},{"version":"1dbd248b251538341f7b6d921c1972569ec7f3f7f5897123fc00148f6bdc0e57","signature":"354030b88a182802d063fb8096a34d9d23b69d2f48db10277488475dde054919"},{"version":"42adab75a647248b224a23d3b6b398efcee1b6b417cdcc4f32bc50cf6fba266d","signature":"6912fcc8e7b93e970fc0018c59d7606df75f8d62b342ef5e9d74eb08ba50b6d1"},{"version":"ab85664862c198191ba3d77d3a0e271a26c949093cabd88b74f5079484b3c69c","signature":"ca272dae169954a9e3dad0b8ec2acc9b69b9c292508909a8ddd4f9412a01e6c3"},{"version":"c0b208999b2e53020a7b2a1d8d4ac67bec87651389bd630ac2e8d632fa839b10","signature":"17d95f0fda80b532996dc589a631ac937896df66be49ac9b0b381e028dfe9e85"},{"version":"c892fb76ede9506711319412d369bc666c1a574d16d6559f0aea873d55d07cfc","signature":"f23885a1b16d6b8c10966100c439eef43e2a0a82c0a43c2abd239f01ea9188be"},{"version":"146072a9d4178049116796062a37421cdf09f0bd06390a69a1fb76daf71dcb11","signature":"3a663b83bd70cae5c1b7e453f52eaab61f1f382c44d69c7b4491da5058239b2a"},{"version":"3aa160f473ca0af44d500c6bed1af5f5d9ad4ffb2884b4ca34e59989dd5d90e4","signature":"c416f65676cd621ef92478b644323536b31d366476693fa2f9a15063cd1d6ff5"},"2552a31fad45a9ed1bde87e51b038dc0e786cd364b597162263abbf57018949b",{"version":"6c1b1a7df2ef20edea7af3b853134925e9fe26e3f6cb51b04201ecd6ae35e284","affectsGlobalScope":true},"e8d8cd9625ec6cca3487427e67839eed80d92b7a71e5b86d5e2bfd7aaf4f38ea",{"version":"1ff6028b5b6ccb9af8d5789deaff14ff09a6ab61cdb619eb383395989edffa2c","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"b0527c1ada15e769629e8940045d2232802a8c72924e8632588a19bf2cd24b7d","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},"386b6553763e4688817838bf6cc7d51a504cac0dd9ca96f46600874fbb72dfad",{"version":"7e684095a2d1cdd296f6c85e01108415c3ac1bc7d9e4e2f53794e9bea9c96209","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"2d4bb2c9dceea92ed7d0d27ae50595a810c93062ccef307a1d2e161be870d66c","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},"b6987d179737a82a85e4004adf041b441a8fda6f31ce061bd57eaa8cdca0c46f",{"version":"c609171dc1f4060d39c937c4271322c028f0bc6387c439b8bc0bdfa966e1c463","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},"39749520c8e365ea4ac255752171fc222f4961d5e6d15ff24c3a76807178ff41",{"version":"b1538a92b9bae8d230267210c5db38c2eb6bdb352128a3ce3aa8c6acf9fc9622","impliedFormat":1},{"version":"6fc1a4f64372593767a9b7b774e9b3b92bf04e8785c3f9ea98973aa9f4bbe490","impliedFormat":1},{"version":"ff09b6fbdcf74d8af4e131b8866925c5e18d225540b9b19ce9485ca93e574d84","impliedFormat":1},{"version":"d5895252efa27a50f134a9b580aa61f7def5ab73d0a8071f9b5bf9a317c01c2d","impliedFormat":1},{"version":"56208c500dcb5f42be7e18e8cb578f257a1a89b94b3280c506818fed06391805","impliedFormat":1},{"version":"0c94c2e497e1b9bcfda66aea239d5d36cd980d12a6d9d59e66f4be1fa3da5d5a","impliedFormat":1},{"version":"1f366bde16e0513fa7b64f87f86689c4d36efd85afce7eb24753e9c99b91c319","impliedFormat":1},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","impliedFormat":1},{"version":"7fa8d75d229eeaee235a801758d9c694e94405013fe77d5d1dd8e3201fc414f1","impliedFormat":1}],"root":[83,497,502,[508,530],[536,538],[540,545],547,548,551,566,[571,574],[579,585],[689,696],706,707,[780,784],788,789,[793,798],[803,812],1246,1249,[1365,1372],1419,1420,1430,[1432,1434],[1437,1443],[1446,1448],1450,1451,[1453,1478],1481,[1484,1504]],"options":{"allowJs":true,"esModuleInterop":true,"jsx":1,"module":99,"skipLibCheck":true,"strict":true,"target":4},"referencedMap":[[1500,1],[1501,2],[1499,3],[1502,4],[1497,5],[1498,6],[1503,7],[1504,8],[1494,9],[83,10],[1495,11],[1496,12],[497,13],[502,14],[813,10],[814,15],[815,16],[820,17],[816,16],[819,10],[817,10],[818,10],[628,18],[590,10],[591,10],[592,10],[634,18],[629,10],[593,10],[594,10],[595,10],[596,10],[636,19],[597,10],[598,10],[599,10],[600,10],[605,20],[606,21],[607,20],[608,20],[609,10],[610,20],[611,21],[612,20],[613,20],[614,20],[615,20],[616,20],[617,21],[618,21],[619,20],[620,20],[621,21],[622,21],[623,20],[624,20],[625,10],[626,10],[635,18],[602,10],[630,10],[631,22],[632,22],[604,23],[603,24],[633,25],[627,10],[641,26],[644,27],[643,26],[642,28],[640,29],[637,10],[639,30],[638,31],[1418,32],[1417,33],[244,10],[1452,34],[558,35],[557,36],[1248,37],[1247,36],[552,36],[568,38],[567,36],[554,35],[553,36],[802,39],[799,36],[556,35],[555,36],[550,40],[801,41],[800,36],[1429,42],[1425,43],[1421,36],[1423,43],[1424,43],[1427,44],[1428,43],[1422,36],[1426,10],[561,45],[559,36],[563,35],[562,36],[549,36],[1480,46],[1479,36],[577,47],[576,36],[565,48],[564,36],[1436,47],[1435,36],[531,49],[1445,47],[1444,36],[578,50],[575,36],[1483,51],[1482,36],[570,35],[569,36],[560,10],[1268,52],[1267,10],[656,10],[1505,10],[1506,10],[1507,10],[1508,53],[1253,10],[1510,54],[1254,55],[1509,10],[1511,10],[1512,10],[1513,10],[1514,10],[143,56],[144,56],[145,57],[100,58],[146,59],[147,60],[148,61],[95,10],[98,62],[96,10],[97,10],[149,63],[150,64],[151,65],[152,66],[153,67],[154,68],[155,68],[156,69],[157,70],[158,71],[159,72],[101,10],[99,10],[160,73],[161,74],[162,75],[194,76],[163,77],[164,78],[165,79],[166,80],[167,81],[168,82],[169,83],[170,84],[171,85],[172,86],[173,86],[174,87],[175,10],[176,88],[178,89],[177,90],[179,91],[180,92],[181,93],[182,94],[183,95],[184,96],[185,97],[186,98],[187,99],[188,100],[189,101],[190,102],[191,103],[102,10],[103,10],[104,10],[142,104],[192,105],[193,106],[198,107],[354,36],[199,108],[197,109],[356,110],[355,111],[195,112],[352,10],[196,113],[84,10],[86,114],[351,36],[262,36],[1515,10],[534,115],[533,116],[532,10],[1431,117],[85,10],[909,118],[888,119],[985,10],[889,120],[825,118],[826,118],[827,118],[828,118],[829,118],[830,118],[831,118],[832,118],[833,118],[834,118],[835,118],[836,118],[837,118],[838,118],[839,118],[840,118],[841,118],[842,118],[821,10],[843,118],[844,118],[845,10],[846,118],[847,118],[849,118],[848,118],[850,118],[851,118],[852,118],[853,118],[854,118],[855,118],[856,118],[857,118],[858,118],[859,118],[860,118],[861,118],[862,118],[863,118],[864,118],[865,118],[866,118],[867,118],[868,118],[870,118],[871,118],[872,118],[869,118],[873,118],[874,118],[875,118],[876,118],[877,118],[878,118],[879,118],[880,118],[881,118],[882,118],[883,118],[884,118],[885,118],[886,118],[887,118],[890,121],[891,118],[892,118],[893,122],[894,123],[895,118],[896,118],[897,118],[898,118],[901,118],[899,118],[900,118],[823,10],[902,118],[903,118],[904,118],[905,118],[906,118],[907,118],[908,118],[910,124],[911,118],[912,118],[913,118],[915,118],[914,118],[916,118],[917,118],[918,118],[919,118],[920,118],[921,118],[922,118],[923,118],[924,118],[925,118],[927,118],[926,118],[928,118],[929,10],[930,10],[931,10],[1078,125],[932,118],[933,118],[934,118],[935,118],[936,118],[937,118],[938,10],[939,118],[940,10],[941,118],[942,118],[943,118],[944,118],[945,118],[946,118],[947,118],[948,118],[949,118],[950,118],[951,118],[952,118],[953,118],[954,118],[955,118],[956,118],[957,118],[958,118],[959,118],[960,118],[961,118],[962,118],[963,118],[964,118],[965,118],[966,118],[967,118],[968,118],[969,118],[970,118],[971,118],[972,118],[973,10],[974,118],[975,118],[976,118],[977,118],[978,118],[979,118],[980,118],[981,118],[982,118],[983,118],[984,118],[986,126],[1174,127],[1079,120],[1081,120],[1082,120],[1083,120],[1084,120],[1085,120],[1080,120],[1086,120],[1088,120],[1087,120],[1089,120],[1090,120],[1091,120],[1092,120],[1093,120],[1094,120],[1095,120],[1096,120],[1098,120],[1097,120],[1099,120],[1100,120],[1101,120],[1102,120],[1103,120],[1104,120],[1105,120],[1106,120],[1107,120],[1108,120],[1109,120],[1110,120],[1111,120],[1112,120],[1113,120],[1115,120],[1116,120],[1114,120],[1117,120],[1118,120],[1119,120],[1120,120],[1121,120],[1122,120],[1123,120],[1124,120],[1125,120],[1126,120],[1127,120],[1128,120],[1130,120],[1129,120],[1132,120],[1131,120],[1133,120],[1134,120],[1135,120],[1136,120],[1137,120],[1138,120],[1139,120],[1140,120],[1141,120],[1142,120],[1143,120],[1144,120],[1145,120],[1147,120],[1146,120],[1148,120],[1149,120],[1150,120],[1152,120],[1151,120],[1153,120],[1154,120],[1155,120],[1156,120],[1157,120],[1158,120],[1160,120],[1159,120],[1161,120],[1162,120],[1163,120],[1164,120],[1165,120],[822,118],[1166,120],[1167,120],[1169,120],[1168,120],[1170,120],[1171,120],[1172,120],[1173,120],[987,118],[988,118],[989,10],[990,10],[991,10],[992,118],[993,10],[994,10],[995,10],[996,10],[997,10],[998,118],[999,118],[1000,118],[1001,118],[1002,118],[1003,118],[1004,118],[1005,118],[1010,128],[1008,129],[1009,130],[1007,131],[1006,118],[1011,118],[1012,118],[1013,118],[1014,118],[1015,118],[1016,118],[1017,118],[1018,118],[1019,118],[1020,118],[1021,10],[1022,10],[1023,118],[1024,118],[1025,10],[1026,10],[1027,10],[1028,118],[1029,118],[1030,118],[1031,118],[1032,124],[1033,118],[1034,118],[1035,118],[1036,118],[1037,118],[1038,118],[1039,118],[1040,118],[1041,118],[1042,118],[1043,118],[1044,118],[1045,118],[1046,118],[1047,118],[1048,118],[1049,118],[1050,118],[1051,118],[1052,118],[1053,118],[1054,118],[1055,118],[1056,118],[1057,118],[1058,118],[1059,118],[1060,118],[1061,118],[1062,118],[1063,118],[1064,118],[1065,118],[1066,118],[1067,118],[1068,118],[1069,118],[1070,118],[1071,118],[1072,118],[1073,118],[824,132],[1074,10],[1075,10],[1076,10],[1077,10],[1359,10],[601,10],[1264,10],[648,133],[646,134],[647,10],[645,135],[539,36],[792,136],[507,137],[506,138],[505,139],[501,140],[499,141],[500,142],[498,10],[791,143],[504,144],[503,10],[688,145],[683,146],[669,146],[685,147],[684,148],[680,147],[668,146],[681,147],[682,146],[687,149],[686,147],[790,150],[93,151],[443,152],[448,9],[450,153],[220,154],[248,155],[426,156],[243,157],[231,10],[212,10],[218,10],[416,158],[279,159],[219,10],[385,160],[253,161],[254,162],[350,163],[413,164],[368,165],[420,166],[421,167],[419,168],[418,10],[417,169],[250,170],[221,171],[300,10],[301,172],[216,10],[232,173],[222,174],[284,173],[281,173],[205,173],[246,175],[245,10],[425,176],[435,10],[211,10],[326,177],[327,178],[321,36],[471,10],[329,10],[330,179],[322,180],[477,181],[475,182],[470,10],[412,183],[411,10],[469,184],[323,36],[364,185],[362,186],[472,10],[476,10],[474,187],[473,10],[363,188],[464,189],[467,190],[291,191],[290,192],[289,193],[480,36],[288,194],[273,10],[483,10],[486,10],[485,36],[487,195],[201,10],[422,196],[423,197],[424,198],[234,10],[210,199],[200,10],[342,36],[203,200],[341,201],[340,202],[331,10],[332,10],[339,10],[334,10],[337,203],[333,10],[335,204],[338,205],[336,204],[217,10],[208,10],[209,173],[263,206],[264,207],[261,208],[259,209],[260,210],[256,10],[348,179],[370,179],[442,211],[451,212],[455,213],[429,214],[428,10],[276,10],[488,215],[438,216],[324,217],[325,218],[316,219],[306,10],[347,220],[307,221],[349,222],[344,223],[343,10],[345,10],[361,224],[430,225],[431,226],[309,227],[313,228],[304,229],[408,230],[437,231],[283,232],[386,233],[206,234],[436,235],[202,157],[257,10],[265,236],[397,237],[255,10],[396,238],[94,10],[391,239],[233,10],[302,240],[387,10],[207,10],[266,10],[395,241],[215,10],[271,242],[312,243],[427,244],[311,10],[394,10],[258,10],[399,245],[400,246],[213,10],[402,247],[404,248],[403,249],[236,10],[393,234],[406,250],[392,251],[398,252],[224,10],[227,10],[225,10],[229,10],[226,10],[228,10],[230,253],[223,10],[378,254],[377,10],[383,255],[379,256],[382,257],[381,257],[384,255],[380,256],[270,258],[371,259],[434,260],[490,10],[459,261],[461,262],[308,10],[460,263],[432,225],[489,264],[328,225],[214,10],[310,265],[267,266],[268,267],[269,268],[299,269],[407,269],[285,269],[372,270],[286,270],[252,271],[251,10],[376,272],[375,273],[374,274],[373,275],[433,276],[320,277],[358,278],[319,279],[353,280],[357,281],[415,282],[414,283],[410,284],[367,285],[369,286],[366,287],[405,288],[360,10],[447,10],[359,289],[409,10],[272,290],[305,196],[303,291],[274,292],[277,293],[484,10],[275,294],[278,294],[445,10],[444,10],[446,10],[482,10],[280,295],[318,36],[92,10],[365,296],[249,10],[238,297],[314,10],[453,36],[463,298],[298,36],[457,179],[297,299],[440,300],[296,298],[204,10],[465,301],[294,36],[295,36],[287,10],[237,10],[293,302],[292,303],[235,304],[315,85],[282,85],[401,10],[389,305],[388,10],[449,10],[346,306],[317,36],[441,307],[87,36],[90,308],[91,309],[88,36],[89,10],[247,310],[242,311],[241,10],[240,312],[239,10],[439,313],[452,314],[454,315],[456,316],[458,317],[462,318],[496,319],[466,319],[495,320],[468,321],[478,322],[479,323],[481,324],[491,325],[494,199],[493,10],[492,326],[1232,327],[1194,328],[1193,329],[1231,330],[1233,331],[1175,36],[1176,36],[1177,36],[1221,332],[1200,333],[1201,333],[1202,334],[1203,36],[1204,36],[1205,335],[1178,336],[1206,36],[1207,36],[1208,337],[1209,36],[1210,36],[1211,36],[1212,36],[1213,36],[1214,36],[1179,336],[1215,36],[1216,36],[1217,336],[1218,36],[1219,36],[1220,337],[1234,334],[1222,327],[1223,327],[1224,327],[1225,327],[1226,327],[1227,10],[1228,327],[1229,338],[1235,339],[1236,340],[1245,341],[1191,342],[1180,343],[1181,327],[1182,343],[1183,327],[1184,10],[1185,10],[1186,10],[1187,327],[1188,327],[1189,327],[1190,327],[1198,344],[1199,345],[1195,346],[1196,347],[1230,348],[1192,36],[1197,349],[1237,343],[1238,343],[1244,350],[1239,327],[1240,343],[1241,343],[1242,327],[1243,343],[1373,10],[1388,351],[1389,351],[1403,352],[1390,353],[1391,353],[1392,354],[1386,355],[1384,356],[1375,10],[1379,357],[1383,358],[1381,359],[1387,360],[1376,361],[1377,362],[1378,363],[1380,364],[1382,365],[1385,366],[1393,353],[1394,353],[1395,353],[1396,351],[1397,353],[1398,353],[1374,353],[1399,10],[1401,367],[1400,353],[1402,351],[1272,10],[1281,368],[1291,369],[1337,370],[1262,371],[1308,372],[1295,373],[1355,374],[1307,375],[1292,376],[1339,377],[1338,378],[1303,379],[1294,380],[1340,381],[1341,382],[1342,383],[1350,384],[1344,384],[1352,384],[1356,384],[1343,384],[1345,384],[1348,384],[1351,384],[1347,385],[1349,384],[1353,386],[1346,386],[1257,387],[1324,36],[1321,388],[1325,36],[1317,384],[1258,384],[1315,389],[1261,390],[1274,391],[1320,392],[1323,384],[1259,36],[1322,393],[1251,36],[1250,36],[1270,36],[1363,394],[1362,395],[1364,396],[1332,10],[1330,10],[1334,397],[1333,398],[1329,399],[1331,400],[1335,401],[1336,402],[1328,36],[1278,403],[1252,384],[1327,384],[1273,404],[1326,384],[1293,403],[1354,384],[1269,405],[1312,406],[1271,407],[1296,408],[1288,409],[1297,410],[1298,411],[1299,412],[1300,413],[1304,414],[1305,415],[1280,416],[1311,417],[1309,418],[1310,419],[1306,420],[1313,421],[1282,422],[1290,423],[1276,424],[1286,425],[1287,426],[1283,427],[1277,428],[1289,429],[1256,430],[1361,10],[1275,431],[1314,432],[1357,10],[1301,10],[1318,10],[1302,10],[1360,433],[1279,434],[1284,10],[1316,435],[1319,10],[1285,10],[1358,10],[1260,36],[1266,436],[1263,10],[1265,10],[390,437],[546,36],[535,10],[81,10],[82,10],[13,10],[14,10],[16,10],[15,10],[2,10],[17,10],[18,10],[19,10],[20,10],[21,10],[22,10],[23,10],[24,10],[3,10],[25,10],[26,10],[4,10],[27,10],[31,10],[28,10],[29,10],[30,10],[32,10],[33,10],[34,10],[5,10],[35,10],[36,10],[37,10],[38,10],[6,10],[42,10],[39,10],[40,10],[41,10],[43,10],[7,10],[44,10],[49,10],[50,10],[45,10],[46,10],[47,10],[48,10],[8,10],[54,10],[51,10],[52,10],[53,10],[55,10],[9,10],[56,10],[57,10],[58,10],[60,10],[59,10],[61,10],[62,10],[10,10],[63,10],[64,10],[65,10],[11,10],[66,10],[67,10],[68,10],[69,10],[70,10],[1,10],[71,10],[72,10],[12,10],[76,10],[74,10],[79,10],[78,10],[73,10],[77,10],[75,10],[80,10],[120,438],[130,439],[119,438],[140,440],[111,441],[110,442],[139,326],[133,443],[138,444],[113,445],[127,446],[112,447],[136,448],[108,449],[107,326],[137,450],[109,451],[114,452],[115,10],[118,452],[105,10],[141,453],[131,454],[122,455],[123,456],[125,457],[121,458],[124,459],[134,326],[116,460],[117,461],[126,462],[106,463],[129,454],[128,452],[132,10],[135,464],[667,465],[586,10],[651,10],[663,466],[661,467],[589,468],[650,469],[660,470],[665,471],[657,472],[658,10],[666,473],[664,474],[655,475],[653,476],[652,10],[659,10],[649,470],[662,10],[588,10],[587,36],[654,10],[679,477],[678,478],[677,479],[670,480],[676,481],[672,146],[675,471],[673,10],[674,146],[671,482],[1449,117],[1255,483],[779,484],[1408,485],[1415,486],[1410,10],[1411,10],[1409,487],[1412,488],[1404,10],[1405,10],[1416,489],[1407,490],[1413,10],[1414,491],[1406,492],[774,493],[777,494],[775,494],[771,493],[778,495],[776,494],[772,496],[773,497],[767,498],[712,499],[714,500],[766,10],[713,501],[770,502],[768,10],[715,499],[716,10],[765,503],[711,504],[708,10],[769,505],[709,506],[710,10],[717,507],[718,507],[719,507],[720,507],[721,507],[722,507],[723,507],[724,507],[725,507],[726,507],[727,507],[728,507],[729,507],[731,507],[730,507],[732,507],[733,507],[734,507],[764,508],[735,507],[736,507],[737,507],[738,507],[739,507],[740,507],[741,507],[742,507],[743,507],[744,507],[745,507],[746,507],[747,507],[749,507],[748,507],[750,507],[751,507],[752,507],[753,507],[754,507],[755,507],[756,507],[757,507],[758,507],[759,507],[760,507],[763,507],[761,507],[762,507],[699,509],[705,510],[703,511],[701,511],[704,511],[700,511],[702,511],[698,511],[786,10],[787,512],[697,10],[785,10],[811,513],[1367,514],[797,515],[1440,516],[1372,517],[1441,518],[1370,519],[807,520],[808,521],[1468,522],[809,523],[1471,516],[1470,517],[1472,518],[1469,519],[789,515],[794,524],[1476,525],[795,523],[796,526],[1478,527],[511,528],[512,528],[513,528],[514,528],[515,528],[516,528],[519,529],[518,529],[1475,530],[1477,531],[1366,532],[1365,533],[810,534],[573,535],[1438,536],[1434,537],[1371,538],[1439,539],[1369,540],[1467,541],[1447,542],[543,543],[540,544],[544,545],[1463,546],[1456,547],[1448,548],[1451,549],[1462,550],[1460,551],[1455,552],[1458,553],[1457,546],[1459,554],[1464,555],[1454,556],[1461,557],[547,558],[574,559],[581,560],[548,561],[580,562],[520,10],[582,10],[1433,563],[1473,564],[804,565],[1443,566],[1442,36],[1474,567],[1453,568],[1420,569],[542,570],[537,571],[1246,572],[545,573],[812,36],[1249,574],[1432,575],[572,576],[1450,577],[803,578],[1466,579],[538,580],[551,581],[1465,36],[1430,582],[1481,583],[566,584],[798,585],[1437,586],[1446,587],[1368,580],[579,588],[1419,580],[1484,589],[541,590],[571,591],[1485,36],[1486,36],[1487,36],[1488,36],[1489,36],[1490,36],[1491,36],[1492,36],[1493,36],[521,36],[530,592],[806,593],[793,36],[583,526],[584,36],[585,36],[508,10],[689,594],[805,595],[525,10],[509,10],[690,10],[691,596],[526,10],[528,597],[693,598],[527,10],[695,599],[517,528],[529,600],[696,10],[523,601],[522,10],[536,590],[707,602],[780,603],[781,604],[510,605],[782,606],[706,607],[783,606],[784,608],[788,609],[524,10],[692,10],[694,610]],"semanticDiagnosticsPerFile":[[529,[{"start":2187,"length":13,"code":2322,"category":1,"messageText":{"messageText":"Type 'string | null' is not assignable to type 'string'.","category":1,"code":2322,"next":[{"messageText":"Type 'null' is not assignable to type 'string'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/contexts/itemmastercontext.tsx","start":11088,"length":13,"messageText":"The expected type comes from property 'absolute_path' which is declared here on type 'ItemPage'","category":3,"code":6500}]},{"start":2796,"length":5,"code":2353,"category":1,"messageText":"Object literal may only specify known properties, and 'title' does not exist in type 'ItemSection'."},{"start":3558,"length":10,"code":2322,"category":1,"messageText":{"messageText":"Type '\"TEXT\" | \"NUMBER\" | \"DATE\" | \"SELECT\" | \"TEXTAREA\" | \"CHECKBOX\"' is not assignable to type '\"number\" | \"textbox\" | \"dropdown\" | \"checkbox\" | \"date\" | \"textarea\"'.","category":1,"code":2322,"next":[{"messageText":"Type '\"TEXT\"' is not assignable to type '\"number\" | \"textbox\" | \"dropdown\" | \"checkbox\" | \"date\" | \"textarea\"'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/contexts/itemmastercontext.tsx","start":8476,"length":10,"messageText":"The expected type comes from property 'field_type' which is declared here on type 'ItemField'","category":3,"code":6500}]},{"start":5727,"length":10,"code":2322,"category":1,"messageText":{"messageText":"Type '\"TEXT\" | \"NUMBER\" | \"DATE\" | \"SELECT\" | \"TEXTAREA\" | \"CHECKBOX\"' is not assignable to type '\"number\" | \"textbox\" | \"dropdown\" | \"checkbox\" | \"date\" | \"textarea\"'.","category":1,"code":2322,"next":[{"messageText":"Type '\"TEXT\"' is not assignable to type '\"number\" | \"textbox\" | \"dropdown\" | \"checkbox\" | \"date\" | \"textarea\"'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/contexts/itemmastercontext.tsx","start":7374,"length":10,"messageText":"The expected type comes from property 'field_type' which is declared here on type 'ItemMasterField'","category":3,"code":6500}]},{"start":6541,"length":5,"code":2339,"category":1,"messageText":"Property 'title' does not exist on type 'Partial'."},{"start":8880,"length":18,"code":2339,"category":1,"messageText":"Property 'default_validation' does not exist on type 'Partial'."},{"start":8946,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'Partial'."}]],[540,[{"start":2394,"length":31,"messageText":"This comparison appears to be unintentional because the types 'string | null' and 'number' have no overlap.","category":1,"code":2367},{"start":3420,"length":10,"code":2345,"category":1,"messageText":"Argument of type 'number' is not assignable to parameter of type 'string'."},{"start":3440,"length":5,"code":2339,"category":1,"messageText":"Property 'title' does not exist on type 'ItemSection'."},{"start":3551,"length":5,"code":2339,"category":1,"messageText":"Property 'title' does not exist on type 'ItemSection'."}]],[693,[{"start":927,"length":24,"code":7053,"category":1,"messageText":{"messageText":"Element implicitly has an 'any' type because expression of type '\"Authorization\"' can't be used to index type 'HeadersInit'.","category":1,"code":7053,"next":[{"messageText":"Property 'Authorization' does not exist on type 'HeadersInit'.","category":1,"code":2339}]}}]],[695,[{"start":821,"length":24,"code":7053,"category":1,"messageText":{"messageText":"Element implicitly has an 'any' type because expression of type '\"Authorization\"' can't be used to index type 'HeadersInit'.","category":1,"code":7053,"next":[{"messageText":"Property 'Authorization' does not exist on type 'HeadersInit'.","category":1,"code":2339}]}}]],[780,[{"start":629,"length":4,"code":2769,"category":1,"messageText":{"messageText":"No overload matches this call.","category":1,"code":2769,"next":[{"messageText":"Overload 1 of 2, '(values: readonly [\"FG\", \"PT\", \"SM\", \"RM\", \"CS\"], params?: string | { error?: string | $ZodErrorMap<$ZodIssueInvalidValue> | undefined; message?: string | undefined; } | undefined): ZodEnum<...>', gave the following error.","category":1,"code":2772,"next":[{"messageText":"Object literal may only specify known properties, and 'errorMap' does not exist in type '{ error?: string | $ZodErrorMap<$ZodIssueInvalidValue> | undefined; message?: string | undefined; }'.","category":1,"code":2353}]},{"messageText":"Overload 2 of 2, '(entries: Readonly>, params?: string | { error?: string | $ZodErrorMap<$ZodIssueInvalidValue> | undefined; message?: string | undefined; } | undefined): ZodEnum<...>', gave the following error.","category":1,"code":2772,"next":[{"messageText":"Argument of type 'string[]' is not assignable to parameter of type 'Readonly>'.","category":1,"code":2345,"next":[{"messageText":"Index signature for type 'string' is missing in type 'string[]'.","category":1,"code":2329}]}]}]},"relatedInformation":[]},{"start":19388,"length":6,"code":2339,"category":1,"messageText":"Property 'errors' does not exist on type 'ZodError'."},{"start":19404,"length":3,"messageText":"Parameter 'err' implicitly has an 'any' type.","category":1,"code":7006}]],[788,[{"start":7708,"length":11,"code":2769,"category":1,"messageText":{"messageText":"No overload matches this call.","category":1,"code":2769,"next":[{"messageText":"Overload 1 of 2, '(partial: MasterDataStore | Partial | ((state: MasterDataStore) => MasterDataStore | Partial<...>), replace?: false | undefined, action?: Action | undefined): void', gave the following error.","category":1,"code":2772,"next":[{"messageText":"Type '{}' is missing the following properties from type 'Record': \"item-master\", quotation, \"sales-order\", formula, pricing","category":1,"code":2739,"canonicalHead":{"code":2322,"messageText":"Type '{}' is not assignable to type 'Record'."}}]},{"messageText":"Overload 2 of 2, '(state: MasterDataStore | ((state: MasterDataStore) => MasterDataStore), replace: true, action?: Action | undefined): void', gave the following error.","category":1,"code":2772,"next":[{"messageText":"Type '{}' is missing the following properties from type 'Record': \"item-master\", quotation, \"sales-order\", formula, pricing","category":1,"code":2739,"canonicalHead":{"code":2322,"messageText":"Type '{}' is not assignable to type 'Record'."}}]}]},"relatedInformation":[]},{"start":10569,"length":7,"messageText":"Expected 0-1 arguments, but got 2.","category":1,"code":2554}]],[1371,[{"start":197,"length":17,"messageText":"'\"@/types/item\"' has no exported member named '_PART_TYPE_LABELS'. Did you mean 'PART_TYPE_LABELS'?","category":1,"code":2724,"relatedInformation":[{"file":"./src/types/item.ts","start":8791,"length":16,"messageText":"'PART_TYPE_LABELS' is declared here.","category":3,"code":2728}]},{"start":216,"length":18,"messageText":"'\"@/types/item\"' has no exported member named '_PART_USAGE_LABELS'. Did you mean 'PART_USAGE_LABELS'?","category":1,"code":2724,"relatedInformation":[{"file":"./src/types/item.ts","start":8947,"length":17,"messageText":"'PART_USAGE_LABELS' is declared here.","category":3,"code":2728}]}]],[1439,[{"start":8149,"length":8,"code":2322,"category":1,"messageText":{"messageText":"Type 'Resolver<{ itemName: unknown; certificationStartDate: unknown; certificationEndDate: unknown; finalizedDate: unknown; productName: unknown; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ......' is not assignable to type 'Resolver<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: ...'.","category":1,"code":2322,"next":[{"messageText":"Types of parameters 'values' and 'values' are incompatible.","category":1,"code":2328,"next":[{"messageText":"Type '{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: string | ...' is not assignable to type '{ itemName: unknown; certificationStartDate: unknown; certificationEndDate: unknown; finalizedDate: unknown; productName: unknown; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...'.","category":1,"code":2322,"next":[{"messageText":"Type '{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: string | ...' is not assignable to type '{ itemName: unknown; certificationStartDate: unknown; certificationEndDate: unknown; finalizedDate: unknown; productName: unknown; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...'.","category":1,"code":2322,"next":[{"messageText":"Type '{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: string | ...' is not assignable to type '{ itemName: unknown; certificationStartDate: unknown; certificationEndDate: unknown; finalizedDate: unknown; productName: unknown; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...'.","category":1,"code":2322,"next":[{"messageText":"Property 'certificationStartDate' is optional in type '{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: string | ...' but required in type '{ itemName: unknown; certificationStartDate: unknown; certificationEndDate: unknown; finalizedDate: unknown; productName: unknown; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...'.","category":1,"code":2327}]}]}]}]}]}},{"start":13680,"length":10,"code":2345,"category":1,"messageText":"Argument of type '\"needsBOM\"' is not assignable to parameter of type '\"length\" | \"bom\" | \"unit\" | \"note\" | \"itemCode\" | \"itemName\" | \"itemType\" | \"productCategory\" | \"partType\" | \"partUsage\" | \"category1\" | \"category2\" | \"category3\" | \"specification\" | ... 70 more ... | `bomCategories.${number}`'."},{"start":13798,"length":16,"code":2345,"category":1,"messageText":{"messageText":"Argument of type '(data: CreateItemFormData) => Promise' is not assignable to parameter of type 'SubmitHandler'.","category":1,"code":2345,"next":[{"messageText":"Types of parameters 'data' and 'data' are incompatible.","category":1,"code":2328,"next":[{"messageText":"Type 'TFieldValues' is not assignable to type '{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: string | ...'.","category":1,"code":2322,"next":[{"messageText":"Type 'FieldValues' is not assignable to type '{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: string | ...'.","category":1,"code":2322,"next":[{"messageText":"Type 'FieldValues' is missing the following properties from type '{ partType: string; isActive: boolean; currentRevision: number; isFinal: boolean; itemType: \"PT\"; length?: string | undefined; bom?: { id: string; childItemCode: string; childItemName: string; ... 7 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 42 more ...; chainSpec?: string | undefined; }': partType, isActive, currentRevision, isFinal, itemType","category":1,"code":2739,"next":[{"messageText":"Type 'TFieldValues' is not assignable to type '{ unit: string; itemName: string; specification: string; isActive: boolean; currentRevision: number; isFinal: boolean; itemType: \"CS\"; bom?: { id: string; childItemCode: string; childItemName: string; ... 7 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 15 more ...; finalizedBy?: string | un...'.","category":1,"code":2322,"next":[{"messageText":"Type 'FieldValues' is missing the following properties from type '{ unit: string; itemName: string; specification: string; isActive: boolean; currentRevision: number; isFinal: boolean; itemType: \"CS\"; bom?: { id: string; childItemCode: string; childItemName: string; ... 7 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 15 more ...; finalizedBy?: string | un...': unit, itemName, specification, isActive, and 3 more.","category":1,"code":2740,"canonicalHead":{"code":2322,"messageText":"Type 'FieldValues' is not assignable to type '{ unit: string; itemName: string; specification: string; isActive: boolean; currentRevision: number; isFinal: boolean; itemType: \"CS\"; bom?: { id: string; childItemCode: string; childItemName: string; ... 7 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 15 more ...; finalizedBy?: string | un...'."}}]}],"canonicalHead":{"code":2322,"messageText":"Type 'FieldValues' is not assignable to type '{ partType: string; isActive: boolean; currentRevision: number; isFinal: boolean; itemType: \"PT\"; length?: string | undefined; bom?: { id: string; childItemCode: string; childItemName: string; ... 7 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 42 more ...; chainSpec?: string | undefined; }'."}}]}]}]}]}},{"start":17400,"length":5,"code":2322,"category":1,"messageText":{"messageText":"Type '\"\" | ItemType' is not assignable to type 'ItemType | undefined'.","category":1,"code":2322,"next":[{"messageText":"Type '\"\"' is not assignable to type 'ItemType | undefined'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/components/items/itemtypeselect.tsx","start":311,"length":5,"messageText":"The expected type comes from property 'value' which is declared here on type 'IntrinsicAttributes & ItemTypeSelectProps'","category":3,"code":6500}]},{"start":18713,"length":11,"code":2339,"category":1,"messageText":{"messageText":"Property 'productName' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'productName' does not exist on type 'Partial> & { ......'.","category":1,"code":2339}]}},{"start":18805,"length":11,"code":2339,"category":1,"messageText":{"messageText":"Property 'productName' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'productName' does not exist on type 'Partial> & { ......'.","category":1,"code":2339}]}},{"start":18922,"length":11,"code":2339,"category":1,"messageText":{"messageText":"Property 'productName' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'productName' does not exist on type 'Partial> & { ......'.","category":1,"code":2339}]}},{"start":19028,"length":11,"code":2339,"category":1,"messageText":{"messageText":"Property 'productName' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'productName' does not exist on type 'Partial> & { ......'.","category":1,"code":2339}]}},{"start":25032,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'partType' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'partType' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":25600,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'partType' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'partType' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":25714,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'partType' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'partType' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":25817,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'partType' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'partType' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":32950,"length":13,"code":2345,"category":1,"messageText":"Argument of type '\"description\"' is not assignable to parameter of type '\"length\" | \"bom\" | \"unit\" | \"note\" | \"itemCode\" | \"itemName\" | \"itemType\" | \"productCategory\" | \"partType\" | \"partUsage\" | \"category1\" | \"category2\" | \"category3\" | \"specification\" | ... 70 more ... | `bomCategories.${number}`'."},{"start":45410,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'material' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'material' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":46087,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'material' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'material' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":46217,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'material' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'material' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":47216,"length":6,"code":2339,"category":1,"messageText":{"messageText":"Property 'length' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'length' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":47450,"length":6,"code":2339,"category":1,"messageText":{"messageText":"Property 'length' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'length' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":47578,"length":6,"code":2339,"category":1,"messageText":{"messageText":"Property 'length' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'length' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":47703,"length":6,"code":2339,"category":1,"messageText":{"messageText":"Property 'length' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'length' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":48585,"length":13,"code":2339,"category":1,"messageText":{"messageText":"Property 'bendingLength' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'bendingLength' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":49906,"length":13,"code":2339,"category":1,"messageText":{"messageText":"Property 'bendingLength' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'bendingLength' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":50041,"length":13,"code":2339,"category":1,"messageText":{"messageText":"Property 'bendingLength' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'bendingLength' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":51037,"length":19,"code":2339,"category":1,"messageText":{"messageText":"Property 'electricOpenerPower' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'electricOpenerPower' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":51535,"length":19,"code":2339,"category":1,"messageText":{"messageText":"Property 'electricOpenerPower' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'electricOpenerPower' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":51676,"length":19,"code":2339,"category":1,"messageText":{"messageText":"Property 'electricOpenerPower' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'electricOpenerPower' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":52434,"length":22,"code":2339,"category":1,"messageText":{"messageText":"Property 'electricOpenerCapacity' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'electricOpenerCapacity' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":53329,"length":22,"code":2339,"category":1,"messageText":{"messageText":"Property 'electricOpenerCapacity' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'electricOpenerCapacity' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":53473,"length":22,"code":2339,"category":1,"messageText":{"messageText":"Property 'electricOpenerCapacity' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'electricOpenerCapacity' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":54659,"length":12,"code":2339,"category":1,"messageText":{"messageText":"Property 'motorVoltage' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'motorVoltage' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":55148,"length":12,"code":2339,"category":1,"messageText":{"messageText":"Property 'motorVoltage' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'motorVoltage' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":55282,"length":12,"code":2339,"category":1,"messageText":{"messageText":"Property 'motorVoltage' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'motorVoltage' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":56240,"length":9,"code":2339,"category":1,"messageText":{"messageText":"Property 'chainSpec' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'chainSpec' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":56866,"length":9,"code":2339,"category":1,"messageText":{"messageText":"Property 'chainSpec' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'chainSpec' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":56997,"length":9,"code":2339,"category":1,"messageText":{"messageText":"Property 'chainSpec' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'chainSpec' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":59270,"length":13,"code":2345,"category":1,"messageText":"Argument of type '\"description\"' is not assignable to parameter of type '\"length\" | \"bom\" | \"unit\" | \"note\" | \"itemCode\" | \"itemName\" | \"itemType\" | \"productCategory\" | \"partType\" | \"partUsage\" | \"category1\" | \"category2\" | \"category3\" | \"specification\" | ... 70 more ... | `bomCategories.${number}`'."},{"start":64110,"length":13,"code":2345,"category":1,"messageText":"Argument of type '\"description\"' is not assignable to parameter of type '\"length\" | \"bom\" | \"unit\" | \"note\" | \"itemCode\" | \"itemName\" | \"itemType\" | \"productCategory\" | \"partType\" | \"partUsage\" | \"category1\" | \"category2\" | \"category3\" | \"specification\" | ... 70 more ... | `bomCategories.${number}`'."},{"start":82908,"length":9,"code":2345,"category":1,"messageText":"Argument of type '\"remarks\"' is not assignable to parameter of type '\"length\" | \"bom\" | \"unit\" | \"note\" | \"itemCode\" | \"itemName\" | \"itemType\" | \"productCategory\" | \"partType\" | \"partUsage\" | \"category1\" | \"category2\" | \"category3\" | \"specification\" | ... 70 more ... | `bomCategories.${number}`'."}]],[1448,[{"start":15028,"length":17,"code":2322,"category":1,"messageText":{"messageText":"Type '\"number\" | \"textbox\" | \"dropdown\" | \"checkbox\" | \"date\" | \"textarea\" | \"section\"' is not assignable to type '\"number\" | \"textbox\" | \"dropdown\" | \"checkbox\" | \"date\" | \"textarea\"'.","category":1,"code":2322,"next":[{"messageText":"Type '\"section\"' is not assignable to type '\"number\" | \"textbox\" | \"dropdown\" | \"checkbox\" | \"date\" | \"textarea\"'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/components/items/itemmasterdatamanagement/components/conditionaldisplayui.tsx","start":1125,"length":17,"messageText":"The expected type comes from property 'newFieldInputType' which is declared here on type 'IntrinsicAttributes & ConditionalDisplayUIProps'","category":3,"code":6500}]},{"start":15180,"length":14,"code":2322,"category":1,"messageText":{"messageText":"Type 'number | null' is not assignable to type 'string | null'.","category":1,"code":2322,"next":[{"messageText":"Type 'number' is not assignable to type 'string'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/components/items/itemmasterdatamanagement/components/conditionaldisplayui.tsx","start":1296,"length":14,"messageText":"The expected type comes from property 'editingFieldId' which is declared here on type 'IntrinsicAttributes & ConditionalDisplayUIProps'","category":3,"code":6500}]}]],[1451,[{"start":6791,"length":34,"messageText":"This comparison appears to be unintentional because the types 'string' and 'number' have no overlap.","category":1,"code":2367},{"start":7044,"length":8,"code":2345,"category":1,"messageText":"Argument of type 'number' is not assignable to parameter of type 'string'."},{"start":7101,"length":4,"code":2339,"category":1,"messageText":"Property 'name' does not exist on type 'ItemMasterField'."},{"start":7153,"length":8,"code":2339,"category":1,"messageText":"Property 'fieldKey' does not exist on type 'ItemMasterField'."},{"start":7215,"length":8,"code":2339,"category":1,"messageText":"Property 'property' does not exist on type 'ItemMasterField'."},{"start":7286,"length":8,"code":2339,"category":1,"messageText":"Property 'property' does not exist on type 'ItemMasterField'."},{"start":7428,"length":8,"code":2339,"category":1,"messageText":"Property 'property' does not exist on type 'ItemMasterField'."},{"start":7499,"length":8,"code":2339,"category":1,"messageText":"Property 'property' does not exist on type 'ItemMasterField'."},{"start":7529,"length":8,"code":2339,"category":1,"messageText":"Property 'property' does not exist on type 'ItemMasterField'."},{"start":7632,"length":8,"code":2339,"category":1,"messageText":"Property 'property' does not exist on type 'ItemMasterField'."},{"start":7658,"length":4,"messageText":"Parameter 'name' implicitly has an 'any' type.","category":1,"code":7006},{"start":7664,"length":3,"messageText":"Parameter 'idx' implicitly has an 'any' type.","category":1,"code":7006},{"start":8202,"length":4,"code":2339,"category":1,"messageText":"Property 'name' does not exist on type 'ItemMasterField'."},{"start":8367,"length":8,"code":2339,"category":1,"messageText":"Property 'property' does not exist on type 'ItemMasterField'."},{"start":8467,"length":8,"code":2339,"category":1,"messageText":"Property 'property' does not exist on type 'ItemMasterField'."},{"start":9369,"length":34,"messageText":"This comparison appears to be unintentional because the types 'string' and 'number' have no overlap.","category":1,"code":2367},{"start":25670,"length":4,"code":2339,"category":1,"messageText":"Property 'type' does not exist on type 'ItemSection'."},{"start":26044,"length":10,"code":2345,"category":1,"messageText":"Argument of type 'number' is not assignable to parameter of type 'string'."},{"start":26237,"length":29,"code":2345,"category":1,"messageText":{"messageText":"Argument of type '(prev: string[]) => (string | number)[]' is not assignable to parameter of type 'SetStateAction'.","category":1,"code":2345,"next":[{"messageText":"Type '(prev: string[]) => (string | number)[]' is not assignable to type '(prevState: string[]) => string[]'.","category":1,"code":2322,"next":[{"messageText":"Type '(string | number)[]' is not assignable to type 'string[]'.","category":1,"code":2322,"next":[{"messageText":"Type 'string | number' is not assignable to type 'string'.","category":1,"code":2322,"next":[{"messageText":"Type 'number' is not assignable to type 'string'.","category":1,"code":2322}]}],"canonicalHead":{"code":2322,"messageText":"Type '(prev: string[]) => (string | number)[]' is not assignable to type '(prevState: string[]) => string[]'."}}]}]}},{"start":26407,"length":17,"messageText":"This comparison appears to be unintentional because the types 'string' and 'number' have no overlap.","category":1,"code":2367},{"start":26673,"length":5,"code":2339,"category":1,"messageText":"Property 'title' does not exist on type 'ItemSection'."}]],[1457,[{"start":2307,"length":17,"code":2345,"category":1,"messageText":"Argument of type 'number' is not assignable to parameter of type 'string'."}]],[1467,[{"start":19700,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":19763,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":19868,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":20512,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":20789,"length":18,"code":2353,"category":1,"messageText":"Object literal may only specify known properties, and 'default_properties' does not exist in type 'Partial'."},{"start":20835,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":27838,"length":5,"code":2339,"category":1,"messageText":"Property 'title' does not exist on type '{ tenant_id: number; template_name: string; section_type: \"BASIC\" | \"BOM\" | \"CUSTOM\"; description: string | null; default_fields: null; created_by: null; updated_by: null; }'."},{"start":32137,"length":11,"code":2322,"category":1,"messageText":{"messageText":"Type 'string | null | undefined' is not assignable to type 'string | null'.","category":1,"code":2322,"next":[{"messageText":"Type 'undefined' is not assignable to type 'string | null'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/contexts/itemmastercontext.tsx","start":7496,"length":11,"messageText":"The expected type comes from property 'description' which is declared here on type 'ItemMasterField'","category":3,"code":6500}]},{"start":33128,"length":11,"code":2322,"category":1,"messageText":{"messageText":"Type 'string | null | undefined' is not assignable to type 'string | null'.","category":1,"code":2322,"next":[{"messageText":"Type 'undefined' is not assignable to type 'string | null'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/contexts/itemmastercontext.tsx","start":7496,"length":11,"messageText":"The expected type comes from property 'description' which is declared here on type 'ItemMasterField'","category":3,"code":6500}]},{"start":37864,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":37936,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":38006,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":39569,"length":18,"code":2353,"category":1,"messageText":"Object literal may only specify known properties, and 'default_validation' does not exist in type 'ItemMasterField'."},{"start":43333,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":43401,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":43581,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":43671,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":43765,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":43847,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":43925,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":44883,"length":18,"code":2353,"category":1,"messageText":"Object literal may only specify known properties, and 'default_properties' does not exist in type 'Partial'."},{"start":51844,"length":5,"code":2339,"category":1,"messageText":"Property 'title' does not exist on type 'SectionTemplate'."},{"start":51880,"length":4,"code":2339,"category":1,"messageText":"Property 'type' does not exist on type 'SectionTemplate'."},{"start":52118,"length":4,"code":2339,"category":1,"messageText":"Property 'type' does not exist on type 'SectionTemplate'."},{"start":52215,"length":5,"code":2339,"category":1,"messageText":"Property 'title' does not exist on type 'SectionTemplate'."},{"start":52240,"length":4,"code":2339,"category":1,"messageText":"Property 'type' does not exist on type 'SectionTemplate'."},{"start":54043,"length":11,"code":2322,"category":1,"messageText":{"messageText":"Type 'string | undefined' is not assignable to type 'string | null'.","category":1,"code":2322,"next":[{"messageText":"Type 'undefined' is not assignable to type 'string | null'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/contexts/itemmastercontext.tsx","start":7496,"length":11,"messageText":"The expected type comes from property 'description' which is declared here on type 'ItemMasterField'","category":3,"code":6500}]},{"start":91175,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":91223,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."},{"start":91855,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'ItemMasterField'."}]]],"affectedFilesPendingEmit":[1500,1501,1499,1502,1497,1498,1503,1504,1496,502,811,1367,797,1440,1372,1441,1370,807,808,1468,809,1471,1470,1472,1469,789,794,1476,795,796,1478,511,512,513,514,515,516,519,518,1475,1477,1366,1365,810,573,1438,1434,1371,1439,1369,1467,1447,543,540,544,1463,1456,1448,1451,1462,1460,1455,1458,1457,1459,1464,1454,1461,547,574,581,548,580,520,582,1433,1473,804,1443,1442,1474,1453,1420,542,537,1246,545,812,1249,1432,572,1450,803,1466,538,551,1465,1430,1481,566,798,1437,1446,1368,579,1419,1484,541,571,1485,1486,1487,1488,1489,1490,1491,1492,1493,521,530,806,793,583,584,585,508,689,805,525,509,690,691,526,528,693,527,695,517,529,696,523,522,536,707,780,781,510,782,706,783,784,788,524,692,694],"version":"5.9.3"} \ No newline at end of file +{"fileNames":["./node_modules/typescript/lib/lib.es5.d.ts","./node_modules/typescript/lib/lib.es2015.d.ts","./node_modules/typescript/lib/lib.es2016.d.ts","./node_modules/typescript/lib/lib.es2017.d.ts","./node_modules/typescript/lib/lib.es2018.d.ts","./node_modules/typescript/lib/lib.es2019.d.ts","./node_modules/typescript/lib/lib.es2020.d.ts","./node_modules/typescript/lib/lib.es2021.d.ts","./node_modules/typescript/lib/lib.es2022.d.ts","./node_modules/typescript/lib/lib.es2023.d.ts","./node_modules/typescript/lib/lib.es2024.d.ts","./node_modules/typescript/lib/lib.esnext.d.ts","./node_modules/typescript/lib/lib.dom.d.ts","./node_modules/typescript/lib/lib.dom.iterable.d.ts","./node_modules/typescript/lib/lib.es2015.core.d.ts","./node_modules/typescript/lib/lib.es2015.collection.d.ts","./node_modules/typescript/lib/lib.es2015.generator.d.ts","./node_modules/typescript/lib/lib.es2015.iterable.d.ts","./node_modules/typescript/lib/lib.es2015.promise.d.ts","./node_modules/typescript/lib/lib.es2015.proxy.d.ts","./node_modules/typescript/lib/lib.es2015.reflect.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.d.ts","./node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2016.array.include.d.ts","./node_modules/typescript/lib/lib.es2016.intl.d.ts","./node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","./node_modules/typescript/lib/lib.es2017.date.d.ts","./node_modules/typescript/lib/lib.es2017.object.d.ts","./node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2017.string.d.ts","./node_modules/typescript/lib/lib.es2017.intl.d.ts","./node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","./node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","./node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","./node_modules/typescript/lib/lib.es2018.intl.d.ts","./node_modules/typescript/lib/lib.es2018.promise.d.ts","./node_modules/typescript/lib/lib.es2018.regexp.d.ts","./node_modules/typescript/lib/lib.es2019.array.d.ts","./node_modules/typescript/lib/lib.es2019.object.d.ts","./node_modules/typescript/lib/lib.es2019.string.d.ts","./node_modules/typescript/lib/lib.es2019.symbol.d.ts","./node_modules/typescript/lib/lib.es2019.intl.d.ts","./node_modules/typescript/lib/lib.es2020.bigint.d.ts","./node_modules/typescript/lib/lib.es2020.date.d.ts","./node_modules/typescript/lib/lib.es2020.promise.d.ts","./node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2020.string.d.ts","./node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","./node_modules/typescript/lib/lib.es2020.intl.d.ts","./node_modules/typescript/lib/lib.es2020.number.d.ts","./node_modules/typescript/lib/lib.es2021.promise.d.ts","./node_modules/typescript/lib/lib.es2021.string.d.ts","./node_modules/typescript/lib/lib.es2021.weakref.d.ts","./node_modules/typescript/lib/lib.es2021.intl.d.ts","./node_modules/typescript/lib/lib.es2022.array.d.ts","./node_modules/typescript/lib/lib.es2022.error.d.ts","./node_modules/typescript/lib/lib.es2022.intl.d.ts","./node_modules/typescript/lib/lib.es2022.object.d.ts","./node_modules/typescript/lib/lib.es2022.string.d.ts","./node_modules/typescript/lib/lib.es2022.regexp.d.ts","./node_modules/typescript/lib/lib.es2023.array.d.ts","./node_modules/typescript/lib/lib.es2023.collection.d.ts","./node_modules/typescript/lib/lib.es2023.intl.d.ts","./node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","./node_modules/typescript/lib/lib.es2024.collection.d.ts","./node_modules/typescript/lib/lib.es2024.object.d.ts","./node_modules/typescript/lib/lib.es2024.promise.d.ts","./node_modules/typescript/lib/lib.es2024.regexp.d.ts","./node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","./node_modules/typescript/lib/lib.es2024.string.d.ts","./node_modules/typescript/lib/lib.esnext.array.d.ts","./node_modules/typescript/lib/lib.esnext.collection.d.ts","./node_modules/typescript/lib/lib.esnext.intl.d.ts","./node_modules/typescript/lib/lib.esnext.disposable.d.ts","./node_modules/typescript/lib/lib.esnext.promise.d.ts","./node_modules/typescript/lib/lib.esnext.decorators.d.ts","./node_modules/typescript/lib/lib.esnext.iterator.d.ts","./node_modules/typescript/lib/lib.esnext.float16.d.ts","./node_modules/typescript/lib/lib.esnext.error.d.ts","./node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","./node_modules/typescript/lib/lib.decorators.d.ts","./node_modules/typescript/lib/lib.decorators.legacy.d.ts","./.next/types/routes.d.ts","./node_modules/@types/react/global.d.ts","./node_modules/csstype/index.d.ts","./node_modules/@types/react/index.d.ts","./node_modules/next/dist/styled-jsx/types/css.d.ts","./node_modules/next/dist/styled-jsx/types/macro.d.ts","./node_modules/next/dist/styled-jsx/types/style.d.ts","./node_modules/next/dist/styled-jsx/types/global.d.ts","./node_modules/next/dist/styled-jsx/types/index.d.ts","./node_modules/next/dist/shared/lib/amp.d.ts","./node_modules/next/amp.d.ts","./node_modules/next/dist/server/get-page-files.d.ts","./node_modules/@types/node/compatibility/disposable.d.ts","./node_modules/@types/node/compatibility/indexable.d.ts","./node_modules/@types/node/compatibility/iterators.d.ts","./node_modules/@types/node/compatibility/index.d.ts","./node_modules/@types/node/globals.typedarray.d.ts","./node_modules/@types/node/buffer.buffer.d.ts","./node_modules/@types/node/globals.d.ts","./node_modules/@types/node/web-globals/abortcontroller.d.ts","./node_modules/@types/node/web-globals/domexception.d.ts","./node_modules/@types/node/web-globals/events.d.ts","./node_modules/undici-types/header.d.ts","./node_modules/undici-types/readable.d.ts","./node_modules/undici-types/file.d.ts","./node_modules/undici-types/fetch.d.ts","./node_modules/undici-types/formdata.d.ts","./node_modules/undici-types/connector.d.ts","./node_modules/undici-types/client.d.ts","./node_modules/undici-types/errors.d.ts","./node_modules/undici-types/dispatcher.d.ts","./node_modules/undici-types/global-dispatcher.d.ts","./node_modules/undici-types/global-origin.d.ts","./node_modules/undici-types/pool-stats.d.ts","./node_modules/undici-types/pool.d.ts","./node_modules/undici-types/handlers.d.ts","./node_modules/undici-types/balanced-pool.d.ts","./node_modules/undici-types/agent.d.ts","./node_modules/undici-types/mock-interceptor.d.ts","./node_modules/undici-types/mock-agent.d.ts","./node_modules/undici-types/mock-client.d.ts","./node_modules/undici-types/mock-pool.d.ts","./node_modules/undici-types/mock-errors.d.ts","./node_modules/undici-types/proxy-agent.d.ts","./node_modules/undici-types/env-http-proxy-agent.d.ts","./node_modules/undici-types/retry-handler.d.ts","./node_modules/undici-types/retry-agent.d.ts","./node_modules/undici-types/api.d.ts","./node_modules/undici-types/interceptors.d.ts","./node_modules/undici-types/util.d.ts","./node_modules/undici-types/cookies.d.ts","./node_modules/undici-types/patch.d.ts","./node_modules/undici-types/websocket.d.ts","./node_modules/undici-types/eventsource.d.ts","./node_modules/undici-types/filereader.d.ts","./node_modules/undici-types/diagnostics-channel.d.ts","./node_modules/undici-types/content-type.d.ts","./node_modules/undici-types/cache.d.ts","./node_modules/undici-types/index.d.ts","./node_modules/@types/node/web-globals/fetch.d.ts","./node_modules/@types/node/assert.d.ts","./node_modules/@types/node/assert/strict.d.ts","./node_modules/@types/node/async_hooks.d.ts","./node_modules/@types/node/buffer.d.ts","./node_modules/@types/node/child_process.d.ts","./node_modules/@types/node/cluster.d.ts","./node_modules/@types/node/console.d.ts","./node_modules/@types/node/constants.d.ts","./node_modules/@types/node/crypto.d.ts","./node_modules/@types/node/dgram.d.ts","./node_modules/@types/node/diagnostics_channel.d.ts","./node_modules/@types/node/dns.d.ts","./node_modules/@types/node/dns/promises.d.ts","./node_modules/@types/node/domain.d.ts","./node_modules/@types/node/events.d.ts","./node_modules/@types/node/fs.d.ts","./node_modules/@types/node/fs/promises.d.ts","./node_modules/@types/node/http.d.ts","./node_modules/@types/node/http2.d.ts","./node_modules/@types/node/https.d.ts","./node_modules/@types/node/inspector.generated.d.ts","./node_modules/@types/node/module.d.ts","./node_modules/@types/node/net.d.ts","./node_modules/@types/node/os.d.ts","./node_modules/@types/node/path.d.ts","./node_modules/@types/node/perf_hooks.d.ts","./node_modules/@types/node/process.d.ts","./node_modules/@types/node/punycode.d.ts","./node_modules/@types/node/querystring.d.ts","./node_modules/@types/node/readline.d.ts","./node_modules/@types/node/readline/promises.d.ts","./node_modules/@types/node/repl.d.ts","./node_modules/@types/node/sea.d.ts","./node_modules/@types/node/stream.d.ts","./node_modules/@types/node/stream/promises.d.ts","./node_modules/@types/node/stream/consumers.d.ts","./node_modules/@types/node/stream/web.d.ts","./node_modules/@types/node/string_decoder.d.ts","./node_modules/@types/node/test.d.ts","./node_modules/@types/node/timers.d.ts","./node_modules/@types/node/timers/promises.d.ts","./node_modules/@types/node/tls.d.ts","./node_modules/@types/node/trace_events.d.ts","./node_modules/@types/node/tty.d.ts","./node_modules/@types/node/url.d.ts","./node_modules/@types/node/util.d.ts","./node_modules/@types/node/v8.d.ts","./node_modules/@types/node/vm.d.ts","./node_modules/@types/node/wasi.d.ts","./node_modules/@types/node/worker_threads.d.ts","./node_modules/@types/node/zlib.d.ts","./node_modules/@types/node/index.d.ts","./node_modules/@types/react/canary.d.ts","./node_modules/@types/react/experimental.d.ts","./node_modules/@types/react-dom/index.d.ts","./node_modules/@types/react-dom/canary.d.ts","./node_modules/@types/react-dom/experimental.d.ts","./node_modules/next/dist/lib/fallback.d.ts","./node_modules/next/dist/compiled/webpack/webpack.d.ts","./node_modules/next/dist/server/config.d.ts","./node_modules/next/dist/lib/load-custom-routes.d.ts","./node_modules/next/dist/shared/lib/image-config.d.ts","./node_modules/next/dist/build/webpack/plugins/subresource-integrity-plugin.d.ts","./node_modules/next/dist/server/body-streams.d.ts","./node_modules/next/dist/server/lib/cache-control.d.ts","./node_modules/next/dist/lib/setup-exception-listeners.d.ts","./node_modules/next/dist/lib/worker.d.ts","./node_modules/next/dist/lib/constants.d.ts","./node_modules/next/dist/client/components/app-router-headers.d.ts","./node_modules/next/dist/build/rendering-mode.d.ts","./node_modules/next/dist/server/lib/router-utils/build-prefetch-segment-data-route.d.ts","./node_modules/next/dist/server/require-hook.d.ts","./node_modules/next/dist/server/lib/experimental/ppr.d.ts","./node_modules/next/dist/build/webpack/plugins/app-build-manifest-plugin.d.ts","./node_modules/next/dist/lib/page-types.d.ts","./node_modules/next/dist/build/segment-config/app/app-segment-config.d.ts","./node_modules/next/dist/build/segment-config/pages/pages-segment-config.d.ts","./node_modules/next/dist/build/analysis/get-page-static-info.d.ts","./node_modules/next/dist/build/webpack/loaders/get-module-build-info.d.ts","./node_modules/next/dist/build/webpack/plugins/middleware-plugin.d.ts","./node_modules/next/dist/server/node-polyfill-crypto.d.ts","./node_modules/next/dist/server/node-environment-baseline.d.ts","./node_modules/next/dist/server/node-environment-extensions/error-inspect.d.ts","./node_modules/next/dist/server/node-environment-extensions/random.d.ts","./node_modules/next/dist/server/node-environment-extensions/date.d.ts","./node_modules/next/dist/server/node-environment-extensions/web-crypto.d.ts","./node_modules/next/dist/server/node-environment-extensions/node-crypto.d.ts","./node_modules/next/dist/server/node-environment.d.ts","./node_modules/next/dist/build/page-extensions-type.d.ts","./node_modules/next/dist/build/webpack/plugins/flight-manifest-plugin.d.ts","./node_modules/next/dist/server/instrumentation/types.d.ts","./node_modules/next/dist/lib/coalesced-function.d.ts","./node_modules/next/dist/shared/lib/router/utils/middleware-route-matcher.d.ts","./node_modules/next/dist/server/lib/router-utils/types.d.ts","./node_modules/next/dist/shared/lib/modern-browserslist-target.d.ts","./node_modules/next/dist/shared/lib/constants.d.ts","./node_modules/next/dist/trace/types.d.ts","./node_modules/next/dist/trace/trace.d.ts","./node_modules/next/dist/trace/shared.d.ts","./node_modules/next/dist/trace/index.d.ts","./node_modules/next/dist/build/load-jsconfig.d.ts","./node_modules/@next/env/dist/index.d.ts","./node_modules/next/dist/build/webpack/plugins/telemetry-plugin/use-cache-tracker-utils.d.ts","./node_modules/next/dist/build/webpack/plugins/telemetry-plugin/telemetry-plugin.d.ts","./node_modules/next/dist/telemetry/storage.d.ts","./node_modules/next/dist/build/build-context.d.ts","./node_modules/next/dist/shared/lib/bloom-filter.d.ts","./node_modules/next/dist/build/webpack-config.d.ts","./node_modules/next/dist/server/route-kind.d.ts","./node_modules/next/dist/server/route-definitions/route-definition.d.ts","./node_modules/next/dist/build/swc/generated-native.d.ts","./node_modules/next/dist/build/swc/types.d.ts","./node_modules/next/dist/server/dev/parse-version-info.d.ts","./node_modules/next/dist/next-devtools/shared/types.d.ts","./node_modules/next/dist/server/dev/dev-indicator-server-state.d.ts","./node_modules/next/dist/server/lib/parse-stack.d.ts","./node_modules/next/dist/next-devtools/server/shared.d.ts","./node_modules/next/dist/next-devtools/shared/stack-frame.d.ts","./node_modules/next/dist/next-devtools/dev-overlay/utils/get-error-by-type.d.ts","./node_modules/@types/react/jsx-runtime.d.ts","./node_modules/next/dist/next-devtools/dev-overlay/container/runtime-error/render-error.d.ts","./node_modules/next/dist/next-devtools/dev-overlay/shared.d.ts","./node_modules/next/dist/server/dev/hot-reloader-types.d.ts","./node_modules/next/dist/server/lib/cache-handlers/types.d.ts","./node_modules/next/dist/server/response-cache/types.d.ts","./node_modules/next/dist/server/resume-data-cache/cache-store.d.ts","./node_modules/next/dist/server/resume-data-cache/resume-data-cache.d.ts","./node_modules/next/dist/server/render-result.d.ts","./node_modules/next/dist/server/lib/i18n-provider.d.ts","./node_modules/next/dist/server/web/next-url.d.ts","./node_modules/next/dist/compiled/@edge-runtime/cookies/index.d.ts","./node_modules/next/dist/server/web/spec-extension/cookies.d.ts","./node_modules/next/dist/server/web/spec-extension/request.d.ts","./node_modules/next/dist/server/after/builtin-request-context.d.ts","./node_modules/next/dist/server/web/spec-extension/fetch-event.d.ts","./node_modules/next/dist/server/web/spec-extension/response.d.ts","./node_modules/next/dist/build/segment-config/middleware/middleware-config.d.ts","./node_modules/next/dist/server/web/types.d.ts","./node_modules/next/dist/build/webpack/plugins/pages-manifest-plugin.d.ts","./node_modules/next/dist/shared/lib/router/utils/parse-url.d.ts","./node_modules/next/dist/server/base-http/node.d.ts","./node_modules/next/dist/build/webpack/plugins/next-font-manifest-plugin.d.ts","./node_modules/next/dist/server/route-definitions/locale-route-definition.d.ts","./node_modules/next/dist/server/route-definitions/pages-route-definition.d.ts","./node_modules/next/dist/shared/lib/mitt.d.ts","./node_modules/next/dist/client/with-router.d.ts","./node_modules/next/dist/client/router.d.ts","./node_modules/next/dist/client/route-loader.d.ts","./node_modules/next/dist/client/page-loader.d.ts","./node_modules/next/dist/shared/lib/router/router.d.ts","./node_modules/next/dist/shared/lib/router-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/loadable-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/loadable.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/image-config-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/hooks-client-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/head-manager-context.shared-runtime.d.ts","./node_modules/next/dist/server/route-definitions/app-page-route-definition.d.ts","./node_modules/next/dist/build/webpack/loaders/metadata/types.d.ts","./node_modules/next/dist/build/webpack/loaders/next-app-loader/index.d.ts","./node_modules/next/dist/server/lib/app-dir-module.d.ts","./node_modules/next/dist/server/web/spec-extension/adapters/request-cookies.d.ts","./node_modules/next/dist/server/async-storage/draft-mode-provider.d.ts","./node_modules/next/dist/server/web/spec-extension/adapters/headers.d.ts","./node_modules/next/dist/server/app-render/cache-signal.d.ts","./node_modules/next/dist/server/app-render/dynamic-rendering.d.ts","./node_modules/next/dist/server/request/fallback-params.d.ts","./node_modules/next/dist/server/app-render/work-unit-async-storage-instance.d.ts","./node_modules/next/dist/server/response-cache/index.d.ts","./node_modules/next/dist/server/lib/lazy-result.d.ts","./node_modules/next/dist/server/lib/implicit-tags.d.ts","./node_modules/next/dist/server/app-render/work-unit-async-storage.external.d.ts","./node_modules/next/dist/shared/lib/deep-readonly.d.ts","./node_modules/next/dist/shared/lib/router/utils/parse-relative-url.d.ts","./node_modules/next/dist/server/app-render/app-render.d.ts","./node_modules/next/dist/shared/lib/server-inserted-html.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/amp-context.shared-runtime.d.ts","./node_modules/next/dist/server/route-modules/app-page/vendored/contexts/entrypoints.d.ts","./node_modules/next/dist/server/route-modules/app-page/module.compiled.d.ts","./node_modules/next/dist/client/components/error-boundary.d.ts","./node_modules/next/dist/client/components/layout-router.d.ts","./node_modules/next/dist/client/components/render-from-template-context.d.ts","./node_modules/next/dist/server/app-render/action-async-storage-instance.d.ts","./node_modules/next/dist/server/app-render/action-async-storage.external.d.ts","./node_modules/next/dist/client/components/client-page.d.ts","./node_modules/next/dist/client/components/client-segment.d.ts","./node_modules/next/dist/server/request/search-params.d.ts","./node_modules/next/dist/client/components/hooks-server-context.d.ts","./node_modules/next/dist/client/components/http-access-fallback/error-boundary.d.ts","./node_modules/next/dist/lib/metadata/types/alternative-urls-types.d.ts","./node_modules/next/dist/lib/metadata/types/extra-types.d.ts","./node_modules/next/dist/lib/metadata/types/metadata-types.d.ts","./node_modules/next/dist/lib/metadata/types/manifest-types.d.ts","./node_modules/next/dist/lib/metadata/types/opengraph-types.d.ts","./node_modules/next/dist/lib/metadata/types/twitter-types.d.ts","./node_modules/next/dist/lib/metadata/types/metadata-interface.d.ts","./node_modules/next/dist/lib/metadata/types/resolvers.d.ts","./node_modules/next/dist/lib/metadata/types/icons.d.ts","./node_modules/next/dist/lib/metadata/resolve-metadata.d.ts","./node_modules/next/dist/lib/metadata/metadata.d.ts","./node_modules/next/dist/lib/framework/boundary-components.d.ts","./node_modules/next/dist/server/app-render/rsc/preloads.d.ts","./node_modules/next/dist/server/app-render/rsc/postpone.d.ts","./node_modules/next/dist/server/app-render/rsc/taint.d.ts","./node_modules/next/dist/shared/lib/segment-cache/segment-value-encoding.d.ts","./node_modules/next/dist/server/app-render/collect-segment-data.d.ts","./node_modules/next/dist/next-devtools/userspace/app/segment-explorer-node.d.ts","./node_modules/next/dist/server/app-render/entry-base.d.ts","./node_modules/next/dist/build/templates/app-page.d.ts","./node_modules/@types/react/jsx-dev-runtime.d.ts","./node_modules/@types/react/compiler-runtime.d.ts","./node_modules/next/dist/server/route-modules/app-page/vendored/rsc/entrypoints.d.ts","./node_modules/@types/react-dom/client.d.ts","./node_modules/@types/react-dom/static.d.ts","./node_modules/@types/react-dom/server.d.ts","./node_modules/next/dist/server/route-modules/app-page/vendored/ssr/entrypoints.d.ts","./node_modules/next/dist/server/route-modules/app-page/module.d.ts","./node_modules/next/dist/server/web/adapter.d.ts","./node_modules/next/dist/server/use-cache/cache-life.d.ts","./node_modules/next/dist/server/app-render/types.d.ts","./node_modules/next/dist/client/components/router-reducer/router-reducer-types.d.ts","./node_modules/next/dist/client/flight-data-helpers.d.ts","./node_modules/next/dist/client/components/router-reducer/fetch-server-response.d.ts","./node_modules/next/dist/shared/lib/app-router-context.shared-runtime.d.ts","./node_modules/next/dist/server/route-modules/pages/vendored/contexts/entrypoints.d.ts","./node_modules/next/dist/server/route-modules/pages/module.compiled.d.ts","./node_modules/next/dist/build/templates/pages.d.ts","./node_modules/next/dist/server/route-modules/pages/module.d.ts","./node_modules/next/dist/next-devtools/userspace/pages/pages-dev-overlay-setup.d.ts","./node_modules/next/dist/server/render.d.ts","./node_modules/next/dist/server/route-definitions/pages-api-route-definition.d.ts","./node_modules/next/dist/server/route-matches/pages-api-route-match.d.ts","./node_modules/next/dist/server/route-matchers/route-matcher.d.ts","./node_modules/next/dist/server/route-matcher-providers/route-matcher-provider.d.ts","./node_modules/next/dist/server/route-matcher-managers/route-matcher-manager.d.ts","./node_modules/next/dist/server/normalizers/normalizer.d.ts","./node_modules/next/dist/server/normalizers/locale-route-normalizer.d.ts","./node_modules/next/dist/server/normalizers/request/pathname-normalizer.d.ts","./node_modules/next/dist/server/normalizers/request/suffix.d.ts","./node_modules/next/dist/server/normalizers/request/rsc.d.ts","./node_modules/next/dist/server/normalizers/request/prefetch-rsc.d.ts","./node_modules/next/dist/server/normalizers/request/next-data.d.ts","./node_modules/next/dist/server/normalizers/request/segment-prefix-rsc.d.ts","./node_modules/next/dist/build/static-paths/types.d.ts","./node_modules/next/dist/server/base-server.d.ts","./node_modules/next/dist/server/lib/async-callback-set.d.ts","./node_modules/next/dist/shared/lib/router/utils/route-regex.d.ts","./node_modules/next/dist/shared/lib/router/utils/route-matcher.d.ts","./node_modules/sharp/lib/index.d.ts","./node_modules/next/dist/server/image-optimizer.d.ts","./node_modules/next/dist/server/next-server.d.ts","./node_modules/next/dist/server/lib/types.d.ts","./node_modules/next/dist/server/lib/lru-cache.d.ts","./node_modules/next/dist/server/lib/dev-bundler-service.d.ts","./node_modules/next/dist/server/dev/static-paths-worker.d.ts","./node_modules/next/dist/server/dev/next-dev-server.d.ts","./node_modules/next/dist/server/next.d.ts","./node_modules/next/dist/server/lib/render-server.d.ts","./node_modules/next/dist/server/lib/router-server.d.ts","./node_modules/next/dist/shared/lib/router/utils/path-match.d.ts","./node_modules/next/dist/server/lib/router-utils/filesystem.d.ts","./node_modules/next/dist/server/lib/router-utils/setup-dev-bundler.d.ts","./node_modules/next/dist/server/lib/router-utils/router-server-context.d.ts","./node_modules/next/dist/server/route-modules/route-module.d.ts","./node_modules/next/dist/server/load-components.d.ts","./node_modules/next/dist/server/route-definitions/app-route-route-definition.d.ts","./node_modules/next/dist/server/async-storage/work-store.d.ts","./node_modules/next/dist/server/web/http.d.ts","./node_modules/next/dist/server/route-modules/app-route/shared-modules.d.ts","./node_modules/next/dist/client/components/redirect-status-code.d.ts","./node_modules/next/dist/client/components/redirect-error.d.ts","./node_modules/next/dist/build/templates/app-route.d.ts","./node_modules/next/dist/server/route-modules/app-route/module.d.ts","./node_modules/next/dist/server/route-modules/app-route/module.compiled.d.ts","./node_modules/next/dist/build/segment-config/app/app-segments.d.ts","./node_modules/next/dist/build/utils.d.ts","./node_modules/next/dist/build/turborepo-access-trace/types.d.ts","./node_modules/next/dist/build/turborepo-access-trace/result.d.ts","./node_modules/next/dist/build/turborepo-access-trace/helpers.d.ts","./node_modules/next/dist/build/turborepo-access-trace/index.d.ts","./node_modules/next/dist/export/routes/types.d.ts","./node_modules/next/dist/export/types.d.ts","./node_modules/next/dist/export/worker.d.ts","./node_modules/next/dist/build/worker.d.ts","./node_modules/next/dist/build/index.d.ts","./node_modules/next/dist/server/lib/incremental-cache/index.d.ts","./node_modules/next/dist/server/after/after.d.ts","./node_modules/next/dist/server/after/after-context.d.ts","./node_modules/next/dist/server/app-render/work-async-storage-instance.d.ts","./node_modules/next/dist/server/app-render/work-async-storage.external.d.ts","./node_modules/next/dist/server/request/params.d.ts","./node_modules/next/dist/server/route-matches/route-match.d.ts","./node_modules/next/dist/server/request-meta.d.ts","./node_modules/next/dist/cli/next-test.d.ts","./node_modules/next/dist/server/config-shared.d.ts","./node_modules/next/dist/server/base-http/index.d.ts","./node_modules/next/dist/server/api-utils/index.d.ts","./node_modules/next/dist/types.d.ts","./node_modules/next/dist/shared/lib/html-context.shared-runtime.d.ts","./node_modules/next/dist/shared/lib/utils.d.ts","./node_modules/next/dist/pages/_app.d.ts","./node_modules/next/app.d.ts","./node_modules/next/dist/server/web/spec-extension/unstable-cache.d.ts","./node_modules/next/dist/server/web/spec-extension/revalidate.d.ts","./node_modules/next/dist/server/web/spec-extension/unstable-no-store.d.ts","./node_modules/next/dist/server/use-cache/cache-tag.d.ts","./node_modules/next/cache.d.ts","./node_modules/next/dist/shared/lib/runtime-config.external.d.ts","./node_modules/next/config.d.ts","./node_modules/next/dist/pages/_document.d.ts","./node_modules/next/document.d.ts","./node_modules/next/dist/shared/lib/dynamic.d.ts","./node_modules/next/dynamic.d.ts","./node_modules/next/dist/pages/_error.d.ts","./node_modules/next/error.d.ts","./node_modules/next/dist/shared/lib/head.d.ts","./node_modules/next/head.d.ts","./node_modules/next/dist/server/request/cookies.d.ts","./node_modules/next/dist/server/request/headers.d.ts","./node_modules/next/dist/server/request/draft-mode.d.ts","./node_modules/next/headers.d.ts","./node_modules/next/dist/shared/lib/get-img-props.d.ts","./node_modules/next/dist/client/image-component.d.ts","./node_modules/next/dist/shared/lib/image-external.d.ts","./node_modules/next/image.d.ts","./node_modules/next/dist/client/link.d.ts","./node_modules/next/link.d.ts","./node_modules/next/dist/client/components/redirect.d.ts","./node_modules/next/dist/client/components/not-found.d.ts","./node_modules/next/dist/client/components/forbidden.d.ts","./node_modules/next/dist/client/components/unauthorized.d.ts","./node_modules/next/dist/client/components/unstable-rethrow.server.d.ts","./node_modules/next/dist/client/components/unstable-rethrow.d.ts","./node_modules/next/dist/client/components/navigation.react-server.d.ts","./node_modules/next/dist/client/components/unrecognized-action-error.d.ts","./node_modules/next/dist/client/components/navigation.d.ts","./node_modules/next/navigation.d.ts","./node_modules/next/router.d.ts","./node_modules/next/dist/client/script.d.ts","./node_modules/next/script.d.ts","./node_modules/next/dist/server/web/spec-extension/user-agent.d.ts","./node_modules/next/dist/compiled/@edge-runtime/primitives/url.d.ts","./node_modules/next/dist/server/web/spec-extension/image-response.d.ts","./node_modules/next/dist/compiled/@vercel/og/satori/index.d.ts","./node_modules/next/dist/compiled/@vercel/og/emoji/index.d.ts","./node_modules/next/dist/compiled/@vercel/og/types.d.ts","./node_modules/next/dist/server/after/index.d.ts","./node_modules/next/dist/server/request/root-params.d.ts","./node_modules/next/dist/server/request/connection.d.ts","./node_modules/next/server.d.ts","./node_modules/next/types/global.d.ts","./node_modules/next/types/compiled.d.ts","./node_modules/next/types.d.ts","./node_modules/next/index.d.ts","./node_modules/next/image-types/global.d.ts","./next-env.d.ts","./node_modules/next-intl/dist/types/plugin/types.d.ts","./node_modules/next-intl/dist/types/plugin/createnextintlplugin.d.ts","./node_modules/next-intl/dist/types/plugin/index.d.ts","./node_modules/next-intl/dist/types/plugin.d.ts","./next.config.ts","./node_modules/next-intl/dist/types/routing/types.d.ts","./node_modules/next-intl/dist/types/routing/config.d.ts","./node_modules/next-intl/dist/types/middleware/middleware.d.ts","./node_modules/next-intl/dist/types/middleware/index.d.ts","./node_modules/next-intl/dist/types/middleware.d.ts","./src/i18n/config.ts","./src/lib/api/auth/auth-config.ts","./src/middleware.ts","./src/app/api/auth/check/route.ts","./src/app/api/auth/login/route.ts","./src/app/api/auth/logout/route.ts","./src/app/api/auth/refresh/route.ts","./src/app/api/auth/signup/route.ts","./src/app/api/proxy/[...path]/route.ts","./src/lib/api/php-proxy.ts","./src/app/api/tenants/[tenantid]/item-master-config/route.ts","./src/app/api/tenants/[tenantid]/item-master-config/pages/[pageid]/route.ts","./src/components/items/itemmasterdatamanagement/types.ts","./src/contexts/authcontext.tsx","./src/lib/cache/tenantawarecache.ts","./src/lib/cache/index.ts","./src/types/item-master-api.ts","./src/lib/api/auth-headers.ts","./src/lib/api/error-handler.ts","./src/lib/api/logger.ts","./src/lib/api/item-master.ts","./src/lib/api/transformers.ts","./src/contexts/itemmastercontext.tsx","./node_modules/@radix-ui/react-slot/dist/index.d.mts","./node_modules/clsx/clsx.d.mts","./node_modules/class-variance-authority/dist/types.d.ts","./node_modules/class-variance-authority/dist/index.d.ts","./node_modules/tailwind-merge/dist/types.d.ts","./src/lib/utils.ts","./src/components/ui/button.tsx","./src/components/ui/input.tsx","./node_modules/lucide-react/dist/lucide-react.d.ts","./src/components/items/itemmasterdatamanagement/components/draggablesection.tsx","./src/components/ui/utils.ts","./src/components/ui/badge.tsx","./src/components/items/itemmasterdatamanagement/components/draggablefield.tsx","./src/components/items/itemmasterdatamanagement/components/index.ts","./node_modules/sonner/dist/index.d.mts","./src/components/items/itemmasterdatamanagement/utils/pathutils.ts","./src/components/items/itemmasterdatamanagement/hooks/usepagemanagement.ts","./src/components/items/itemmasterdatamanagement/hooks/usesectionmanagement.ts","./node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-label/dist/index.d.mts","./src/components/ui/label.tsx","./node_modules/@radix-ui/react-context/dist/index.d.mts","./node_modules/@radix-ui/react-switch/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-switch/dist/index.d.mts","./src/components/ui/switch.tsx","./src/components/items/itemmasterdatamanagement/components/conditionaldisplayui.tsx","./src/components/items/itemmasterdatamanagement/hooks/usefieldmanagement.ts","./src/components/items/itemmasterdatamanagement/hooks/usemasterfieldmanagement.ts","./src/components/items/itemmasterdatamanagement/hooks/usetemplatemanagement.ts","./src/components/items/itemmasterdatamanagement/hooks/useattributemanagement.ts","./src/components/items/itemmasterdatamanagement/hooks/usetabmanagement.ts","./src/components/items/itemmasterdatamanagement/hooks/index.ts","./src/components/ui/card.tsx","./src/components/items/itemmasterdatamanagement/tabs/categorytab/index.tsx","./src/components/items/itemmasterdatamanagement/tabs/masterfieldtab/index.tsx","./node_modules/@radix-ui/react-dismissable-layer/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-dismissable-layer/dist/index.d.mts","./node_modules/@radix-ui/react-focus-scope/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-focus-scope/dist/index.d.mts","./node_modules/@radix-ui/react-arrow/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-arrow/dist/index.d.mts","./node_modules/@radix-ui/react-popper/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/rect/dist/index.d.mts","./node_modules/@radix-ui/react-popper/dist/index.d.mts","./node_modules/@radix-ui/react-portal/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-portal/dist/index.d.mts","./node_modules/@radix-ui/react-select/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-select/dist/index.d.mts","./src/components/ui/select.tsx","./node_modules/@radix-ui/react-dialog/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-dialog/dist/index.d.mts","./node_modules/@radix-ui/react-visually-hidden/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-visually-hidden/dist/index.d.mts","./src/components/ui/visually-hidden.tsx","./src/components/ui/dialog.tsx","./src/components/items/bommanagementsection.tsx","./src/components/items/itemmasterdatamanagement/tabs/hierarchytab/index.tsx","./node_modules/@radix-ui/react-tabs/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-roving-focus/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-roving-focus/dist/index.d.mts","./node_modules/@radix-ui/react-tabs/dist/index.d.mts","./src/components/ui/tabs.tsx","./src/components/items/itemmasterdatamanagement/tabs/sectionstab.tsx","./src/components/items/itemmasterdatamanagement/tabs/index.ts","./src/hooks/useauthguard.ts","./src/hooks/usecurrenttime.ts","./src/hooks/useuserrole.ts","./node_modules/use-intl/dist/types/core/abstractintlmessages.d.ts","./node_modules/use-intl/dist/types/core/translationvalues.d.ts","./node_modules/use-intl/dist/types/core/timezone.d.ts","./node_modules/use-intl/dist/types/core/datetimeformatoptions.d.ts","./node_modules/@formatjs/ecma402-abstract/canonicalizelocalelist.d.ts","./node_modules/@formatjs/ecma402-abstract/canonicalizetimezonename.d.ts","./node_modules/@formatjs/ecma402-abstract/coerceoptionstoobject.d.ts","./node_modules/@formatjs/ecma402-abstract/getnumberoption.d.ts","./node_modules/@formatjs/ecma402-abstract/getoption.d.ts","./node_modules/@formatjs/ecma402-abstract/getoptionsobject.d.ts","./node_modules/@formatjs/ecma402-abstract/getstringorbooleanoption.d.ts","./node_modules/@formatjs/ecma402-abstract/issanctionedsimpleunitidentifier.d.ts","./node_modules/@formatjs/ecma402-abstract/isvalidtimezonename.d.ts","./node_modules/@formatjs/ecma402-abstract/iswellformedcurrencycode.d.ts","./node_modules/@formatjs/ecma402-abstract/iswellformedunitidentifier.d.ts","./node_modules/decimal.js/decimal.d.ts","./node_modules/@formatjs/ecma402-abstract/types/core.d.ts","./node_modules/@formatjs/ecma402-abstract/types/plural-rules.d.ts","./node_modules/@formatjs/ecma402-abstract/types/number.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/applyunsignedroundingmode.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/collapsenumberrange.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/computeexponent.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/computeexponentformagnitude.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/currencydigits.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/format_to_parts.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/formatapproximately.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/formatnumeric.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/formatnumericrange.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/formatnumericrangetoparts.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/formatnumerictoparts.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/formatnumerictostring.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/getunsignedroundingmode.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/initializenumberformat.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/partitionnumberpattern.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/partitionnumberrangepattern.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/setnumberformatdigitoptions.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/setnumberformatunitoptions.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/torawfixed.d.ts","./node_modules/@formatjs/ecma402-abstract/numberformat/torawprecision.d.ts","./node_modules/@formatjs/ecma402-abstract/partitionpattern.d.ts","./node_modules/@formatjs/ecma402-abstract/supportedlocales.d.ts","./node_modules/@formatjs/ecma402-abstract/utils.d.ts","./node_modules/@formatjs/ecma402-abstract/262.d.ts","./node_modules/@formatjs/ecma402-abstract/data.d.ts","./node_modules/@formatjs/ecma402-abstract/types/date-time.d.ts","./node_modules/@formatjs/ecma402-abstract/types/displaynames.d.ts","./node_modules/@formatjs/ecma402-abstract/types/list.d.ts","./node_modules/@formatjs/ecma402-abstract/types/relative-time.d.ts","./node_modules/@formatjs/ecma402-abstract/constants.d.ts","./node_modules/@formatjs/ecma402-abstract/tointlmathematicalvalue.d.ts","./node_modules/@formatjs/ecma402-abstract/index.d.ts","./node_modules/@formatjs/icu-skeleton-parser/date-time.d.ts","./node_modules/@formatjs/icu-skeleton-parser/number.d.ts","./node_modules/@formatjs/icu-skeleton-parser/index.d.ts","./node_modules/@formatjs/icu-messageformat-parser/types.d.ts","./node_modules/@formatjs/icu-messageformat-parser/error.d.ts","./node_modules/@formatjs/icu-messageformat-parser/parser.d.ts","./node_modules/@formatjs/icu-messageformat-parser/manipulator.d.ts","./node_modules/@formatjs/icu-messageformat-parser/index.d.ts","./node_modules/intl-messageformat/src/formatters.d.ts","./node_modules/intl-messageformat/src/core.d.ts","./node_modules/intl-messageformat/src/error.d.ts","./node_modules/intl-messageformat/index.d.ts","./node_modules/use-intl/dist/types/core/numberformatoptions.d.ts","./node_modules/use-intl/dist/types/core/formats.d.ts","./node_modules/use-intl/dist/types/core/appconfig.d.ts","./node_modules/use-intl/dist/types/core/intlerrorcode.d.ts","./node_modules/use-intl/dist/types/core/intlerror.d.ts","./node_modules/use-intl/dist/types/core/types.d.ts","./node_modules/use-intl/dist/types/core/intlconfig.d.ts","./node_modules/@schummar/icu-type-parser/dist/index.d.ts","./node_modules/use-intl/dist/types/core/icuargs.d.ts","./node_modules/use-intl/dist/types/core/icutags.d.ts","./node_modules/use-intl/dist/types/core/messagekeys.d.ts","./node_modules/use-intl/dist/types/core/formatters.d.ts","./node_modules/use-intl/dist/types/core/createtranslator.d.ts","./node_modules/use-intl/dist/types/core/relativetimeformatoptions.d.ts","./node_modules/use-intl/dist/types/core/createformatter.d.ts","./node_modules/use-intl/dist/types/core/initializeconfig.d.ts","./node_modules/use-intl/dist/types/core/haslocale.d.ts","./node_modules/use-intl/dist/types/core/index.d.ts","./node_modules/use-intl/dist/types/core.d.ts","./node_modules/next-intl/dist/types/server/react-server/getrequestconfig.d.ts","./node_modules/next-intl/dist/types/server/react-server/getformatter.d.ts","./node_modules/use-intl/dist/types/react/intlprovider.d.ts","./node_modules/use-intl/dist/types/react/usetranslations.d.ts","./node_modules/use-intl/dist/types/react/uselocale.d.ts","./node_modules/use-intl/dist/types/react/usenow.d.ts","./node_modules/use-intl/dist/types/react/usetimezone.d.ts","./node_modules/use-intl/dist/types/react/usemessages.d.ts","./node_modules/use-intl/dist/types/react/useformatter.d.ts","./node_modules/use-intl/dist/types/react/index.d.ts","./node_modules/use-intl/dist/types/react.d.ts","./node_modules/use-intl/dist/types/index.d.ts","./node_modules/next-intl/dist/types/server/react-server/getnow.d.ts","./node_modules/next-intl/dist/types/server/react-server/gettimezone.d.ts","./node_modules/next-intl/dist/types/server/react-server/gettranslations.d.ts","./node_modules/next-intl/dist/types/server/react-server/getconfig.d.ts","./node_modules/next-intl/dist/types/server/react-server/getmessages.d.ts","./node_modules/next-intl/dist/types/server/react-server/getlocale.d.ts","./node_modules/next-intl/dist/types/server/react-server/requestlocalecache.d.ts","./node_modules/next-intl/dist/types/server/react-server/index.d.ts","./node_modules/next-intl/dist/types/server.react-server.d.ts","./src/i18n/request.ts","./src/lib/api/auth/types.ts","./src/lib/api/client.ts","./src/types/item.ts","./src/lib/api/items.ts","./src/types/master-data.ts","./src/lib/api/master-data.ts","./src/lib/auth/token-refresh.ts","./node_modules/zustand/esm/vanilla.d.mts","./node_modules/zustand/esm/react.d.mts","./node_modules/zustand/esm/index.d.mts","./node_modules/zustand/esm/middleware/redux.d.mts","./node_modules/zustand/esm/middleware/devtools.d.mts","./node_modules/zustand/esm/middleware/subscribewithselector.d.mts","./node_modules/zustand/esm/middleware/combine.d.mts","./node_modules/zustand/esm/middleware/persist.d.mts","./node_modules/zustand/esm/middleware.d.mts","./src/store/menustore.ts","./src/lib/utils/menutransform.ts","./node_modules/zod/v4/core/standard-schema.d.cts","./node_modules/zod/v4/core/util.d.cts","./node_modules/zod/v4/core/versions.d.cts","./node_modules/zod/v4/core/schemas.d.cts","./node_modules/zod/v4/core/checks.d.cts","./node_modules/zod/v4/core/errors.d.cts","./node_modules/zod/v4/core/core.d.cts","./node_modules/zod/v4/core/parse.d.cts","./node_modules/zod/v4/core/regexes.d.cts","./node_modules/zod/v4/locales/ar.d.cts","./node_modules/zod/v4/locales/az.d.cts","./node_modules/zod/v4/locales/be.d.cts","./node_modules/zod/v4/locales/bg.d.cts","./node_modules/zod/v4/locales/ca.d.cts","./node_modules/zod/v4/locales/cs.d.cts","./node_modules/zod/v4/locales/da.d.cts","./node_modules/zod/v4/locales/de.d.cts","./node_modules/zod/v4/locales/en.d.cts","./node_modules/zod/v4/locales/eo.d.cts","./node_modules/zod/v4/locales/es.d.cts","./node_modules/zod/v4/locales/fa.d.cts","./node_modules/zod/v4/locales/fi.d.cts","./node_modules/zod/v4/locales/fr.d.cts","./node_modules/zod/v4/locales/fr-ca.d.cts","./node_modules/zod/v4/locales/he.d.cts","./node_modules/zod/v4/locales/hu.d.cts","./node_modules/zod/v4/locales/id.d.cts","./node_modules/zod/v4/locales/is.d.cts","./node_modules/zod/v4/locales/it.d.cts","./node_modules/zod/v4/locales/ja.d.cts","./node_modules/zod/v4/locales/ka.d.cts","./node_modules/zod/v4/locales/kh.d.cts","./node_modules/zod/v4/locales/km.d.cts","./node_modules/zod/v4/locales/ko.d.cts","./node_modules/zod/v4/locales/lt.d.cts","./node_modules/zod/v4/locales/mk.d.cts","./node_modules/zod/v4/locales/ms.d.cts","./node_modules/zod/v4/locales/nl.d.cts","./node_modules/zod/v4/locales/no.d.cts","./node_modules/zod/v4/locales/ota.d.cts","./node_modules/zod/v4/locales/ps.d.cts","./node_modules/zod/v4/locales/pl.d.cts","./node_modules/zod/v4/locales/pt.d.cts","./node_modules/zod/v4/locales/ru.d.cts","./node_modules/zod/v4/locales/sl.d.cts","./node_modules/zod/v4/locales/sv.d.cts","./node_modules/zod/v4/locales/ta.d.cts","./node_modules/zod/v4/locales/th.d.cts","./node_modules/zod/v4/locales/tr.d.cts","./node_modules/zod/v4/locales/ua.d.cts","./node_modules/zod/v4/locales/uk.d.cts","./node_modules/zod/v4/locales/ur.d.cts","./node_modules/zod/v4/locales/vi.d.cts","./node_modules/zod/v4/locales/zh-cn.d.cts","./node_modules/zod/v4/locales/zh-tw.d.cts","./node_modules/zod/v4/locales/yo.d.cts","./node_modules/zod/v4/locales/index.d.cts","./node_modules/zod/v4/core/registries.d.cts","./node_modules/zod/v4/core/doc.d.cts","./node_modules/zod/v4/core/api.d.cts","./node_modules/zod/v4/core/json-schema.d.cts","./node_modules/zod/v4/core/to-json-schema.d.cts","./node_modules/zod/v4/core/index.d.cts","./node_modules/zod/v4/classic/errors.d.cts","./node_modules/zod/v4/classic/parse.d.cts","./node_modules/zod/v4/classic/schemas.d.cts","./node_modules/zod/v4/classic/checks.d.cts","./node_modules/zod/v4/classic/compat.d.cts","./node_modules/zod/v4/classic/iso.d.cts","./node_modules/zod/v4/classic/coerce.d.cts","./node_modules/zod/v4/classic/external.d.cts","./node_modules/zod/index.d.cts","./src/lib/utils/validation.ts","./src/lib/validations/auth.ts","./src/store/demostore.ts","./src/store/themestore.ts","./src/stores/itemstore.ts","./node_modules/zustand/esm/vanilla/shallow.d.mts","./node_modules/zustand/esm/react/shallow.d.mts","./node_modules/zustand/esm/shallow.d.mts","./src/stores/masterdatastore.ts","./src/app/[locale]/error.tsx","./node_modules/next-intl/dist/types/shared/nextintlclientprovider.d.ts","./node_modules/next-intl/dist/types/react-client/index.d.ts","./node_modules/next-intl/dist/types/index.react-client.d.ts","./src/contexts/themecontext.tsx","./src/app/[locale]/layout.tsx","./src/app/[locale]/not-found.tsx","./src/app/[locale]/page.tsx","./src/app/[locale]/(protected)/error.tsx","./src/components/ui/sheet.tsx","./node_modules/@radix-ui/react-dropdown-menu/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-menu/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-menu/dist/index.d.mts","./node_modules/@radix-ui/react-dropdown-menu/dist/index.d.mts","./src/components/ui/dropdown-menu.tsx","./src/components/layout/sidebar.tsx","./src/layouts/dashboardlayout.tsx","./src/contexts/rootprovider.tsx","./src/app/[locale]/(protected)/layout.tsx","./src/app/[locale]/(protected)/loading.tsx","./src/app/[locale]/(protected)/not-found.tsx","./src/components/common/emptypage.tsx","./src/app/[locale]/(protected)/[...slug]/page.tsx","./src/components/ui/chart-wrapper.tsx","./node_modules/@date-fns/tz/constants/index.d.ts","./node_modules/@date-fns/tz/date/index.d.ts","./node_modules/@date-fns/tz/date/mini.d.ts","./node_modules/@date-fns/tz/tz/index.d.ts","./node_modules/@date-fns/tz/tzoffset/index.d.ts","./node_modules/@date-fns/tz/tzscan/index.d.ts","./node_modules/@date-fns/tz/tzname/index.d.ts","./node_modules/@date-fns/tz/index.d.ts","./node_modules/date-fns/constants.d.ts","./node_modules/date-fns/locale/types.d.ts","./node_modules/date-fns/fp/types.d.ts","./node_modules/date-fns/types.d.ts","./node_modules/date-fns/add.d.ts","./node_modules/date-fns/addbusinessdays.d.ts","./node_modules/date-fns/adddays.d.ts","./node_modules/date-fns/addhours.d.ts","./node_modules/date-fns/addisoweekyears.d.ts","./node_modules/date-fns/addmilliseconds.d.ts","./node_modules/date-fns/addminutes.d.ts","./node_modules/date-fns/addmonths.d.ts","./node_modules/date-fns/addquarters.d.ts","./node_modules/date-fns/addseconds.d.ts","./node_modules/date-fns/addweeks.d.ts","./node_modules/date-fns/addyears.d.ts","./node_modules/date-fns/areintervalsoverlapping.d.ts","./node_modules/date-fns/clamp.d.ts","./node_modules/date-fns/closestindexto.d.ts","./node_modules/date-fns/closestto.d.ts","./node_modules/date-fns/compareasc.d.ts","./node_modules/date-fns/comparedesc.d.ts","./node_modules/date-fns/constructfrom.d.ts","./node_modules/date-fns/constructnow.d.ts","./node_modules/date-fns/daystoweeks.d.ts","./node_modules/date-fns/differenceinbusinessdays.d.ts","./node_modules/date-fns/differenceincalendardays.d.ts","./node_modules/date-fns/differenceincalendarisoweekyears.d.ts","./node_modules/date-fns/differenceincalendarisoweeks.d.ts","./node_modules/date-fns/differenceincalendarmonths.d.ts","./node_modules/date-fns/differenceincalendarquarters.d.ts","./node_modules/date-fns/differenceincalendarweeks.d.ts","./node_modules/date-fns/differenceincalendaryears.d.ts","./node_modules/date-fns/differenceindays.d.ts","./node_modules/date-fns/differenceinhours.d.ts","./node_modules/date-fns/differenceinisoweekyears.d.ts","./node_modules/date-fns/differenceinmilliseconds.d.ts","./node_modules/date-fns/differenceinminutes.d.ts","./node_modules/date-fns/differenceinmonths.d.ts","./node_modules/date-fns/differenceinquarters.d.ts","./node_modules/date-fns/differenceinseconds.d.ts","./node_modules/date-fns/differenceinweeks.d.ts","./node_modules/date-fns/differenceinyears.d.ts","./node_modules/date-fns/eachdayofinterval.d.ts","./node_modules/date-fns/eachhourofinterval.d.ts","./node_modules/date-fns/eachminuteofinterval.d.ts","./node_modules/date-fns/eachmonthofinterval.d.ts","./node_modules/date-fns/eachquarterofinterval.d.ts","./node_modules/date-fns/eachweekofinterval.d.ts","./node_modules/date-fns/eachweekendofinterval.d.ts","./node_modules/date-fns/eachweekendofmonth.d.ts","./node_modules/date-fns/eachweekendofyear.d.ts","./node_modules/date-fns/eachyearofinterval.d.ts","./node_modules/date-fns/endofday.d.ts","./node_modules/date-fns/endofdecade.d.ts","./node_modules/date-fns/endofhour.d.ts","./node_modules/date-fns/endofisoweek.d.ts","./node_modules/date-fns/endofisoweekyear.d.ts","./node_modules/date-fns/endofminute.d.ts","./node_modules/date-fns/endofmonth.d.ts","./node_modules/date-fns/endofquarter.d.ts","./node_modules/date-fns/endofsecond.d.ts","./node_modules/date-fns/endoftoday.d.ts","./node_modules/date-fns/endoftomorrow.d.ts","./node_modules/date-fns/endofweek.d.ts","./node_modules/date-fns/endofyear.d.ts","./node_modules/date-fns/endofyesterday.d.ts","./node_modules/date-fns/_lib/format/formatters.d.ts","./node_modules/date-fns/_lib/format/longformatters.d.ts","./node_modules/date-fns/format.d.ts","./node_modules/date-fns/formatdistance.d.ts","./node_modules/date-fns/formatdistancestrict.d.ts","./node_modules/date-fns/formatdistancetonow.d.ts","./node_modules/date-fns/formatdistancetonowstrict.d.ts","./node_modules/date-fns/formatduration.d.ts","./node_modules/date-fns/formatiso.d.ts","./node_modules/date-fns/formatiso9075.d.ts","./node_modules/date-fns/formatisoduration.d.ts","./node_modules/date-fns/formatrfc3339.d.ts","./node_modules/date-fns/formatrfc7231.d.ts","./node_modules/date-fns/formatrelative.d.ts","./node_modules/date-fns/fromunixtime.d.ts","./node_modules/date-fns/getdate.d.ts","./node_modules/date-fns/getday.d.ts","./node_modules/date-fns/getdayofyear.d.ts","./node_modules/date-fns/getdaysinmonth.d.ts","./node_modules/date-fns/getdaysinyear.d.ts","./node_modules/date-fns/getdecade.d.ts","./node_modules/date-fns/_lib/defaultoptions.d.ts","./node_modules/date-fns/getdefaultoptions.d.ts","./node_modules/date-fns/gethours.d.ts","./node_modules/date-fns/getisoday.d.ts","./node_modules/date-fns/getisoweek.d.ts","./node_modules/date-fns/getisoweekyear.d.ts","./node_modules/date-fns/getisoweeksinyear.d.ts","./node_modules/date-fns/getmilliseconds.d.ts","./node_modules/date-fns/getminutes.d.ts","./node_modules/date-fns/getmonth.d.ts","./node_modules/date-fns/getoverlappingdaysinintervals.d.ts","./node_modules/date-fns/getquarter.d.ts","./node_modules/date-fns/getseconds.d.ts","./node_modules/date-fns/gettime.d.ts","./node_modules/date-fns/getunixtime.d.ts","./node_modules/date-fns/getweek.d.ts","./node_modules/date-fns/getweekofmonth.d.ts","./node_modules/date-fns/getweekyear.d.ts","./node_modules/date-fns/getweeksinmonth.d.ts","./node_modules/date-fns/getyear.d.ts","./node_modules/date-fns/hourstomilliseconds.d.ts","./node_modules/date-fns/hourstominutes.d.ts","./node_modules/date-fns/hourstoseconds.d.ts","./node_modules/date-fns/interval.d.ts","./node_modules/date-fns/intervaltoduration.d.ts","./node_modules/date-fns/intlformat.d.ts","./node_modules/date-fns/intlformatdistance.d.ts","./node_modules/date-fns/isafter.d.ts","./node_modules/date-fns/isbefore.d.ts","./node_modules/date-fns/isdate.d.ts","./node_modules/date-fns/isequal.d.ts","./node_modules/date-fns/isexists.d.ts","./node_modules/date-fns/isfirstdayofmonth.d.ts","./node_modules/date-fns/isfriday.d.ts","./node_modules/date-fns/isfuture.d.ts","./node_modules/date-fns/islastdayofmonth.d.ts","./node_modules/date-fns/isleapyear.d.ts","./node_modules/date-fns/ismatch.d.ts","./node_modules/date-fns/ismonday.d.ts","./node_modules/date-fns/ispast.d.ts","./node_modules/date-fns/issameday.d.ts","./node_modules/date-fns/issamehour.d.ts","./node_modules/date-fns/issameisoweek.d.ts","./node_modules/date-fns/issameisoweekyear.d.ts","./node_modules/date-fns/issameminute.d.ts","./node_modules/date-fns/issamemonth.d.ts","./node_modules/date-fns/issamequarter.d.ts","./node_modules/date-fns/issamesecond.d.ts","./node_modules/date-fns/issameweek.d.ts","./node_modules/date-fns/issameyear.d.ts","./node_modules/date-fns/issaturday.d.ts","./node_modules/date-fns/issunday.d.ts","./node_modules/date-fns/isthishour.d.ts","./node_modules/date-fns/isthisisoweek.d.ts","./node_modules/date-fns/isthisminute.d.ts","./node_modules/date-fns/isthismonth.d.ts","./node_modules/date-fns/isthisquarter.d.ts","./node_modules/date-fns/isthissecond.d.ts","./node_modules/date-fns/isthisweek.d.ts","./node_modules/date-fns/isthisyear.d.ts","./node_modules/date-fns/isthursday.d.ts","./node_modules/date-fns/istoday.d.ts","./node_modules/date-fns/istomorrow.d.ts","./node_modules/date-fns/istuesday.d.ts","./node_modules/date-fns/isvalid.d.ts","./node_modules/date-fns/iswednesday.d.ts","./node_modules/date-fns/isweekend.d.ts","./node_modules/date-fns/iswithininterval.d.ts","./node_modules/date-fns/isyesterday.d.ts","./node_modules/date-fns/lastdayofdecade.d.ts","./node_modules/date-fns/lastdayofisoweek.d.ts","./node_modules/date-fns/lastdayofisoweekyear.d.ts","./node_modules/date-fns/lastdayofmonth.d.ts","./node_modules/date-fns/lastdayofquarter.d.ts","./node_modules/date-fns/lastdayofweek.d.ts","./node_modules/date-fns/lastdayofyear.d.ts","./node_modules/date-fns/_lib/format/lightformatters.d.ts","./node_modules/date-fns/lightformat.d.ts","./node_modules/date-fns/max.d.ts","./node_modules/date-fns/milliseconds.d.ts","./node_modules/date-fns/millisecondstohours.d.ts","./node_modules/date-fns/millisecondstominutes.d.ts","./node_modules/date-fns/millisecondstoseconds.d.ts","./node_modules/date-fns/min.d.ts","./node_modules/date-fns/minutestohours.d.ts","./node_modules/date-fns/minutestomilliseconds.d.ts","./node_modules/date-fns/minutestoseconds.d.ts","./node_modules/date-fns/monthstoquarters.d.ts","./node_modules/date-fns/monthstoyears.d.ts","./node_modules/date-fns/nextday.d.ts","./node_modules/date-fns/nextfriday.d.ts","./node_modules/date-fns/nextmonday.d.ts","./node_modules/date-fns/nextsaturday.d.ts","./node_modules/date-fns/nextsunday.d.ts","./node_modules/date-fns/nextthursday.d.ts","./node_modules/date-fns/nexttuesday.d.ts","./node_modules/date-fns/nextwednesday.d.ts","./node_modules/date-fns/parse/_lib/types.d.ts","./node_modules/date-fns/parse/_lib/setter.d.ts","./node_modules/date-fns/parse/_lib/parser.d.ts","./node_modules/date-fns/parse/_lib/parsers.d.ts","./node_modules/date-fns/parse.d.ts","./node_modules/date-fns/parseiso.d.ts","./node_modules/date-fns/parsejson.d.ts","./node_modules/date-fns/previousday.d.ts","./node_modules/date-fns/previousfriday.d.ts","./node_modules/date-fns/previousmonday.d.ts","./node_modules/date-fns/previoussaturday.d.ts","./node_modules/date-fns/previoussunday.d.ts","./node_modules/date-fns/previousthursday.d.ts","./node_modules/date-fns/previoustuesday.d.ts","./node_modules/date-fns/previouswednesday.d.ts","./node_modules/date-fns/quarterstomonths.d.ts","./node_modules/date-fns/quarterstoyears.d.ts","./node_modules/date-fns/roundtonearesthours.d.ts","./node_modules/date-fns/roundtonearestminutes.d.ts","./node_modules/date-fns/secondstohours.d.ts","./node_modules/date-fns/secondstomilliseconds.d.ts","./node_modules/date-fns/secondstominutes.d.ts","./node_modules/date-fns/set.d.ts","./node_modules/date-fns/setdate.d.ts","./node_modules/date-fns/setday.d.ts","./node_modules/date-fns/setdayofyear.d.ts","./node_modules/date-fns/setdefaultoptions.d.ts","./node_modules/date-fns/sethours.d.ts","./node_modules/date-fns/setisoday.d.ts","./node_modules/date-fns/setisoweek.d.ts","./node_modules/date-fns/setisoweekyear.d.ts","./node_modules/date-fns/setmilliseconds.d.ts","./node_modules/date-fns/setminutes.d.ts","./node_modules/date-fns/setmonth.d.ts","./node_modules/date-fns/setquarter.d.ts","./node_modules/date-fns/setseconds.d.ts","./node_modules/date-fns/setweek.d.ts","./node_modules/date-fns/setweekyear.d.ts","./node_modules/date-fns/setyear.d.ts","./node_modules/date-fns/startofday.d.ts","./node_modules/date-fns/startofdecade.d.ts","./node_modules/date-fns/startofhour.d.ts","./node_modules/date-fns/startofisoweek.d.ts","./node_modules/date-fns/startofisoweekyear.d.ts","./node_modules/date-fns/startofminute.d.ts","./node_modules/date-fns/startofmonth.d.ts","./node_modules/date-fns/startofquarter.d.ts","./node_modules/date-fns/startofsecond.d.ts","./node_modules/date-fns/startoftoday.d.ts","./node_modules/date-fns/startoftomorrow.d.ts","./node_modules/date-fns/startofweek.d.ts","./node_modules/date-fns/startofweekyear.d.ts","./node_modules/date-fns/startofyear.d.ts","./node_modules/date-fns/startofyesterday.d.ts","./node_modules/date-fns/sub.d.ts","./node_modules/date-fns/subbusinessdays.d.ts","./node_modules/date-fns/subdays.d.ts","./node_modules/date-fns/subhours.d.ts","./node_modules/date-fns/subisoweekyears.d.ts","./node_modules/date-fns/submilliseconds.d.ts","./node_modules/date-fns/subminutes.d.ts","./node_modules/date-fns/submonths.d.ts","./node_modules/date-fns/subquarters.d.ts","./node_modules/date-fns/subseconds.d.ts","./node_modules/date-fns/subweeks.d.ts","./node_modules/date-fns/subyears.d.ts","./node_modules/date-fns/todate.d.ts","./node_modules/date-fns/transpose.d.ts","./node_modules/date-fns/weekstodays.d.ts","./node_modules/date-fns/yearstodays.d.ts","./node_modules/date-fns/yearstomonths.d.ts","./node_modules/date-fns/yearstoquarters.d.ts","./node_modules/date-fns/index.d.ts","./node_modules/date-fns/locale/af.d.ts","./node_modules/date-fns/locale/ar.d.ts","./node_modules/date-fns/locale/ar-dz.d.ts","./node_modules/date-fns/locale/ar-eg.d.ts","./node_modules/date-fns/locale/ar-ma.d.ts","./node_modules/date-fns/locale/ar-sa.d.ts","./node_modules/date-fns/locale/ar-tn.d.ts","./node_modules/date-fns/locale/az.d.ts","./node_modules/date-fns/locale/be.d.ts","./node_modules/date-fns/locale/be-tarask.d.ts","./node_modules/date-fns/locale/bg.d.ts","./node_modules/date-fns/locale/bn.d.ts","./node_modules/date-fns/locale/bs.d.ts","./node_modules/date-fns/locale/ca.d.ts","./node_modules/date-fns/locale/ckb.d.ts","./node_modules/date-fns/locale/cs.d.ts","./node_modules/date-fns/locale/cy.d.ts","./node_modules/date-fns/locale/da.d.ts","./node_modules/date-fns/locale/de.d.ts","./node_modules/date-fns/locale/de-at.d.ts","./node_modules/date-fns/locale/el.d.ts","./node_modules/date-fns/locale/en-au.d.ts","./node_modules/date-fns/locale/en-ca.d.ts","./node_modules/date-fns/locale/en-gb.d.ts","./node_modules/date-fns/locale/en-ie.d.ts","./node_modules/date-fns/locale/en-in.d.ts","./node_modules/date-fns/locale/en-nz.d.ts","./node_modules/date-fns/locale/en-us.d.ts","./node_modules/date-fns/locale/en-za.d.ts","./node_modules/date-fns/locale/eo.d.ts","./node_modules/date-fns/locale/es.d.ts","./node_modules/date-fns/locale/et.d.ts","./node_modules/date-fns/locale/eu.d.ts","./node_modules/date-fns/locale/fa-ir.d.ts","./node_modules/date-fns/locale/fi.d.ts","./node_modules/date-fns/locale/fr.d.ts","./node_modules/date-fns/locale/fr-ca.d.ts","./node_modules/date-fns/locale/fr-ch.d.ts","./node_modules/date-fns/locale/fy.d.ts","./node_modules/date-fns/locale/gd.d.ts","./node_modules/date-fns/locale/gl.d.ts","./node_modules/date-fns/locale/gu.d.ts","./node_modules/date-fns/locale/he.d.ts","./node_modules/date-fns/locale/hi.d.ts","./node_modules/date-fns/locale/hr.d.ts","./node_modules/date-fns/locale/ht.d.ts","./node_modules/date-fns/locale/hu.d.ts","./node_modules/date-fns/locale/hy.d.ts","./node_modules/date-fns/locale/id.d.ts","./node_modules/date-fns/locale/is.d.ts","./node_modules/date-fns/locale/it.d.ts","./node_modules/date-fns/locale/it-ch.d.ts","./node_modules/date-fns/locale/ja.d.ts","./node_modules/date-fns/locale/ja-hira.d.ts","./node_modules/date-fns/locale/ka.d.ts","./node_modules/date-fns/locale/kk.d.ts","./node_modules/date-fns/locale/km.d.ts","./node_modules/date-fns/locale/kn.d.ts","./node_modules/date-fns/locale/ko.d.ts","./node_modules/date-fns/locale/lb.d.ts","./node_modules/date-fns/locale/lt.d.ts","./node_modules/date-fns/locale/lv.d.ts","./node_modules/date-fns/locale/mk.d.ts","./node_modules/date-fns/locale/mn.d.ts","./node_modules/date-fns/locale/ms.d.ts","./node_modules/date-fns/locale/mt.d.ts","./node_modules/date-fns/locale/nb.d.ts","./node_modules/date-fns/locale/nl.d.ts","./node_modules/date-fns/locale/nl-be.d.ts","./node_modules/date-fns/locale/nn.d.ts","./node_modules/date-fns/locale/oc.d.ts","./node_modules/date-fns/locale/pl.d.ts","./node_modules/date-fns/locale/pt.d.ts","./node_modules/date-fns/locale/pt-br.d.ts","./node_modules/date-fns/locale/ro.d.ts","./node_modules/date-fns/locale/ru.d.ts","./node_modules/date-fns/locale/se.d.ts","./node_modules/date-fns/locale/sk.d.ts","./node_modules/date-fns/locale/sl.d.ts","./node_modules/date-fns/locale/sq.d.ts","./node_modules/date-fns/locale/sr.d.ts","./node_modules/date-fns/locale/sr-latn.d.ts","./node_modules/date-fns/locale/sv.d.ts","./node_modules/date-fns/locale/ta.d.ts","./node_modules/date-fns/locale/te.d.ts","./node_modules/date-fns/locale/th.d.ts","./node_modules/date-fns/locale/tr.d.ts","./node_modules/date-fns/locale/ug.d.ts","./node_modules/date-fns/locale/uk.d.ts","./node_modules/date-fns/locale/uz.d.ts","./node_modules/date-fns/locale/uz-cyrl.d.ts","./node_modules/date-fns/locale/vi.d.ts","./node_modules/date-fns/locale/zh-cn.d.ts","./node_modules/date-fns/locale/zh-hk.d.ts","./node_modules/date-fns/locale/zh-tw.d.ts","./node_modules/date-fns/locale.d.ts","./node_modules/react-day-picker/dist/esm/components/button.d.ts","./node_modules/react-day-picker/dist/esm/components/captionlabel.d.ts","./node_modules/react-day-picker/dist/esm/components/chevron.d.ts","./node_modules/react-day-picker/dist/esm/components/monthcaption.d.ts","./node_modules/react-day-picker/dist/esm/components/week.d.ts","./node_modules/react-day-picker/dist/esm/labels/labeldaybutton.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelgrid.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelgridcell.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelmonthdropdown.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelnav.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelnext.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelprevious.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelweekday.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelweeknumber.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelweeknumberheader.d.ts","./node_modules/react-day-picker/dist/esm/labels/labelyeardropdown.d.ts","./node_modules/react-day-picker/dist/esm/labels/index.d.ts","./node_modules/react-day-picker/dist/esm/ui.d.ts","./node_modules/react-day-picker/dist/esm/classes/calendarweek.d.ts","./node_modules/react-day-picker/dist/esm/classes/calendarmonth.d.ts","./node_modules/react-day-picker/dist/esm/types/props.d.ts","./node_modules/react-day-picker/dist/esm/types/selection.d.ts","./node_modules/react-day-picker/dist/esm/usedaypicker.d.ts","./node_modules/react-day-picker/dist/esm/types/deprecated.d.ts","./node_modules/react-day-picker/dist/esm/types/index.d.ts","./node_modules/react-day-picker/dist/esm/components/day.d.ts","./node_modules/react-day-picker/dist/esm/components/daybutton.d.ts","./node_modules/react-day-picker/dist/esm/components/dropdown.d.ts","./node_modules/react-day-picker/dist/esm/components/dropdownnav.d.ts","./node_modules/react-day-picker/dist/esm/components/footer.d.ts","./node_modules/react-day-picker/dist/esm/components/month.d.ts","./node_modules/react-day-picker/dist/esm/components/monthgrid.d.ts","./node_modules/react-day-picker/dist/esm/components/months.d.ts","./node_modules/react-day-picker/dist/esm/components/monthsdropdown.d.ts","./node_modules/react-day-picker/dist/esm/components/nav.d.ts","./node_modules/react-day-picker/dist/esm/components/nextmonthbutton.d.ts","./node_modules/react-day-picker/dist/esm/components/option.d.ts","./node_modules/react-day-picker/dist/esm/components/previousmonthbutton.d.ts","./node_modules/react-day-picker/dist/esm/components/root.d.ts","./node_modules/react-day-picker/dist/esm/components/select.d.ts","./node_modules/react-day-picker/dist/esm/components/weekday.d.ts","./node_modules/react-day-picker/dist/esm/components/weekdays.d.ts","./node_modules/react-day-picker/dist/esm/components/weeknumber.d.ts","./node_modules/react-day-picker/dist/esm/components/weeknumberheader.d.ts","./node_modules/react-day-picker/dist/esm/components/weeks.d.ts","./node_modules/react-day-picker/dist/esm/components/yearsdropdown.d.ts","./node_modules/react-day-picker/dist/esm/components/custom-components.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatcaption.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatday.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatmonthdropdown.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatweekdayname.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatweeknumber.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatweeknumberheader.d.ts","./node_modules/react-day-picker/dist/esm/formatters/formatyeardropdown.d.ts","./node_modules/react-day-picker/dist/esm/formatters/index.d.ts","./node_modules/react-day-picker/dist/esm/types/shared.d.ts","./node_modules/react-day-picker/dist/esm/classes/datelib.d.ts","./node_modules/react-day-picker/dist/esm/classes/calendarday.d.ts","./node_modules/react-day-picker/dist/esm/classes/index.d.ts","./node_modules/react-day-picker/dist/esm/daypicker.d.ts","./node_modules/react-day-picker/dist/esm/helpers/getdefaultclassnames.d.ts","./node_modules/react-day-picker/dist/esm/helpers/index.d.ts","./node_modules/react-day-picker/dist/esm/utils/addtorange.d.ts","./node_modules/react-day-picker/dist/esm/utils/datematchmodifiers.d.ts","./node_modules/react-day-picker/dist/esm/utils/rangecontainsdayofweek.d.ts","./node_modules/react-day-picker/dist/esm/utils/rangecontainsmodifiers.d.ts","./node_modules/react-day-picker/dist/esm/utils/rangeincludesdate.d.ts","./node_modules/react-day-picker/dist/esm/utils/rangeoverlaps.d.ts","./node_modules/react-day-picker/dist/esm/utils/typeguards.d.ts","./node_modules/react-day-picker/dist/esm/utils/index.d.ts","./node_modules/react-day-picker/dist/esm/index.d.ts","./src/components/ui/calendar.tsx","./node_modules/@radix-ui/react-checkbox/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-checkbox/dist/index.d.mts","./src/components/ui/checkbox.tsx","./node_modules/recharts/types/container/surface.d.ts","./node_modules/recharts/types/container/layer.d.ts","./node_modules/recharts/types/shape/dot.d.ts","./node_modules/@types/d3-path/index.d.ts","./node_modules/@types/d3-shape/index.d.ts","./node_modules/victory-vendor/d3-shape.d.ts","./node_modules/recharts/types/synchronisation/types.d.ts","./node_modules/recharts/types/chart/types.d.ts","./node_modules/recharts/types/component/defaulttooltipcontent.d.ts","./node_modules/recharts/types/component/text.d.ts","./node_modules/recharts/types/zindex/zindexlayer.d.ts","./node_modules/recharts/types/component/label.d.ts","./node_modules/recharts/types/cartesian/cartesianaxis.d.ts","./node_modules/redux/dist/redux.d.ts","./node_modules/immer/dist/immer.d.ts","./node_modules/reselect/dist/reselect.d.ts","./node_modules/redux-thunk/dist/redux-thunk.d.ts","./node_modules/@reduxjs/toolkit/dist/uncheckedindexed.ts","./node_modules/@reduxjs/toolkit/dist/index.d.mts","./node_modules/recharts/types/state/brushslice.d.ts","./node_modules/recharts/types/context/brushupdatecontext.d.ts","./node_modules/recharts/types/state/chartdataslice.d.ts","./node_modules/recharts/types/animation/easing.d.ts","./node_modules/recharts/types/shape/rectangle.d.ts","./node_modules/recharts/types/component/labellist.d.ts","./node_modules/recharts/types/util/barutils.d.ts","./node_modules/recharts/types/state/types/linesettings.d.ts","./node_modules/recharts/types/state/types/scattersettings.d.ts","./node_modules/recharts/types/shape/curve.d.ts","./node_modules/recharts/types/util/stacks/stacktypes.d.ts","./node_modules/recharts/types/state/selectors/areaselectors.d.ts","./node_modules/recharts/types/cartesian/area.d.ts","./node_modules/recharts/types/state/types/areasettings.d.ts","./node_modules/recharts/types/state/types/radialbarsettings.d.ts","./node_modules/recharts/types/util/svgpropertiesnoevents.d.ts","./node_modules/recharts/types/util/useuniqueid.d.ts","./node_modules/recharts/types/state/types/piesettings.d.ts","./node_modules/recharts/types/state/types/radarsettings.d.ts","./node_modules/recharts/types/state/graphicalitemsslice.d.ts","./node_modules/recharts/types/state/types/stackedgraphicalitem.d.ts","./node_modules/recharts/types/state/types/barsettings.d.ts","./node_modules/recharts/types/cartesian/bar.d.ts","./node_modules/recharts/types/cartesian/line.d.ts","./node_modules/recharts/types/shape/symbols.d.ts","./node_modules/recharts/types/cartesian/scatter.d.ts","./node_modules/recharts/types/cartesian/errorbar.d.ts","./node_modules/recharts/types/state/errorbarslice.d.ts","./node_modules/recharts/types/state/legendslice.d.ts","./node_modules/recharts/types/state/optionsslice.d.ts","./node_modules/recharts/types/state/polaraxisslice.d.ts","./node_modules/recharts/types/state/polaroptionsslice.d.ts","./node_modules/recharts/types/util/ifoverflow.d.ts","./node_modules/recharts/types/util/resolvedefaultprops.d.ts","./node_modules/recharts/types/cartesian/referenceline.d.ts","./node_modules/recharts/types/state/referenceelementsslice.d.ts","./node_modules/recharts/types/state/rootpropsslice.d.ts","./node_modules/recharts/types/state/store.d.ts","./node_modules/recharts/types/cartesian/getticks.d.ts","./node_modules/recharts/types/cartesian/cartesiangrid.d.ts","./node_modules/recharts/types/state/selectors/combiners/combinedisplayedstackeddata.d.ts","./node_modules/recharts/types/state/selectors/selecttooltipaxistype.d.ts","./node_modules/recharts/types/state/selectors/axisselectors.d.ts","./node_modules/recharts/types/state/cartesianaxisslice.d.ts","./node_modules/recharts/types/state/tooltipslice.d.ts","./node_modules/recharts/types/util/chartutils.d.ts","./node_modules/recharts/types/component/dots.d.ts","./node_modules/recharts/types/util/types.d.ts","./node_modules/recharts/types/component/defaultlegendcontent.d.ts","./node_modules/recharts/types/util/payload/getuniqpayload.d.ts","./node_modules/recharts/types/util/useelementoffset.d.ts","./node_modules/recharts/types/component/legend.d.ts","./node_modules/recharts/types/component/cursor.d.ts","./node_modules/recharts/types/component/tooltip.d.ts","./node_modules/recharts/types/component/responsivecontainer.d.ts","./node_modules/recharts/types/component/cell.d.ts","./node_modules/recharts/types/component/customized.d.ts","./node_modules/recharts/types/shape/sector.d.ts","./node_modules/recharts/types/shape/polygon.d.ts","./node_modules/recharts/types/shape/cross.d.ts","./node_modules/recharts/types/polar/polargrid.d.ts","./node_modules/recharts/types/polar/defaultpolarradiusaxisprops.d.ts","./node_modules/recharts/types/polar/polarradiusaxis.d.ts","./node_modules/recharts/types/polar/defaultpolarangleaxisprops.d.ts","./node_modules/recharts/types/polar/polarangleaxis.d.ts","./node_modules/recharts/types/polar/pie.d.ts","./node_modules/recharts/types/polar/radar.d.ts","./node_modules/recharts/types/polar/radialbar.d.ts","./node_modules/recharts/types/cartesian/brush.d.ts","./node_modules/recharts/types/cartesian/referencedot.d.ts","./node_modules/recharts/types/cartesian/referencearea.d.ts","./node_modules/recharts/types/cartesian/xaxis.d.ts","./node_modules/recharts/types/cartesian/yaxis.d.ts","./node_modules/recharts/types/cartesian/zaxis.d.ts","./node_modules/recharts/types/chart/linechart.d.ts","./node_modules/recharts/types/chart/barchart.d.ts","./node_modules/recharts/types/chart/piechart.d.ts","./node_modules/recharts/types/chart/treemap.d.ts","./node_modules/recharts/types/chart/sankey.d.ts","./node_modules/recharts/types/chart/radarchart.d.ts","./node_modules/recharts/types/chart/scatterchart.d.ts","./node_modules/recharts/types/chart/areachart.d.ts","./node_modules/recharts/types/chart/radialbarchart.d.ts","./node_modules/recharts/types/chart/composedchart.d.ts","./node_modules/recharts/types/chart/sunburstchart.d.ts","./node_modules/recharts/types/shape/trapezoid.d.ts","./node_modules/recharts/types/cartesian/funnel.d.ts","./node_modules/recharts/types/chart/funnelchart.d.ts","./node_modules/recharts/types/util/global.d.ts","./node_modules/recharts/types/zindex/defaultzindexes.d.ts","./node_modules/decimal.js-light/decimal.d.ts","./node_modules/recharts/types/util/scale/getnicetickvalues.d.ts","./node_modules/recharts/types/types.d.ts","./node_modules/recharts/types/hooks.d.ts","./node_modules/recharts/types/context/chartlayoutcontext.d.ts","./node_modules/recharts/types/index.d.ts","./src/components/business/maindashboard.tsx","./src/components/business/dashboard.tsx","./src/app/[locale]/(protected)/dashboard/page.tsx","./src/components/ui/table.tsx","./src/components/items/itemlistclient.tsx","./src/app/[locale]/(protected)/items/page.tsx","./src/components/items/itemdetailclient.tsx","./src/app/[locale]/(protected)/items/[id]/page.tsx","./node_modules/react-hook-form/dist/constants.d.ts","./node_modules/react-hook-form/dist/utils/createsubject.d.ts","./node_modules/react-hook-form/dist/types/events.d.ts","./node_modules/react-hook-form/dist/types/path/common.d.ts","./node_modules/react-hook-form/dist/types/path/eager.d.ts","./node_modules/react-hook-form/dist/types/path/index.d.ts","./node_modules/react-hook-form/dist/types/fieldarray.d.ts","./node_modules/react-hook-form/dist/types/resolvers.d.ts","./node_modules/react-hook-form/dist/types/form.d.ts","./node_modules/react-hook-form/dist/types/utils.d.ts","./node_modules/react-hook-form/dist/types/fields.d.ts","./node_modules/react-hook-form/dist/types/errors.d.ts","./node_modules/react-hook-form/dist/types/validator.d.ts","./node_modules/react-hook-form/dist/types/controller.d.ts","./node_modules/react-hook-form/dist/types/index.d.ts","./node_modules/react-hook-form/dist/controller.d.ts","./node_modules/react-hook-form/dist/form.d.ts","./node_modules/react-hook-form/dist/logic/appenderrors.d.ts","./node_modules/react-hook-form/dist/logic/createformcontrol.d.ts","./node_modules/react-hook-form/dist/logic/index.d.ts","./node_modules/react-hook-form/dist/usecontroller.d.ts","./node_modules/react-hook-form/dist/usefieldarray.d.ts","./node_modules/react-hook-form/dist/useform.d.ts","./node_modules/react-hook-form/dist/useformcontext.d.ts","./node_modules/react-hook-form/dist/useformstate.d.ts","./node_modules/react-hook-form/dist/usewatch.d.ts","./node_modules/react-hook-form/dist/utils/get.d.ts","./node_modules/react-hook-form/dist/utils/set.d.ts","./node_modules/react-hook-form/dist/utils/index.d.ts","./node_modules/react-hook-form/dist/watch.d.ts","./node_modules/react-hook-form/dist/index.d.ts","./node_modules/zod/v3/helpers/typealiases.d.cts","./node_modules/zod/v3/helpers/util.d.cts","./node_modules/zod/v3/zoderror.d.cts","./node_modules/zod/v3/locales/en.d.cts","./node_modules/zod/v3/errors.d.cts","./node_modules/zod/v3/helpers/parseutil.d.cts","./node_modules/zod/v3/helpers/enumutil.d.cts","./node_modules/zod/v3/helpers/errorutil.d.cts","./node_modules/zod/v3/helpers/partialutil.d.cts","./node_modules/zod/v3/standard-schema.d.cts","./node_modules/zod/v3/types.d.cts","./node_modules/zod/v3/external.d.cts","./node_modules/zod/v3/index.d.cts","./node_modules/@hookform/resolvers/zod/dist/zod.d.ts","./node_modules/@hookform/resolvers/zod/dist/index.d.ts","./src/components/ui/textarea.tsx","./src/components/ui/alert.tsx","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-context/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-focus-scope/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-arrow/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/rect/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-popper/dist/index.d.mts","./node_modules/@radix-ui/react-popover/node_modules/@radix-ui/react-portal/dist/index.d.mts","./node_modules/@radix-ui/react-popover/dist/index.d.mts","./src/components/ui/popover.tsx","./node_modules/cmdk/dist/index.d.ts","./src/components/ui/command.tsx","./src/components/items/itemtypeselect.tsx","./src/components/items/fileupload.tsx","./node_modules/@radix-ui/react-slider/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-slider/dist/index.d.mts","./src/components/ui/slider.tsx","./src/components/items/drawingcanvas.tsx","./src/components/items/itemform.tsx","./src/app/[locale]/(protected)/items/[id]/edit/page.tsx","./src/app/[locale]/(protected)/items/create/page.tsx","./src/components/organisms/pagelayout.tsx","./src/components/organisms/pageheader.tsx","./src/components/items/itemmasterdatamanagement/dialogs/fielddialog.tsx","./node_modules/vaul/dist/index.d.mts","./src/components/ui/drawer.tsx","./src/components/items/itemmasterdatamanagement/dialogs/fielddrawer.tsx","./node_modules/@radix-ui/react-alert-dialog/dist/index.d.mts","./src/components/ui/alert-dialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/tabmanagementdialogs.tsx","./src/components/items/itemmasterdatamanagement/dialogs/optiondialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/columnmanagedialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/patheditdialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/pagedialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/sectiondialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/masterfielddialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/templatefielddialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/loadtemplatedialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/columndialog.tsx","./src/components/items/itemmasterdatamanagement/dialogs/sectiontemplatedialog.tsx","./src/components/ui/loading-spinner.tsx","./src/components/ui/error-message.tsx","./src/components/items/itemmasterdatamanagement.tsx","./src/app/[locale]/(protected)/master-data/item-master-data-management/page.tsx","./src/app/[locale]/(protected)/production/screen-production/page.tsx","./src/app/[locale]/(protected)/production/screen-production/[id]/page.tsx","./src/app/[locale]/(protected)/production/screen-production/[id]/edit/page.tsx","./src/app/[locale]/(protected)/production/screen-production/create/page.tsx","./src/components/languageselect.tsx","./src/components/themeselect.tsx","./src/components/auth/loginpage.tsx","./src/app/[locale]/login/page.tsx","./src/components/auth/signuppage.tsx","./src/app/[locale]/signup/page.tsx","./node_modules/@radix-ui/react-progress/node_modules/@radix-ui/react-context/dist/index.d.mts","./node_modules/@radix-ui/react-progress/dist/index.d.mts","./src/components/ui/progress.tsx","./node_modules/@radix-ui/react-tooltip/node_modules/@radix-ui/react-primitive/dist/index.d.mts","./node_modules/@radix-ui/react-tooltip/dist/index.d.mts","./src/components/ui/tooltip.tsx","./src/contexts/_unused/accountingcontext.tsx","./src/contexts/_unused/developermodecontext.tsx","./src/contexts/_unused/facilitiescontext.tsx","./src/contexts/_unused/hrcontext.tsx","./src/contexts/_unused/inventorycontext.tsx","./src/contexts/_unused/pricingcontext.tsx","./src/contexts/_unused/productioncontext.tsx","./src/contexts/_unused/salescontext.tsx","./src/contexts/_unused/shippingcontext.tsx","./.next/types/cache-life.d.ts","./.next/types/server.d.ts","./.next/types/validator.ts","./.next/types/app/[locale]/layout.ts","./.next/types/app/[locale]/page.ts","./.next/types/app/[locale]/(protected)/layout.ts","./.next/types/app/[locale]/(protected)/[...slug]/page.ts","./.next/types/app/[locale]/(protected)/dashboard/page.ts","./.next/types/app/[locale]/(protected)/items/page.ts","./.next/types/app/[locale]/(protected)/items/[id]/page.ts","./.next/types/app/[locale]/(protected)/items/[id]/edit/page.ts","./.next/types/app/[locale]/(protected)/items/create/page.ts","./.next/types/app/[locale]/(protected)/master-data/item-master-data-management/page.ts","./.next/types/app/[locale]/(protected)/production/screen-production/page.ts","./.next/types/app/[locale]/(protected)/production/screen-production/[id]/page.ts","./.next/types/app/[locale]/(protected)/production/screen-production/[id]/edit/page.ts","./.next/types/app/[locale]/(protected)/production/screen-production/create/page.ts","./.next/types/app/[locale]/login/page.ts","./.next/types/app/[locale]/signup/page.ts","./.next/types/app/api/auth/check/route.ts","./.next/types/app/api/auth/login/route.ts","./.next/types/app/api/auth/logout/route.ts","./.next/types/app/api/auth/refresh/route.ts","./.next/types/app/api/auth/signup/route.ts","./.next/types/app/api/proxy/[...path]/route.ts","./.next/types/app/api/tenants/[tenantid]/item-master-config/route.ts","./.next/types/app/api/tenants/[tenantid]/item-master-config/pages/[pageid]/route.ts","./node_modules/@types/d3-array/index.d.ts","./node_modules/@types/d3-color/index.d.ts","./node_modules/@types/d3-ease/index.d.ts","./node_modules/@types/d3-interpolate/index.d.ts","./node_modules/@types/d3-time/index.d.ts","./node_modules/@types/d3-scale/index.d.ts","./node_modules/@types/d3-timer/index.d.ts","./node_modules/@types/estree/index.d.ts","./node_modules/@types/json-schema/index.d.ts","./node_modules/@types/json5/index.d.ts","./node_modules/@types/use-sync-external-store/index.d.ts"],"fileIdsList":[[100,146,337,823],[100,146,337,1379],[100,146,337,1452],[100,146,337,1384],[100,146,337,1453],[100,146,337,1382],[100,146,337,819],[100,146,337,1476],[100,146,337,1479],[100,146,337,1478],[100,146,337,1480],[100,146,337,1477],[100,146,337,806],[100,146,337,1484],[100,146,337,808],[100,146,337,1486],[100,146,491,511],[100,146,491,512],[100,146,491,513],[100,146,491,514],[100,146,491,515],[100,146,491,516],[100,146,491,519],[100,146,491,518],[100,146,444,445,446,447],[100,146],[100,145,146,275,277,278,280,328,432,482,483,484,487,488,490],[83,100,146,491,494,511,512,513,514,515,516,518,519,806,808,819,823,1379,1382,1384,1452,1453,1476,1477,1478,1479,1480,1484,1486],[83,100,146,495,496],[100,146,495,501],[100,146,825],[100,146,826],[100,146,825,826,827,828,829,830,831],[100,146,613],[100,146,602,603,604,605,606,607,608,609,610,611,612,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647],[100,146,613,616],[100,146,616],[100,146,614],[100,146,613,614,615],[100,146,614,616],[100,146,614,615],[100,146,652],[100,146,652,654,655],[100,146,652,653],[100,146,648,651],[100,146,649,650],[100,146,648],[100,146,1429],[100,146,782,1415,1428],[86,100,146,552,581],[86,100,146,553],[86,100,146],[86,100,146,262,552,553],[86,100,146,552,553,567,569,576],[86,100,146,552,553,813],[86,100,146,549],[86,100,146,552,553,567,569,574,576,590],[86,100,146,1433,1434,1435,1436,1439,1440],[86,100,146,1434],[86,100,146,1433,1434,1437,1438],[86,100,146,552,553,571,573],[86,100,146,549,1487],[86,100,146,552,553],[86,100,146,552,553,567,569,574,576],[86,90,100,146,195,196,197,198,199,439,487],[86,100,146,552,553,590],[86,100,146,552,553,567,574,576],[100,146,1275,1276,1277,1278,1279],[100,146,1530],[100,146,1533],[100,146,1265],[100,143,146],[100,145,146],[146],[100,146,151,179],[100,146,147,152,157,165,176,187],[100,146,147,148,157,165],[95,96,97,100,146],[100,146,149,188],[100,146,150,151,158,166],[100,146,151,176,184],[100,146,152,154,157,165],[100,145,146,153],[100,146,154,155],[100,146,156,157],[100,145,146,157],[100,146,157,158,159,176,187],[100,146,157,158,159,172,176,179],[100,146,154,157,160,165,176,187],[100,146,157,158,160,161,165,176,184,187],[100,146,160,162,176,184,187],[98,99,100,101,102,103,104,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[100,146,157,163],[100,146,164,187,192],[100,146,154,157,165,176],[100,146,166],[100,146,167],[100,145,146,168],[100,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[100,146,170],[100,146,171],[100,146,157,172,173],[100,146,172,174,188,190],[100,146,157,176,177,179],[100,146,178,179],[100,146,176,177],[100,146,179],[100,146,180],[100,143,146,176,181],[100,146,157,182,183],[100,146,182,183],[100,146,151,165,176,184],[100,146,185],[100,146,165,186],[100,146,160,171,187],[100,146,151,188],[100,146,176,189],[100,146,164,190],[100,146,191],[100,141,146],[100,141,146,157,159,168,176,179,187,190,192],[100,146,176,193],[86,90,100,146,195,196,197,199,439,487,531],[86,90,100,146,195,196,197,198,354,439,487,531],[86,90,100,146,195,196,198,199,439,487,531],[86,100,146,199,354,355],[86,100,146,199,354],[86,90,100,146,196,197,198,199,439,487,531],[86,90,100,146,195,197,198,199,439,487,531],[84,85,100,146],[100,146,532,533],[100,146,532],[86,100,146,581],[100,146,836],[100,146,834,836],[100,146,834],[100,146,836,900,901],[100,146,836,903],[100,146,836,904],[100,146,921],[100,146,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089],[100,146,836,997],[100,146,834,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185],[100,146,836,901,1021],[100,146,834,1018,1019],[100,146,1020],[100,146,836,1018],[100,146,833,834,835],[100,146,657,658,659],[100,146,656,657],[100,146,648,656],[100,146,803],[100,146,506],[100,146,505],[100,146,491,503,504],[100,146,500],[100,146,495,498],[100,146,499],[100,146,691,802],[100,146,491,503],[100,146,699],[100,146,679],[100,146,691],[100,146,691,695],[100,146,680,681,692,693,694,696,697,698],[86,100,146,262,690,691],[92,100,146],[100,146,442],[100,146,449],[100,146,203,217,218,219,221,436],[100,146,203,242,244,246,247,250,436,438],[100,146,203,207,209,210,211,212,213,425,436,438],[100,146,436],[100,146,218,320,406,415,432],[100,146,203],[100,146,200,432],[100,146,254],[100,146,253,436,438],[100,146,160,302,320,349,493],[100,146,160,313,329,415,431],[100,146,160,367],[100,146,419],[100,146,418,419,420],[100,146,418],[94,100,146,160,200,203,207,210,214,215,216,218,222,230,231,360,385,416,436,439],[100,146,203,220,238,242,243,248,249,436,493],[100,146,220,493],[100,146,231,238,300,436,493],[100,146,493],[100,146,203,220,221,493],[100,146,245,493],[100,146,214,417,424],[100,146,171,262,432],[100,146,262,432],[86,100,146,262],[86,100,146,321],[100,146,317,365,432,475,476],[100,146,412,469,470,471,472,474],[100,146,411],[100,146,411,412],[100,146,211,361,362,363],[100,146,361,364,365],[100,146,473],[100,146,361,365],[86,100,146,204,463],[86,100,146,187],[86,100,146,220,290],[86,100,146,220],[100,146,288,292],[86,100,146,289,441],[86,90,100,146,160,194,195,196,197,198,199,439,485,486,531],[100,146,160],[100,146,160,207,269,361,371,386,406,421,422,436,437,493],[100,146,230,423],[100,146,439],[100,146,202],[86,100,146,302,316,328,338,340,431],[100,146,171,302,316,337,338,339,431,492],[100,146,331,332,333,334,335,336],[100,146,333],[100,146,337],[100,146,260,261,262,264],[86,100,146,255,256,257,263],[100,146,260,263],[100,146,258],[100,146,259],[86,100,146,262,289,441],[86,100,146,262,440,441],[86,100,146,262,441],[100,146,386,428],[100,146,428],[100,146,160,437,441],[100,146,325],[100,145,146,324],[100,146,232,270,308,310,312,313,314,315,358,361,431,434,437],[100,146,232,346,361,365],[100,146,313,431],[86,100,146,313,322,323,325,326,327,328,329,330,341,342,343,344,345,347,348,431,432,493],[100,146,307],[100,146,160,171,232,233,269,284,314,358,359,360,365,386,406,427,436,437,438,439,493],[100,146,431],[100,145,146,218,311,314,360,427,429,430,437],[100,146,313],[100,145,146,269,274,303,304,305,306,307,308,309,310,312,431,432],[100,146,160,274,275,303,437,438],[100,146,218,360,361,386,427,431,437],[100,146,160,436,438],[100,146,160,176,434,437,438],[100,146,160,171,187,200,207,220,232,233,235,270,271,276,281,284,310,314,361,371,373,376,378,381,382,383,384,385,406,426,427,432,434,436,437,438],[100,146,160,176],[100,146,203,204,205,207,212,215,220,238,426,434,435,439,441,493],[100,146,160,176,187,250,252,254,255,256,257,264,493],[100,146,171,187,200,242,252,280,281,282,283,310,361,376,385,386,392,395,396,406,427,432,434],[100,146,214,215,230,360,385,427,436],[100,146,160,187,204,207,310,390,434,436],[100,146,301],[100,146,160,393,394,403],[100,146,434,436],[100,146,308,311],[100,146,310,314,426,441],[100,146,160,171,236,242,283,376,386,392,395,398,434],[100,146,160,214,230,242,399],[100,146,203,235,401,426,436],[100,146,160,187,436],[100,146,160,220,234,235,236,247,265,400,402,426,436],[94,100,146,232,314,405,439,441],[100,146,160,171,187,207,214,222,230,233,270,276,280,281,282,283,284,310,361,373,386,387,389,391,406,426,427,432,433,434,441],[100,146,160,176,214,392,397,403,434],[100,146,225,226,227,228,229],[100,146,271,377],[100,146,379],[100,146,377],[100,146,379,380],[100,146,160,207,210,211,269,437],[100,146,160,171,202,204,232,270,284,314,369,370,406,434,438,439,441],[100,146,160,171,187,206,211,310,370,433,437],[100,146,303],[100,146,304],[100,146,305],[100,146,432],[100,146,251,267],[100,146,160,207,251,270],[100,146,266,267],[100,146,268],[100,146,251,252],[100,146,251,285],[100,146,251],[100,146,271,375,433],[100,146,374],[100,146,252,432,433],[100,146,372,433],[100,146,252,432],[100,146,358],[100,146,207,212,270,299,302,308,310,314,316,319,350,353,357,361,405,426,434,437],[100,146,293,296,297,298,317,318,365],[86,100,146,197,199,262,351,352],[86,100,146,197,199,262,351,352,356],[100,146,414],[100,146,218,275,313,314,325,329,361,405,407,408,409,410,412,413,416,426,431,436],[100,146,365],[100,146,369],[100,146,160,270,286,366,368,371,405,434,439,441],[100,146,293,294,295,296,297,298,317,318,365,440],[94,100,146,160,171,187,233,251,252,284,310,314,403,404,406,426,427,436,437,439],[100,146,275,277,280,427],[100,146,160,271,436],[100,146,274,313],[100,146,273],[100,146,275,276],[100,146,272,274,436],[100,146,160,206,275,277,278,279,436,437],[86,100,146,361,362,364],[100,146,237],[86,100,146,204],[86,100,146,432],[86,94,100,146,284,314,439,441],[100,146,204,463,464],[86,100,146,292],[86,100,146,171,187,202,249,287,289,291,441],[100,146,220,432,437],[100,146,388,432],[100,146,361],[86,100,146,158,160,171,202,238,244,292,439,440],[86,100,146,195,196,197,198,199,439,487,531],[86,87,88,89,90,100,146],[100,146,151],[100,146,239,240,241],[100,146,239],[86,90,100,146,160,162,171,194,195,196,197,198,199,200,202,233,337,398,436,438,441,487,531],[100,146,451],[100,146,453],[100,146,455],[100,146,457],[100,146,459,460,461],[100,146,465],[91,93,100,146,443,448,450,452,454,456,458,462,466,468,478,479,481,491,492,493,494],[100,146,467],[100,146,477],[100,146,289],[100,146,480],[100,145,146,275,277,278,280,328,432,482,483,484,487,488,489,490],[100,146,194],[100,146,1243],[100,146,1205],[100,146,1244],[100,146,1090,1118,1186,1242],[100,146,1205,1206,1243,1244],[100,146,1187,1188,1189,1190,1191,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232],[86,100,146,1211,1245],[86,100,146,1211],[86,100,146,1206],[86,100,146,1245],[86,100,146,1214],[100,146,1234,1235,1236,1237,1238,1239,1240],[100,146,1211],[100,146,1247],[100,146,832,1203,1204,1209,1211,1233,1241,1245,1246,1248,1256],[100,146,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202],[100,146,1211,1243],[100,146,1190,1191,1203,1204,1207,1209,1242],[100,146,1207,1208,1210,1242],[86,100,146,1204,1242,1243],[100,146,1207,1242],[86,100,146,1203,1204,1233,1241],[86,100,146,1206,1207,1208,1242,1244],[100,146,1249,1250,1251,1252,1253,1254,1255],[86,100,146,1399],[100,146,1399,1400,1401,1404,1405,1406,1407,1408,1409,1410,1413,1414],[100,146,1399],[100,146,1402,1403],[86,100,146,1397,1399],[100,146,1394,1395,1397],[100,146,1390,1393,1395,1397],[100,146,1394,1397],[86,100,146,1385,1386,1387,1390,1391,1392,1394,1395,1396,1397],[100,146,1387,1390,1391,1392,1393,1394,1395,1396,1397,1398],[100,146,1394],[100,146,1388,1394,1395],[100,146,1388,1389],[100,146,1393,1395,1396],[100,146,1393],[100,146,1385,1390,1395,1396],[100,146,1411,1412],[86,100,146,1272,1283,1290,1292,1294,1323,1328],[86,100,146,1267,1272,1284,1285,1286,1287,1302,1323,1326,1328],[86,100,146,1282,1328],[86,100,146,1271,1272,1273,1324,1326,1328],[86,100,146,1272,1319,1324,1326,1328],[86,100,146,1272,1303,1304,1306,1328],[86,100,146,1286,1325,1328,1366],[100,146,1324,1328],[86,100,146,1272,1286,1290,1323,1324,1328],[86,100,146,1272,1273,1285,1313],[86,100,146,1264,1272,1273,1313],[86,100,146,1272,1273,1313,1314,1328],[86,100,146,1270,1272,1286,1289,1290,1305,1323,1324,1325,1328],[86,100,146,1324,1328],[86,100,146,1324,1326,1328],[86,100,146,1323,1326,1328],[86,100,146,1328],[86,100,146,1285,1325,1328],[86,100,146,1325,1328],[86,100,146,1268],[86,100,146,1272,1325,1328],[86,100,146,1264,1272,1328],[86,100,146,1271,1272,1328],[86,100,146,1272,1273,1328,1376],[86,100,146,1329,1330,1331],[86,100,146,1269,1270,1324,1325,1328,1330,1333],[100,146,1318,1328],[100,146,1323,1324,1328,1373],[100,146,1262,1263,1264,1268,1270,1271,1272,1273,1274,1285,1286,1290,1293,1303,1304,1305,1306,1307,1313,1315,1320,1328,1329,1332,1334,1335,1336,1337,1338,1339,1340,1341,1343,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1372,1373,1374,1375],[86,100,146,1272,1286,1296,1298,1325,1328],[86,100,146,1271,1272,1314,1326,1328,1344],[86,100,146,1272,1324],[86,100,146,1272,1314,1328,1342],[86,100,146,1272,1326,1328],[86,100,146,1267,1272,1283,1286,1323,1324,1326,1328,1338],[86,100,146,1267,1328],[86,100,146,1284,1328],[100,146,1275,1280,1328],[100,146,1274,1275,1280,1323,1326,1328],[100,146,1275,1280,1282],[100,146,1275,1280,1300,1307,1328],[100,146,1275,1280,1283,1288,1289,1294,1295,1298,1299,1302,1324,1328],[100,146,1275,1280,1328,1329,1332],[100,146,1275,1280,1325,1328],[100,146,1275,1280,1324],[100,146,1275,1280],[100,146,1275,1276,1280,1313,1315,1324],[100,146,1268,1275,1280,1293,1328],[100,146,1267,1291,1300,1318,1324,1328],[100,146,1275,1277,1281,1283,1291,1300,1301,1308,1309,1310,1311,1312,1316,1317,1318,1320,1321,1322,1324,1325,1326,1328,1376],[100,146,1283,1291,1301,1324],[100,146,1318],[100,146,1275,1280,1281,1283,1300,1308,1309,1310,1311,1312,1316,1317,1324,1325,1328,1376],[100,146,1269,1270,1275,1280,1324,1328],[100,146,1283,1293,1300,1301,1328],[100,146,1287,1300,1301],[100,146,1283,1300,1328],[86,100,146,1270,1296,1297,1300,1328],[100,146,1300],[100,146,1300,1301],[100,146,1270,1283,1300,1328],[100,146,1300,1326,1328],[100,146,1325,1328],[86,100,146,1285,1303,1328],[100,146,1267,1270,1291,1309,1323,1325,1328],[100,146,1328,1371],[100,146,1267,1300,1301,1326],[86,100,146,1264,1268,1269,1293,1296,1323,1326,1327],[100,146,1275],[100,146,176,194],[100,113,117,146,187],[100,113,146,176,187],[100,108,146],[100,110,113,146,184,187],[100,146,165,184],[100,108,146,194],[100,110,113,146,165,187],[100,105,106,109,112,146,157,176,187],[100,113,120,146],[100,105,111,146],[100,113,134,135,146],[100,109,113,146,179,187,194],[100,134,146,194],[100,107,108,146,194],[100,113,146],[100,107,108,109,110,111,112,113,114,115,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,135,136,137,138,139,140,146],[100,113,128,146],[100,113,120,121,146],[100,111,113,121,122,146],[100,112,146],[100,105,108,113,146],[100,113,117,121,122,146],[100,117,146],[100,111,113,116,146,187],[100,105,110,113,120,146],[100,146,176],[100,108,113,134,146,192,194],[100,146,678],[86,100,146,600,601,661,662,663,665,672,674],[86,100,146,599,662,666,667,669,670,671,672],[100,146,600],[100,146,601,661],[100,146,660],[100,146,663],[100,146,668],[100,146,598,599,600,601,661,662,663,664,665,667,669,670,671,672,673,674,675,676,677],[100,146,665,667],[100,146,600,662,663,665,666],[100,146,664],[100,146,679,690],[100,146,689],[100,146,682,683,684,685,686,687,688],[86,100,146,262,667],[100,146,675],[100,146,663,671,673],[100,146,1266],[100,146,790],[100,146,1418,1419],[100,146,1416,1417,1418,1420,1421,1426],[100,146,1417,1418],[100,146,1426],[100,146,1427],[100,146,1418],[100,146,1416,1417,1418,1421,1422,1423,1424,1425],[100,146,1416,1417,1428],[100,146,782],[100,146,782,785],[100,146,776,782,783,784,785,786,787,788,789],[100,146,782,783],[100,146,782,784],[100,146,721,723,724,725,726],[100,146,721,723,725,726],[100,146,721,723,725],[100,146,720,721,723,724,726],[100,146,721,722,723,724,725,726,727,728,776,777,778,779,780,781],[100,146,723,726],[100,146,720,721,722,724,725,726],[100,146,723,777,780],[100,146,723,724,725,726],[100,146,725],[100,146,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775],[100,146,709,710,712,713,714,716],[100,146,712,713,714,715,716],[100,146,709,712,713,714,716],[100,146,797,798],[86,100,146,478,822],[100,146,1378],[86,100,146,468,537,539,563],[86,100,146,478,704,792,1451],[86,100,146,478,704,1383],[100,146,792,1451],[86,100,146,704,1381],[100,146,595,817,818],[100,146,539],[86,100,146,495,1475],[100,146,468,537,539,563],[100,146,478,495,508,700,804,805],[100,146,1483],[86,100,146,478],[100,146,1485],[100,146,1503],[100,146,517,1503],[86,100,146,478,537,538,539,551,719,804,1481,1482],[86,100,146,478,537,538,539,551,579,793,804,1481,1482],[86,100,146,1377],[86,100,146,537,539,542,563,579,596,824,1258,1261,1376],[100,146,478,537,539,563],[86,100,146,530,537,538,539,542,545,551,563,579,585],[86,100,146,537,539,551,585,1449],[86,100,146,537,538,539,551],[100,146,478,537,539,542,551,563,704,1380],[86,100,146,478,537,538,539,542,551,563,579,704,792,1261,1380,1415,1430,1431,1432,1442,1444,1445,1446,1450],[86,100,146,478,537,538,539,542,563,579,592,704,1261,1380],[86,100,146,520,526,528,529,530,537,539,542,545,546,556,562,563,592,594,1454,1455,1456,1459,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474],[100,146,530,537,538,539,542,545,551,555],[86,100,146,530,537,539,542],[86,100,146,530,537,538,539],[100,146,540,543],[100,146,537,538,545,551,585],[100,146,520,537,538,539,542,545,551,555,579,585],[100,146,530,537,538,539,542,545,551,555,556,579,585,1431],[100,146,530,537,538,539,542,545,551,555,579,1431,1458],[100,146,530,537,539,542,585],[100,146,537,538,542,551,555,579,585,1431],[100,146,537,538,551,555,579,585],[100,146,537,538,551,579,585],[100,146,530,537,538,539,542,551,585,1431],[100,146,537,538,551,579,585,1431],[100,146,537,538,539,542,551,585,1461],[100,146,530,537,538,539,542,551,555,579,585,1431],[100,146,547,548,557,558,559,560,561],[86,100,146,520,530,545],[86,100,146,530,545,556],[86,100,146,530,545],[86,100,146,526,530,545,546],[86,100,146,530,539,545],[100,146,537,538,539,542,545,563],[86,100,146,530,537,538,539,544,545,563,586],[100,146,564,565,587,593],[100,146,530,537,539,542,563],[100,146,530,537,539,542,563,586,592],[100,146,551,579,704],[100,146,478,539,579,804],[86,100,146,539,718],[86,100,146,539],[100,146,539,579,805],[86,100,146,537,541,1460],[86,100,146,534,541],[86,100,146,531,534,541],[86,100,146,531,534,536],[86,100,146,537,539,541,1257],[86,100,146,541],[86,100,146,539,541,1260],[86,100,146,539,541,585,1443],[86,100,146,539,541,581,584],[86,100,146,541,1457],[86,100,146,539,541,814],[86,100,146,539,1432],[86,100,146,536],[86,100,146,536,550],[86,100,146,541,1441],[86,100,146,541,1488],[86,100,146,536,539,578],[86,100,146,539,541,581],[86,100,146,536,1448],[86,100,146,541,554],[86,100,146,536,591],[86,100,146,541,1491],[100,146,532,535],[86,100,146,583],[86,100,146,521,523,524,526,528,529],[86,100,146,521,530],[100,146,508,700],[86,100,146,478,537,538,539,718,719,805,810,815,816],[100,146,509,702],[100,146,524,525,526,527],[100,146,704,1502],[100,146,706,1502],[100,146,524,530],[100,146,522],[100,146,539,718],[100,146,704,791],[100,146,791],[100,146,507,508,509,1503],[100,146,711,717],[100,146,539,711,717],[100,146,704,711,717],[100,146,706,707,711,717,799],[100,146,704]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"2ab096661c711e4a81cc464fa1e6feb929a54f5340b46b0a07ac6bbf857471f0","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"196cb558a13d4533a5163286f30b0509ce0210e4b316c56c38d4c0fd2fb38405","affectsGlobalScope":true,"impliedFormat":1},{"version":"73f78680d4c08509933daf80947902f6ff41b6230f94dd002ae372620adb0f60","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5239f5c01bcfa9cd32f37c496cf19c61d69d37e48be9de612b541aac915805b","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"023a61743079dd96f914f6e04f8dbd1b4535c1e6c1a489cc889f4f1fa749fc5f","affectsGlobalScope":true},{"version":"170d4db14678c68178ee8a3d5a990d5afb759ecb6ec44dbd885c50f6da6204f6","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a8eb4ebffd85e589a1cc7c178e291626c359543403d58c9cd22b81fab5b1fb9","impliedFormat":1},{"version":"0ff1b165090b491f5e1407ae680b9a0bc3806dc56827ec85f93c57390491e732","impliedFormat":1},{"version":"acd8fd5090ac73902278889c38336ff3f48af6ba03aa665eb34a75e7ba1dccc4","impliedFormat":1},{"version":"d6258883868fb2680d2ca96bc8b1352cab69874581493e6d52680c5ffecdb6cc","impliedFormat":1},{"version":"1b61d259de5350f8b1e5db06290d31eaebebc6baafd5f79d314b5af9256d7153","impliedFormat":1},{"version":"f258e3960f324a956fc76a3d3d9e964fff2244ff5859dcc6ce5951e5413ca826","impliedFormat":1},{"version":"643f7232d07bf75e15bd8f658f664d6183a0efaca5eb84b48201c7671a266979","impliedFormat":1},{"version":"0f6666b58e9276ac3a38fdc80993d19208442d6027ab885580d93aec76b4ef00","impliedFormat":1},{"version":"05fd364b8ef02fb1e174fbac8b825bdb1e5a36a016997c8e421f5fab0a6da0a0","impliedFormat":1},{"version":"631eff75b0e35d1b1b31081d55209abc43e16b49426546ab5a9b40bdd40b1f60","impliedFormat":1},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","affectsGlobalScope":true,"impliedFormat":1},{"version":"ba481bca06f37d3f2c137ce343c7d5937029b2468f8e26111f3c9d9963d6568d","affectsGlobalScope":true,"impliedFormat":1},{"version":"6d9ef24f9a22a88e3e9b3b3d8c40ab1ddb0853f1bfbd5c843c37800138437b61","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"2cbe0621042e2a68c7cbce5dfed3906a1862a16a7d496010636cdbdb91341c0f","affectsGlobalScope":true,"impliedFormat":1},{"version":"e2677634fe27e87348825bb041651e22d50a613e2fdf6a4a3ade971d71bac37e","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"8c0bcd6c6b67b4b503c11e91a1fb91522ed585900eab2ab1f61bba7d7caa9d6f","impliedFormat":1},{"version":"8cd19276b6590b3ebbeeb030ac271871b9ed0afc3074ac88a94ed2449174b776","affectsGlobalScope":true,"impliedFormat":1},{"version":"696eb8d28f5949b87d894b26dc97318ef944c794a9a4e4f62360cd1d1958014b","impliedFormat":1},{"version":"3f8fa3061bd7402970b399300880d55257953ee6d3cd408722cb9ac20126460c","impliedFormat":1},{"version":"35ec8b6760fd7138bbf5809b84551e31028fb2ba7b6dc91d95d098bf212ca8b4","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"68bd56c92c2bd7d2339457eb84d63e7de3bd56a69b25f3576e1568d21a162398","affectsGlobalScope":true,"impliedFormat":1},{"version":"3e93b123f7c2944969d291b35fed2af79a6e9e27fdd5faa99748a51c07c02d28","impliedFormat":1},{"version":"9d19808c8c291a9010a6c788e8532a2da70f811adb431c97520803e0ec649991","impliedFormat":1},{"version":"87aad3dd9752067dc875cfaa466fc44246451c0c560b820796bdd528e29bef40","impliedFormat":1},{"version":"4aacb0dd020eeaef65426153686cc639a78ec2885dc72ad220be1d25f1a439df","impliedFormat":1},{"version":"f0bd7e6d931657b59605c44112eaf8b980ba7f957a5051ed21cb93d978cf2f45","impliedFormat":1},{"version":"8db0ae9cb14d9955b14c214f34dae1b9ef2baee2fe4ce794a4cd3ac2531e3255","affectsGlobalScope":true,"impliedFormat":1},{"version":"15fc6f7512c86810273af28f224251a5a879e4261b4d4c7e532abfbfc3983134","impliedFormat":1},{"version":"58adba1a8ab2d10b54dc1dced4e41f4e7c9772cbbac40939c0dc8ce2cdb1d442","impliedFormat":1},{"version":"2fd4c143eff88dabb57701e6a40e02a4dbc36d5eb1362e7964d32028056a782b","impliedFormat":1},{"version":"714435130b9015fae551788df2a88038471a5a11eb471f27c4ede86552842bc9","impliedFormat":1},{"version":"855cd5f7eb396f5f1ab1bc0f8580339bff77b68a770f84c6b254e319bbfd1ac7","impliedFormat":1},{"version":"5650cf3dace09e7c25d384e3e6b818b938f68f4e8de96f52d9c5a1b3db068e86","impliedFormat":1},{"version":"1354ca5c38bd3fd3836a68e0f7c9f91f172582ba30ab15bb8c075891b91502b7","affectsGlobalScope":true,"impliedFormat":1},{"version":"27fdb0da0daf3b337c5530c5f266efe046a6ceb606e395b346974e4360c36419","impliedFormat":1},{"version":"2d2fcaab481b31a5882065c7951255703ddbe1c0e507af56ea42d79ac3911201","impliedFormat":1},{"version":"afbe24ab0d74694372baa632ecb28bb375be53f3be53f9b07ecd7fc994907de5","impliedFormat":1},{"version":"ca867399f7db82df981d6915bcbb2d81131d7d1ef683bc782b59f71dda59bc85","affectsGlobalScope":true,"impliedFormat":1},{"version":"f1dc4bc37e2476766f29718f5006981009e2c7470ddd538d87be731b8bb24280","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e043a1bc8fbf2a255bccf9bf27e0f1caf916c3b0518ea34aa72357c0afd42ec","impliedFormat":1},{"version":"b4f70ec656a11d570e1a9edce07d118cd58d9760239e2ece99306ee9dfe61d02","impliedFormat":1},{"version":"3bc2f1e2c95c04048212c569ed38e338873f6a8593930cf5a7ef24ffb38fc3b6","impliedFormat":1},{"version":"6e70e9570e98aae2b825b533aa6292b6abd542e8d9f6e9475e88e1d7ba17c866","impliedFormat":1},{"version":"f9d9d753d430ed050dc1bf2667a1bab711ccbb1c1507183d794cc195a5b085cc","impliedFormat":1},{"version":"9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","impliedFormat":1},{"version":"47ab634529c5955b6ad793474ae188fce3e6163e3a3fb5edd7e0e48f14435333","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"0225ecb9ed86bdb7a2c7fd01f1556906902929377b44483dc4b83e03b3ef227d","affectsGlobalScope":true,"impliedFormat":1},{"version":"74cf591a0f63db318651e0e04cb55f8791385f86e987a67fd4d2eaab8191f730","impliedFormat":1},{"version":"5eab9b3dc9b34f185417342436ec3f106898da5f4801992d8ff38ab3aff346b5","impliedFormat":1},{"version":"12ed4559eba17cd977aa0db658d25c4047067444b51acfdcbf38470630642b23","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3ffabc95802521e1e4bcba4c88d8615176dc6e09111d920c7a213bdda6e1d65","impliedFormat":1},{"version":"f9ab232778f2842ffd6955f88b1049982fa2ecb764d129ee4893cbc290f41977","impliedFormat":1},{"version":"ae56f65caf3be91108707bd8dfbccc2a57a91feb5daabf7165a06a945545ed26","impliedFormat":1},{"version":"a136d5de521da20f31631a0a96bf712370779d1c05b7015d7019a9b2a0446ca9","impliedFormat":1},{"version":"c3b41e74b9a84b88b1dca61ec39eee25c0dbc8e7d519ba11bb070918cfacf656","affectsGlobalScope":true,"impliedFormat":1},{"version":"4737a9dc24d0e68b734e6cfbcea0c15a2cfafeb493485e27905f7856988c6b29","affectsGlobalScope":true,"impliedFormat":1},{"version":"36d8d3e7506b631c9582c251a2c0b8a28855af3f76719b12b534c6edf952748d","impliedFormat":1},{"version":"1ca69210cc42729e7ca97d3a9ad48f2e9cb0042bada4075b588ae5387debd318","impliedFormat":1},{"version":"f5ebe66baaf7c552cfa59d75f2bfba679f329204847db3cec385acda245e574e","impliedFormat":1},{"version":"ed59add13139f84da271cafd32e2171876b0a0af2f798d0c663e8eeb867732cf","affectsGlobalScope":true,"impliedFormat":1},{"version":"05db535df8bdc30d9116fe754a3473d1b6479afbc14ae8eb18b605c62677d518","impliedFormat":1},{"version":"b1810689b76fd473bd12cc9ee219f8e62f54a7d08019a235d07424afbf074d25","impliedFormat":1},{"version":"24259d3dae14de55d22f8b3d3e96954e5175a925ab6a830dc05a1993d4794eda","impliedFormat":1},{"version":"05069916ab9175271d15f9315a41ab28401561fe0e5f85f295c43538a38bd62e","impliedFormat":1},{"version":"be1cc4d94ea60cbe567bc29ed479d42587bf1e6cba490f123d329976b0fe4ee5","impliedFormat":1},{"version":"42bc0e1a903408137c3df2b06dfd7e402cdab5bbfa5fcfb871b22ebfdb30bd0b","impliedFormat":1},{"version":"9894dafe342b976d251aac58e616ac6df8db91fb9d98934ff9dd103e9e82578f","impliedFormat":1},{"version":"413df52d4ea14472c2fa5bee62f7a40abd1eb49be0b9722ee01ee4e52e63beb2","impliedFormat":1},{"version":"db6d2d9daad8a6d83f281af12ce4355a20b9a3e71b82b9f57cddcca0a8964a96","impliedFormat":1},{"version":"829b9e6028b29e6a8b1c01ddb713efe59da04d857089298fa79acbdb3cfcfdef","impliedFormat":1},{"version":"24f8562308dd8ba6013120557fa7b44950b619610b2c6cb8784c79f11e3c4f90","impliedFormat":1},{"version":"c696aa0753345ae6bdaab0e2d4b2053ee76be5140470860eef7e6cadc9f725a1","impliedFormat":1},{"version":"a86f82d646a739041d6702101afa82dcb935c416dd93cbca7fd754fd0282ce1f","impliedFormat":1},{"version":"ad0d1d75d129b1c80f911be438d6b61bfa8703930a8ff2be2f0e1f8a91841c64","impliedFormat":1},{"version":"ce75b1aebb33d510ff28af960a9221410a3eaf7f18fc5f21f9404075fba77256","impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":1},{"version":"496bbf339f3838c41f164238543e9fe5f1f10659cb30b68903851618464b98ba","impliedFormat":1},{"version":"5178eb4415a172c287c711dc60a619e110c3fd0b7de01ed0627e51a5336aa09c","impliedFormat":1},{"version":"ca6e5264278b53345bc1ce95f42fb0a8b733a09e3d6479c6ccfca55cdc45038c","impliedFormat":1},{"version":"9e2739b32f741859263fdba0244c194ca8e96da49b430377930b8f721d77c000","impliedFormat":1},{"version":"fb1d8e814a3eeb5101ca13515e0548e112bd1ff3fb358ece535b93e94adf5a3a","impliedFormat":1},{"version":"ffa495b17a5ef1d0399586b590bd281056cee6ce3583e34f39926f8dcc6ecdb5","impliedFormat":1},{"version":"98b18458acb46072947aabeeeab1e410f047e0cacc972943059ca5500b0a5e95","impliedFormat":1},{"version":"361e2b13c6765d7f85bb7600b48fde782b90c7c41105b7dab1f6e7871071ba20","impliedFormat":1},{"version":"c86fe861cf1b4c46a0fb7d74dffe596cf679a2e5e8b1456881313170f092e3fa","impliedFormat":1},{"version":"b6db56e4903e9c32e533b78ac85522de734b3d3a8541bf24d256058d464bf04b","impliedFormat":1},{"version":"24daa0366f837d22c94a5c0bad5bf1fd0f6b29e1fae92dc47c3072c3fdb2fbd5","impliedFormat":1},{"version":"570bb5a00836ffad3e4127f6adf581bfc4535737d8ff763a4d6f4cc877e60d98","impliedFormat":1},{"version":"889c00f3d32091841268f0b994beba4dceaa5df7573be12c2c829d7c5fbc232c","impliedFormat":1},{"version":"65f43099ded6073336e697512d9b80f2d4fec3182b7b2316abf712e84104db00","impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":1},{"version":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","impliedFormat":1},{"version":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"acf5a2ac47b59ca07afa9abbd2b31d001bf7448b041927befae2ea5b1951d9f9","impliedFormat":1},{"version":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":1},{"version":"d71291eff1e19d8762a908ba947e891af44749f3a2cbc5bd2ec4b72f72ea795f","impliedFormat":1},{"version":"c0480e03db4b816dff2682b347c95f2177699525c54e7e6f6aa8ded890b76be7","impliedFormat":1},{"version":"27ab780875bcbb65e09da7496f2ca36288b0c541abaa75c311450a077d54ec15","impliedFormat":1},{"version":"b620391fe8060cf9bedc176a4d01366e6574d7a71e0ac0ab344a4e76576fcbb8","impliedFormat":1},{"version":"380647d8f3b7f852cca6d154a376dbf8ac620a2f12b936594504a8a852e71d2f","impliedFormat":1},{"version":"208c9af9429dd3c76f5927b971263174aaa4bc7621ddec63f163640cbd3c473c","impliedFormat":1},{"version":"6459054aabb306821a043e02b89d54da508e3a6966601a41e71c166e4ea1474f","impliedFormat":1},{"version":"a23185bc5ef590c287c28a91baf280367b50ae4ea40327366ad01f6f4a8edbc5","impliedFormat":1},{"version":"bb37588926aba35c9283fe8d46ebf4e79ffe976343105f5c6d45f282793352b2","impliedFormat":1},{"version":"002eae065e6960458bda3cf695e578b0d1e2785523476f8a9170b103c709cd4f","impliedFormat":1},{"version":"c83bb0c9c5645a46c68356c2f73fdc9de339ce77f7f45a954f560c7e0b8d5ebb","impliedFormat":1},{"version":"05c97cddbaf99978f83d96de2d8af86aded9332592f08ce4a284d72d0952c391","impliedFormat":1},{"version":"72179f9dd22a86deaad4cc3490eb0fe69ee084d503b686985965654013f1391b","impliedFormat":1},{"version":"2e6114a7dd6feeef85b2c80120fdbfb59a5529c0dcc5bfa8447b6996c97a69f5","impliedFormat":1},{"version":"7b6ff760c8a240b40dab6e4419b989f06a5b782f4710d2967e67c695ef3e93c4","impliedFormat":1},{"version":"c8f004e6036aa1c764ad4ec543cf89a5c1893a9535c80ef3f2b653e370de45e6","impliedFormat":1},{"version":"dd80b1e600d00f5c6a6ba23f455b84a7db121219e68f89f10552c54ba46e4dc9","impliedFormat":1},{"version":"b064c36f35de7387d71c599bfcf28875849a1dbc733e82bd26cae3d1cd060521","impliedFormat":1},{"version":"6a148329edecbda07c21098639ef4254ef7869fb25a69f58e5d6a8b7b69d4236","impliedFormat":1},{"version":"8de9fe97fa9e00ec00666fa77ab6e91b35d25af8ca75dabcb01e14ad3299b150","impliedFormat":1},{"version":"f63ab283a1c8f5c79fabe7ca4ef85f9633339c4f0e822fce6a767f9d59282af2","impliedFormat":1},{"version":"dba114fb6a32b355a9cfc26ca2276834d72fe0e94cd2c3494005547025015369","impliedFormat":1},{"version":"a54c996c8870ef1728a2c1fa9b8eaec0bf4a8001cd2583c02dd5869289465b10","impliedFormat":1},{"version":"3e7efde639c6a6c3edb9847b3f61e308bf7a69685b92f665048c45132f51c218","impliedFormat":1},{"version":"df45ca1176e6ac211eae7ddf51336dc075c5314bc5c253651bae639defd5eec5","impliedFormat":1},{"version":"3754982006a3b32c502cff0867ca83584f7a43b1035989ca73603f400de13c96","impliedFormat":1},{"version":"a30ae9bb8a8fa7b90f24b8a0496702063ae4fe75deb27da731ed4a03b2eb6631","impliedFormat":1},{"version":"f974e4a06953682a2c15d5bd5114c0284d5abf8bc0fe4da25cb9159427b70072","impliedFormat":1},{"version":"50256e9c31318487f3752b7ac12ff365c8949953e04568009c8705db802776fb","impliedFormat":1},{"version":"7d73b24e7bf31dfb8a931ca6c4245f6bb0814dfae17e4b60c9e194a631fe5f7b","impliedFormat":1},{"version":"413586add0cfe7369b64979d4ec2ed56c3f771c0667fbde1bf1f10063ede0b08","impliedFormat":1},{"version":"06472528e998d152375ad3bd8ebcb69ff4694fd8d2effaf60a9d9f25a37a097a","impliedFormat":1},{"version":"50b5bc34ce6b12eccb76214b51aadfa56572aa6cc79c2b9455cdbb3d6c76af1d","impliedFormat":1},{"version":"b7e16ef7f646a50991119b205794ebfd3a4d8f8e0f314981ebbe991639023d0e","impliedFormat":1},{"version":"42c169fb8c2d42f4f668c624a9a11e719d5d07dacbebb63cbcf7ef365b0a75b3","impliedFormat":1},{"version":"a401617604fa1f6ce437b81689563dfdc377069e4c58465dbd8d16069aede0a5","impliedFormat":1},{"version":"e9dd71cf12123419c60dab867d44fbee5c358169f99529121eaef277f5c83531","impliedFormat":1},{"version":"5b6a189ba3a0befa1f5d9cb028eb9eec2af2089c32f04ff50e2411f63d70f25d","impliedFormat":1},{"version":"d6e73f8010935b7b4c7487b6fb13ea197cc610f0965b759bec03a561ccf8423a","impliedFormat":1},{"version":"174f3864e398f3f33f9a446a4f403d55a892aa55328cf6686135dfaf9e171657","impliedFormat":1},{"version":"824c76aec8d8c7e65769688cbee102238c0ef421ed6686f41b2a7d8e7e78a931","impliedFormat":1},{"version":"75b868be3463d5a8cfc0d9396f0a3d973b8c297401d00bfb008a42ab16643f13","impliedFormat":1},{"version":"15a234e5031b19c48a69ccc1607522d6e4b50f57d308ecb7fe863d44cd9f9eb3","impliedFormat":1},{"version":"d682336018141807fb602709e2d95a192828fcb8d5ba06dda3833a8ea98f69e3","impliedFormat":1},{"version":"6124e973eab8c52cabf3c07575204efc1784aca6b0a30c79eb85fe240a857efa","impliedFormat":1},{"version":"0d891735a21edc75df51f3eb995e18149e119d1ce22fd40db2b260c5960b914e","impliedFormat":1},{"version":"3b414b99a73171e1c4b7b7714e26b87d6c5cb03d200352da5342ab4088a54c85","impliedFormat":1},{"version":"4fbd3116e00ed3a6410499924b6403cc9367fdca303e34838129b328058ede40","impliedFormat":1},{"version":"b01bd582a6e41457bc56e6f0f9de4cb17f33f5f3843a7cf8210ac9c18472fb0f","impliedFormat":1},{"version":"0a437ae178f999b46b6153d79095b60c42c996bc0458c04955f1c996dc68b971","impliedFormat":1},{"version":"74b2a5e5197bd0f2e0077a1ea7c07455bbea67b87b0869d9786d55104006784f","impliedFormat":1},{"version":"4a7baeb6325920044f66c0f8e5e6f1f52e06e6d87588d837bdf44feb6f35c664","impliedFormat":1},{"version":"6dcf60530c25194a9ee0962230e874ff29d34c59605d8e069a49928759a17e0a","impliedFormat":1},{"version":"7274fbffbd7c9589d8d0ffba68157237afd5cecff1e99881ea3399127e60572f","impliedFormat":1},{"version":"1a42d2ec31a1fe62fdc51591768695ed4a2dc64c01be113e7ff22890bebb5e3f","impliedFormat":1},{"version":"1a82deef4c1d39f6882f28d275cad4c01f907b9b39be9cbc472fcf2cf051e05b","impliedFormat":1},{"version":"c5426dbfc1cf90532f66965a7aa8c1136a78d4d0f96d8180ecbfc11d7722f1a5","impliedFormat":1},{"version":"65a15fc47900787c0bd18b603afb98d33ede930bed1798fc984d5ebb78b26cf9","impliedFormat":1},{"version":"9d202701f6e0744adb6314d03d2eb8fc994798fc83d91b691b75b07626a69801","impliedFormat":1},{"version":"de9d2df7663e64e3a91bf495f315a7577e23ba088f2949d5ce9ec96f44fba37d","impliedFormat":1},{"version":"c7af78a2ea7cb1cd009cfb5bdb48cd0b03dad3b54f6da7aab615c2e9e9d570c5","impliedFormat":1},{"version":"1ee45496b5f8bdee6f7abc233355898e5bf9bd51255db65f5ff7ede617ca0027","impliedFormat":1},{"version":"0c7c947ff881c4274c0800deaa0086971e0bfe51f89a33bd3048eaa3792d4876","affectsGlobalScope":true,"impliedFormat":1},{"version":"db01d18853469bcb5601b9fc9826931cc84cc1a1944b33cad76fd6f1e3d8c544","affectsGlobalScope":true,"impliedFormat":1},{"version":"a8f8e6ab2fa07b45251f403548b78eaf2022f3c2254df3dc186cb2671fe4996d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fa6c12a7c0f6b84d512f200690bfc74819e99efae69e4c95c4cd30f6884c526e","impliedFormat":1},{"version":"f1c32f9ce9c497da4dc215c3bc84b722ea02497d35f9134db3bb40a8d918b92b","impliedFormat":1},{"version":"b73c319af2cc3ef8f6421308a250f328836531ea3761823b4cabbd133047aefa","affectsGlobalScope":true,"impliedFormat":1},{"version":"e433b0337b8106909e7953015e8fa3f2d30797cea27141d1c5b135365bb975a6","impliedFormat":1},{"version":"15b36126e0089bfef173ab61329e8286ce74af5e809d8a72edcafd0cc049057f","impliedFormat":1},{"version":"ddff7fc6edbdc5163a09e22bf8df7bef75f75369ebd7ecea95ba55c4386e2441","impliedFormat":1},{"version":"106c6025f1d99fd468fd8bf6e5bda724e11e5905a4076c5d29790b6c3745e50c","impliedFormat":1},{"version":"a57b1802794433adec9ff3fed12aa79d671faed86c49b09e02e1ac41b4f1d33a","impliedFormat":1},{"version":"ad10d4f0517599cdeca7755b930f148804e3e0e5b5a3847adce0f1f71bbccd74","impliedFormat":1},{"version":"1042064ece5bb47d6aba91648fbe0635c17c600ebdf567588b4ca715602f0a9d","impliedFormat":1},{"version":"c49469a5349b3cc1965710b5b0f98ed6c028686aa8450bcb3796728873eb923e","impliedFormat":1},{"version":"4a889f2c763edb4d55cb624257272ac10d04a1cad2ed2948b10ed4a7fda2a428","impliedFormat":1},{"version":"7bb79aa2fead87d9d56294ef71e056487e848d7b550c9a367523ee5416c44cfa","impliedFormat":1},{"version":"72d63643a657c02d3e51cd99a08b47c9b020a565c55f246907050d3c8a5e77fb","impliedFormat":1},{"version":"1d415445ea58f8033ba199703e55ff7483c52ac6742075b803bd3e7bbe9f5d61","impliedFormat":1},{"version":"d6406c629bb3efc31aedb2de809bef471e475c86c7e67f3ef9b676b5d7e0d6b2","impliedFormat":1},{"version":"27ff4196654e6373c9af16b6165120e2dd2169f9ad6abb5c935af5abd8c7938c","impliedFormat":1},{"version":"24428762d0c97b44c4784d28eee9556547167c4592d20d542a79243f7ca6a73f","impliedFormat":1},{"version":"8c030e515014c10a2b98f9f48408e3ba18023dfd3f56e3312c6c2f3ae1f55a16","impliedFormat":1},{"version":"dafc31e9e8751f437122eb8582b93d477e002839864410ff782504a12f2a550c","impliedFormat":1},{"version":"754498c5208ce3c5134f6eabd49b25cf5e1a042373515718953581636491f3c3","impliedFormat":1},{"version":"9c82171d836c47486074e4ca8e059735bf97b205e70b196535b5efd40cbe1bc5","impliedFormat":1},{"version":"f56bdc6884648806d34bc66d31cdb787c4718d04105ce2cd88535db214631f82","impliedFormat":1},{"version":"633d58a237f4bb25ec7d565e4ffa32cecdcee8660ac12189c4351c52557cee9e","impliedFormat":1},{"version":"2e4f37ffe8862b14d8e24ae8763daaa8340c0df0b859d9a9733def0eee7562d9","impliedFormat":1},{"version":"13283350547389802aa35d9f2188effaeac805499169a06ef5cd77ce2a0bd63f","impliedFormat":1},{"version":"ce791f6ea807560f08065d1af6014581eeb54a05abd73294777a281b6dfd73c2","impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","impliedFormat":1},{"version":"49f95e989b4632c6c2a578cc0078ee19a5831832d79cc59abecf5160ea71abad","impliedFormat":1},{"version":"9666533332f26e8995e4d6fe472bdeec9f15d405693723e6497bf94120c566c8","impliedFormat":1},{"version":"ce0df82a9ae6f914ba08409d4d883983cc08e6d59eb2df02d8e4d68309e7848b","impliedFormat":1},{"version":"796273b2edc72e78a04e86d7c58ae94d370ab93a0ddf40b1aa85a37a1c29ecd7","impliedFormat":1},{"version":"5df15a69187d737d6d8d066e189ae4f97e41f4d53712a46b2710ff9f8563ec9f","impliedFormat":1},{"version":"e17cd049a1448de4944800399daa4a64c5db8657cc9be7ef46be66e2a2cd0e7c","impliedFormat":1},{"version":"43fa6ea8714e18adc312b30450b13562949ba2f205a1972a459180fa54471018","impliedFormat":1},{"version":"6e89c2c177347d90916bad67714d0fb473f7e37fb3ce912f4ed521fe2892cd0d","impliedFormat":1},{"version":"43ba4f2fa8c698f5c304d21a3ef596741e8e85a810b7c1f9b692653791d8d97a","impliedFormat":1},{"version":"4d4927cbee21750904af7acf940c5e3c491b4d5ebc676530211e389dd375607a","impliedFormat":1},{"version":"72105519d0390262cf0abe84cf41c926ade0ff475d35eb21307b2f94de985778","impliedFormat":1},{"version":"8a97e578a9bc40eb4f1b0ca78f476f2e9154ecbbfd5567ee72943bab37fc156a","impliedFormat":1},{"version":"c857e0aae3f5f444abd791ec81206020fbcc1223e187316677e026d1c1d6fe08","impliedFormat":1},{"version":"ccf6dd45b708fb74ba9ed0f2478d4eb9195c9dfef0ff83a6092fa3cf2ff53b4f","impliedFormat":1},{"version":"2d7db1d73456e8c5075387d4240c29a2a900847f9c1bff106a2e490da8fbd457","impliedFormat":1},{"version":"2b15c805f48e4e970f8ec0b1915f22d13ca6212375e8987663e2ef5f0205e832","impliedFormat":1},{"version":"f22d05663d873ee7a600faf78abb67f3f719d32266803440cf11d5db7ac0cab2","impliedFormat":1},{"version":"d93c544ad20197b3976b0716c6d5cd5994e71165985d31dcab6e1f77feb4b8f2","impliedFormat":1},{"version":"35069c2c417bd7443ae7c7cafd1de02f665bf015479fec998985ffbbf500628c","impliedFormat":1},{"version":"a8b1c79a833ee148251e88a2553d02ce1641d71d2921cce28e79678f3d8b96aa","impliedFormat":1},{"version":"126d4f950d2bba0bd45b3a86c76554d4126c16339e257e6d2fabf8b6bf1ce00c","impliedFormat":1},{"version":"7e0b7f91c5ab6e33f511efc640d36e6f933510b11be24f98836a20a2dc914c2d","impliedFormat":1},{"version":"045b752f44bf9bbdcaffd882424ab0e15cb8d11fa94e1448942e338c8ef19fba","impliedFormat":1},{"version":"2894c56cad581928bb37607810af011764a2f511f575d28c9f4af0f2ef02d1ab","impliedFormat":1},{"version":"0a72186f94215d020cb386f7dca81d7495ab6c17066eb07d0f44a5bf33c1b21a","impliedFormat":1},{"version":"2d3cc2211f352f46ea6b7cf2c751c141ffcdf514d6e7ae7ee20b7b6742da313f","impliedFormat":1},{"version":"c75445151ff8b77d9923191efed7203985b1a9e09eccf4b054e7be864e27923d","impliedFormat":1},{"version":"0aedb02516baf3e66b2c1db9fef50666d6ed257edac0f866ea32f1aa05aa474f","impliedFormat":1},{"version":"fa8a8fbf91ee2a4779496225f0312aac6635b0f21aa09cdafa4283fe32d519c5","affectsGlobalScope":true,"impliedFormat":1},{"version":"0e8aef93d79b000deb6ec336b5645c87de167168e184e84521886f9ecc69a4b5","impliedFormat":1},{"version":"56ccb49443bfb72e5952f7012f0de1a8679f9f75fc93a5c1ac0bafb28725fc5f","impliedFormat":1},{"version":"20fa37b636fdcc1746ea0738f733d0aed17890d1cd7cb1b2f37010222c23f13e","impliedFormat":1},{"version":"d90b9f1520366d713a73bd30c5a9eb0040d0fb6076aff370796bc776fd705943","impliedFormat":1},{"version":"88e9caa9c5d2ba629240b5913842e7c57c5c0315383b8dc9d436ef2b60f1c391","impliedFormat":1},{"version":"19df3488557c2fc9b4d8f0bac0fd20fb59aa19dec67c81f93813951a81a867f8","affectsGlobalScope":true,"impliedFormat":1},{"version":"a15cf91ab29d3667801562a95730c5f0d96e1d87dffa00a8a91da0002e89fd2d","affectsGlobalScope":true,"impliedFormat":1},{"version":"bef86adb77316505c6b471da1d9b8c9e428867c2566270e8894d4d773a1c4dc2","impliedFormat":1},{"version":"de7052bfee2981443498239a90c04ea5cc07065d5b9bb61b12cb6c84313ad4ef","impliedFormat":1},{"version":"a3e7d932dc9c09daa99141a8e4800fc6c58c625af0d4bbb017773dc36da75426","impliedFormat":1},{"version":"43e96a3d5d1411ab40ba2f61d6a3192e58177bcf3b133a80ad2a16591611726d","impliedFormat":1},{"version":"4a2edd238d9104eac35b60d727f1123de5062f452b70ed8e0366cb36387dfdfd","impliedFormat":1},{"version":"ca921bf56756cb6fe957f6af693a35251b134fb932dc13f3dfff0bb7106f80b4","impliedFormat":1},{"version":"fee92c97f1aa59eb7098a0cc34ff4df7e6b11bae71526aca84359a2575f313d8","impliedFormat":1},{"version":"0bd0297484aacea217d0b76e55452862da3c5d9e33b24430e0719d1161657225","impliedFormat":1},{"version":"2ab6d334bcbf2aff3acfc4fd8c73ecd82b981d3c3aa47b3f3b89281772286904","impliedFormat":1},{"version":"d07cbc787a997d83f7bde3877fec5fb5b12ce8c1b7047eb792996ed9726b4dde","impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","impliedFormat":1},{"version":"4805f6161c2c8cefb8d3b8bd96a080c0fe8dbc9315f6ad2e53238f9a79e528a6","impliedFormat":1},{"version":"b83cb14474fa60c5f3ec660146b97d122f0735627f80d82dd03e8caa39b4388c","impliedFormat":1},{"version":"f374cb24e93e7798c4d9e83ff872fa52d2cdb36306392b840a6ddf46cb925cb6","impliedFormat":1},{"version":"49179c6a23701c642bd99abe30d996919748014848b738d8e85181fc159685ff","impliedFormat":1},{"version":"b73cbf0a72c8800cf8f96a9acfe94f3ad32ca71342a8908b8ae484d61113f647","impliedFormat":1},{"version":"bae6dd176832f6423966647382c0d7ba9e63f8c167522f09a982f086cd4e8b23","impliedFormat":1},{"version":"20865ac316b8893c1a0cc383ccfc1801443fbcc2a7255be166cf90d03fac88c9","impliedFormat":1},{"version":"c9958eb32126a3843deedda8c22fb97024aa5d6dd588b90af2d7f2bfac540f23","impliedFormat":1},{"version":"461d0ad8ae5f2ff981778af912ba71b37a8426a33301daa00f21c6ccb27f8156","impliedFormat":1},{"version":"e927c2c13c4eaf0a7f17e6022eee8519eb29ef42c4c13a31e81a611ab8c95577","impliedFormat":1},{"version":"fcafff163ca5e66d3b87126e756e1b6dfa8c526aa9cd2a2b0a9da837d81bbd72","impliedFormat":1},{"version":"70246ad95ad8a22bdfe806cb5d383a26c0c6e58e7207ab9c431f1cb175aca657","impliedFormat":1},{"version":"f00f3aa5d64ff46e600648b55a79dcd1333458f7a10da2ed594d9f0a44b76d0b","impliedFormat":1},{"version":"772d8d5eb158b6c92412c03228bd9902ccb1457d7a705b8129814a5d1a6308fc","impliedFormat":1},{"version":"45490817629431853543adcb91c0673c25af52a456479588b6486daba34f68bb","impliedFormat":1},{"version":"802e797bcab5663b2c9f63f51bdf67eff7c41bc64c0fd65e6da3e7941359e2f7","impliedFormat":1},{"version":"8b4327413e5af38cd8cb97c59f48c3c866015d5d642f28518e3a891c469f240e","impliedFormat":1},{"version":"8514c62ce38e58457d967e9e73f128eedc1378115f712b9eef7127f7c88f82ae","impliedFormat":1},{"version":"f1289e05358c546a5b664fbb35a27738954ec2cc6eb4137350353099d154fc62","impliedFormat":1},{"version":"4b20fcf10a5413680e39f5666464859fc56b1003e7dfe2405ced82371ebd49b6","impliedFormat":1},{"version":"1d17ba45cfbe77a9c7e0df92f7d95f3eefd49ee23d1104d0548b215be56945ad","impliedFormat":1},{"version":"f7d628893c9fa52ba3ab01bcb5e79191636c4331ee5667ecc6373cbccff8ae12","impliedFormat":1},{"version":"5b2323ca2d1bd97e1f32f09452908e015b012e0e4f958f649cbe0c8989a3fb4f","impliedFormat":1},{"version":"9f5a0f3ed33e363b7393223ba4f4af15c13ce94fe3dbdaa476afd2437553a7dd","impliedFormat":1},{"version":"46273e8c29816125d0d0b56ce9a849cc77f60f9a5ba627447501d214466f0ff3","impliedFormat":1},{"version":"d663134457d8d669ae0df34eabd57028bddc04fc444c4bc04bc5215afc91e1f4","impliedFormat":1},{"version":"985153f0deb9b4391110331a2f0c114019dbea90cba5ca68a4107700796e0d75","impliedFormat":1},{"version":"3af3584f79c57853028ef9421ec172539e1fe01853296dc05a9d615ade4ffaf6","impliedFormat":1},{"version":"f82579d87701d639ff4e3930a9b24f4ee13ca74221a9a3a792feb47f01881a9c","impliedFormat":1},{"version":"d7e5d5245a8ba34a274717d085174b2c9827722778129b0081fefd341cca8f55","impliedFormat":1},{"version":"d9d32f94056181c31f553b32ce41d0ef75004912e27450738d57efcd2409c324","impliedFormat":1},{"version":"752513f35f6cff294ffe02d6027c41373adf7bfa35e593dbfd53d95c203635ee","impliedFormat":1},{"version":"6c800b281b9e89e69165fd11536195488de3ff53004e55905e6c0059a2d8591e","impliedFormat":1},{"version":"7d4254b4c6c67a29d5e7f65e67d72540480ac2cfb041ca484847f5ae70480b62","impliedFormat":1},{"version":"1a7e2ea171726446850ec72f4d1525d547ff7e86724cc9e7eec509725752a758","impliedFormat":1},{"version":"8c901126d73f09ecdea4785e9a187d1ac4e793e07da308009db04a7283ec2f37","impliedFormat":1},{"version":"db97922b767bd2675fdfa71e08b49c38b7d2c847a1cc4a7274cb77be23b026f1","impliedFormat":1},{"version":"aab290b8e4b7c399f2c09b957666fc95335eb4522b2dd9ead1bf0cb64da6d6ee","impliedFormat":1},{"version":"94fe3281392e1015b22f39535878610b4fa6f1388dc8d78746be3bc4e4bb8950","impliedFormat":1},{"version":"2652448ac55a2010a1f71dd141f828b682298d39728f9871e1cdf8696ef443fd","impliedFormat":1},{"version":"06c25ddfc2242bd06c19f66c9eae4c46d937349a267810f89783680a1d7b5259","impliedFormat":1},{"version":"120599fd965257b1f4d0ff794bc696162832d9d8467224f4665f713a3119078b","impliedFormat":1},{"version":"5433f33b0a20300cca35d2f229a7fc20b0e8477c44be2affeb21cb464af60c76","impliedFormat":1},{"version":"db036c56f79186da50af66511d37d9fe77fa6793381927292d17f81f787bb195","impliedFormat":1},{"version":"bd4131091b773973ca5d2326c60b789ab1f5e02d8843b3587effe6e1ea7c9d86","impliedFormat":1},{"version":"c7f6485931085bf010fbaf46880a9b9ec1a285ad9dc8c695a9e936f5a48f34b4","impliedFormat":1},{"version":"14f6b927888a1112d662877a5966b05ac1bf7ed25d6c84386db4c23c95a5363b","impliedFormat":1},{"version":"6ac6715916fa75a1f7ebdfeacac09513b4d904b667d827b7535e84ff59679aff","impliedFormat":1},{"version":"0427df5c06fafc5fe126d14b9becd24160a288deff40e838bfbd92a35f8d0d00","impliedFormat":1},{"version":"90c54a02432d04e4246c87736e53a6a83084357acfeeba7a489c5422b22f5c7a","impliedFormat":1},{"version":"49c346823ba6d4b12278c12c977fb3a31c06b9ca719015978cb145eb86da1c61","impliedFormat":1},{"version":"bfac6e50eaa7e73bb66b7e052c38fdc8ccfc8dbde2777648642af33cf349f7f1","impliedFormat":1},{"version":"92f7c1a4da7fbfd67a2228d1687d5c2e1faa0ba865a94d3550a3941d7527a45d","impliedFormat":1},{"version":"f53b120213a9289d9a26f5af90c4c686dd71d91487a0aa5451a38366c70dc64b","impliedFormat":1},{"version":"83fe880c090afe485a5c02262c0b7cdd76a299a50c48d9bde02be8e908fb4ae6","impliedFormat":1},{"version":"0a372c2d12a259da78e21b25974d2878502f14d89c6d16b97bd9c5017ab1bc12","impliedFormat":1},{"version":"57d67b72e06059adc5e9454de26bbfe567d412b962a501d263c75c2db430f40e","impliedFormat":1},{"version":"6511e4503cf74c469c60aafd6589e4d14d5eb0a25f9bf043dcbecdf65f261972","impliedFormat":1},{"version":"ec1ca97598eda26b7a5e6c8053623acbd88e43be7c4d29c77ccd57abc4c43999","impliedFormat":1},{"version":"6e2261cd9836b2c25eecb13940d92c024ebed7f8efe23c4b084145cd3a13b8a6","impliedFormat":1},{"version":"a67b87d0281c97dfc1197ef28dfe397fc2c865ccd41f7e32b53f647184cc7307","impliedFormat":1},{"version":"771ffb773f1ddd562492a6b9aaca648192ac3f056f0e1d997678ff97dbb6bf9b","impliedFormat":1},{"version":"232f70c0cf2b432f3a6e56a8dc3417103eb162292a9fd376d51a3a9ea5fbbf6f","impliedFormat":1},{"version":"a47e6d954d22dd9ebb802e7e431b560ed7c581e79fb885e44dc92ed4f60d4c07","impliedFormat":1},{"version":"f019e57d2491c159d47a107fd90219a1734bdd2e25cd8d1db3c8fae5c6b414c4","impliedFormat":1},{"version":"8a0e762ceb20c7e72504feef83d709468a70af4abccb304f32d6b9bac1129b2c","impliedFormat":1},{"version":"d1c9bf292a54312888a77bb19dba5e2503ad803f5393beafd45d78d2f4fe9b48","impliedFormat":1},{"version":"9252d498a77517aab5d8d4b5eb9d71e4b225bbc7123df9713e08181de63180f6","impliedFormat":1},{"version":"cb8d8ef7b9ce8ed3e6f1c814fcbf3f90dab0cb8863079236784fc350746e27c4","impliedFormat":1},{"version":"35e6379c3f7cb27b111ad4c1aa69538fd8e788ab737b8ff7596a1b40e96f4f90","impliedFormat":1},{"version":"1fffe726740f9787f15b532e1dc870af3cd964dbe29e191e76121aa3dd8693f2","impliedFormat":1},{"version":"3be035da7bee86b4c3abf392e0edaa44fc6e45092995eefe36b39118c8a84068","affectsGlobalScope":true,"impliedFormat":1},{"version":"8f828825d077c2fa0ea606649faeb122749273a353daab23924fe674e98ba44c","impliedFormat":1},{"version":"2896c2e673a5d3bd9b4246811f79486a073cbb03950c3d252fba10003c57411a","impliedFormat":1},{"version":"616775f16134fa9d01fc677ad3f76e68c051a056c22ab552c64cc281a9686790","impliedFormat":1},{"version":"65c24a8baa2cca1de069a0ba9fba82a173690f52d7e2d0f1f7542d59d5eb4db0","impliedFormat":1},{"version":"f9fe6af238339a0e5f7563acee3178f51db37f32a2e7c09f85273098cee7ec49","impliedFormat":1},{"version":"407a06ba04eede4074eec470ecba2784cbb3bf4e7de56833b097dd90a2aa0651","impliedFormat":1},{"version":"77e71242e71ebf8528c5802993697878f0533db8f2299b4d36aa015bae08a79c","impliedFormat":1},{"version":"98a787be42bd92f8c2a37d7df5f13e5992da0d967fab794adbb7ee18370f9849","impliedFormat":1},{"version":"5c96bad5f78466785cdad664c056e9e2802d5482ca5f862ed19ba34ffbb7b3a4","impliedFormat":1},{"version":"81d8603ac527e75cfec72bb9391228b58f161c2b33514a9d814c7f3ebd3ef466","impliedFormat":1},{"version":"5f3dc10ae646f375776b4e028d2bed039a93eebbba105694d8b910feebbe8b9c","impliedFormat":1},{"version":"bb0cd7862b72f5eba39909c9889d566e198fcaddf7207c16737d0c2246112678","impliedFormat":1},{"version":"4545c1a1ceca170d5d83452dd7c4994644c35cf676a671412601689d9a62da35","impliedFormat":1},{"version":"320f4091e33548b554d2214ce5fc31c96631b513dffa806e2e3a60766c8c49d9","impliedFormat":1},{"version":"a2d648d333cf67b9aeac5d81a1a379d563a8ffa91ddd61c6179f68de724260ff","impliedFormat":1},{"version":"d90d5f524de38889d1e1dbc2aeef00060d779f8688c02766ddb9ca195e4a713d","impliedFormat":1},{"version":"a3f41ed1b4f2fc3049394b945a68ae4fdefd49fa1739c32f149d32c0545d67f5","impliedFormat":1},{"version":"bad68fd0401eb90fe7da408565c8aee9c7a7021c2577aec92fa1382e8876071a","impliedFormat":1},{"version":"47699512e6d8bebf7be488182427189f999affe3addc1c87c882d36b7f2d0b0e","impliedFormat":1},{"version":"fec01479923e169fb52bd4f668dbeef1d7a7ea6e6d491e15617b46f2cacfa37d","impliedFormat":1},{"version":"8a8fb3097ba52f0ae6530ec6ab34e43e316506eb1d9aa29420a4b1e92a81442d","impliedFormat":1},{"version":"44e09c831fefb6fe59b8e65ad8f68a7ecc0e708d152cfcbe7ba6d6080c31c61e","impliedFormat":1},{"version":"1c0a98de1323051010ce5b958ad47bc1c007f7921973123c999300e2b7b0ecc0","impliedFormat":1},{"version":"4655709c9cb3fd6db2b866cab7c418c40ed9533ce8ea4b66b5f17ec2feea46a9","impliedFormat":1},{"version":"87affad8e2243635d3a191fa72ef896842748d812e973b7510a55c6200b3c2a4","impliedFormat":1},{"version":"ad036a85efcd9e5b4f7dd5c1a7362c8478f9a3b6c3554654ca24a29aa850a9c5","impliedFormat":1},{"version":"fedebeae32c5cdd1a85b4e0504a01996e4a8adf3dfa72876920d3dd6e42978e7","impliedFormat":1},{"version":"3eecb25bb467a948c04874d70452b14ae7edb707660aac17dc053e42f2088b00","impliedFormat":1},{"version":"cdf21eee8007e339b1b9945abf4a7b44930b1d695cc528459e68a3adc39a622e","impliedFormat":1},{"version":"330896c1a2b9693edd617be24fbf9e5895d6e18c7955d6c08f028f272b37314d","impliedFormat":1},{"version":"1d9c0a9a6df4e8f29dc84c25c5aa0bb1da5456ebede7a03e03df08bb8b27bae6","impliedFormat":1},{"version":"84380af21da938a567c65ef95aefb5354f676368ee1a1cbb4cae81604a4c7d17","impliedFormat":1},{"version":"1af3e1f2a5d1332e136f8b0b95c0e6c0a02aaabd5092b36b64f3042a03debf28","impliedFormat":1},{"version":"30d8da250766efa99490fc02801047c2c6d72dd0da1bba6581c7e80d1d8842a4","impliedFormat":1},{"version":"03566202f5553bd2d9de22dfab0c61aa163cabb64f0223c08431fb3fc8f70280","impliedFormat":1},{"version":"5f0292a40df210ab94b9fb44c8b775c51e96777e14e073900e392b295ca1061b","impliedFormat":1},{"version":"bc9ee0192f056b3d5527bcd78dc3f9e527a9ba2bdc0a2c296fbc9027147df4b2","impliedFormat":1},{"version":"8627ad129bcf56e82adff0ab5951627c993937aa99f5949c33240d690088b803","impliedFormat":1},{"version":"1de80059b8078ea5749941c9f863aa970b4735bdbb003be4925c853a8b6b4450","impliedFormat":1},{"version":"1d079c37fa53e3c21ed3fa214a27507bda9991f2a41458705b19ed8c2b61173d","impliedFormat":1},{"version":"5bf5c7a44e779790d1eb54c234b668b15e34affa95e78eada73e5757f61ed76a","impliedFormat":1},{"version":"5835a6e0d7cd2738e56b671af0e561e7c1b4fb77751383672f4b009f4e161d70","impliedFormat":1},{"version":"5c634644d45a1b6bc7b05e71e05e52ec04f3d73d9ac85d5927f647a5f965181a","impliedFormat":1},{"version":"4b7f74b772140395e7af67c4841be1ab867c11b3b82a51b1aeb692822b76c872","impliedFormat":1},{"version":"27be6622e2922a1b412eb057faa854831b95db9db5035c3f6d4b677b902ab3b7","impliedFormat":1},{"version":"a68d4b3182e8d776cdede7ac9630c209a7bfbb59191f99a52479151816ef9f9e","impliedFormat":99},{"version":"39644b343e4e3d748344af8182111e3bbc594930fff0170256567e13bbdbebb0","impliedFormat":99},{"version":"ed7fd5160b47b0de3b1571c5c5578e8e7e3314e33ae0b8ea85a895774ee64749","impliedFormat":99},{"version":"63a7595a5015e65262557f883463f934904959da563b4f788306f699411e9bac","impliedFormat":1},{"version":"ecbaf0da125974be39c0aac869e403f72f033a4e7fd0d8cd821a8349b4159628","impliedFormat":1},{"version":"4ba137d6553965703b6b55fd2000b4e07ba365f8caeb0359162ad7247f9707a6","impliedFormat":1},{"version":"ceec3c81b2d81f5e3b855d9367c1d4c664ab5046dff8fd56552df015b7ccbe8f","affectsGlobalScope":true,"impliedFormat":1},{"version":"8fac4a15690b27612d8474fb2fc7cc00388df52d169791b78d1a3645d60b4c8b","affectsGlobalScope":true,"impliedFormat":1},{"version":"064ac1c2ac4b2867c2ceaa74bbdce0cb6a4c16e7c31a6497097159c18f74aa7c","impliedFormat":1},{"version":"3dc14e1ab45e497e5d5e4295271d54ff689aeae00b4277979fdd10fa563540ae","impliedFormat":1},{"version":"1d63055b690a582006435ddd3aa9c03aac16a696fac77ce2ed808f3e5a06efab","impliedFormat":1},{"version":"b789bf89eb19c777ed1e956dbad0925ca795701552d22e68fd130a032008b9f9","impliedFormat":1},"85ae5aee75f011967cf2d25cbc342f62d69314e9d925f7f4aa3456fc2cffcca6",{"version":"d238747e88c8c708451fa6f01ca63893f0396c43d072ec0c7c61f63eaf201789","impliedFormat":99},{"version":"f3d73901e4383f84add3a98573a2738ac5d0cbc648697c302b69b26b75ee140f","impliedFormat":99},{"version":"4acccd722f80edbf731840b8363e17f18f679434a4578ee44f1d3b70c67d858c","impliedFormat":99},{"version":"b3fae73d7dd47d6be5831e14cfa75be9ad8ad5da6ca1f1777bb30be81d744d2b","impliedFormat":99},{"version":"c2ea0cb5e8f8b454f942b3da57e88327cef84016971b28a6b0937475fc815f83","signature":"9c0eeb8de8dfdfb63ebcef09564c84ae1f6b6187c8e8e274fc5b0ee0a2c8432b"},{"version":"03981a348c4473a6a0bbaf606b651043860c8fc3efd7786bc02c4a1e05bf37b1","impliedFormat":99},{"version":"fb82344c312fd920a25c33ae4e0381023f46ef1432775cda1d9ab50077e639a8","impliedFormat":99},{"version":"e0037499acbd201cd60956a4d54ee45e4953cd60f80a2d8acb1bd13c9b134842","impliedFormat":99},{"version":"92339882b71c2ec1f48f82fe70d4ccd003822c4959169f0bab4f1ed0e99dd486","impliedFormat":99},{"version":"d627151917233bf28874a54e2478a6c5e15ef92b7aa8ed0500ca663d1510ce26","impliedFormat":99},{"version":"b83ed62180881087ad8d0bbcaf9c1e18c1bf54c2e7746aa14091334ecf5064f1","signature":"f16c45978bca52f9e6e15e30cb2a644c14a8f12ef7e7883955c0e855a1461639"},{"version":"1506833b09415d814e6904736b77e3cfa9c314d3e8e9608a45402b45cc1d445e","signature":"b5921651dd7f84bf735c77ba7f97a48389e53930d65916f7ac64ae0423c39d81"},{"version":"3f20dbe66f579955935fd0087811cb36ddc84114b894899994f2c540859b645b","signature":"86bd58c9db702e6d85d09d5f2c048e41d1a46879f779e682616e2566ea2db90b"},{"version":"52d0b34f865c3261d992c38f235278e45d1cc5b0706df8a3833bb65c02c539ee","signature":"70b83359a8592fd5bd75c234e3f94f3190a7d16a5d98c543e5fa6fa09a922637"},{"version":"1d4fea28255fec3900e4fa87b50f964dcb2f8c4b57db18fbacb0622fa76a66c3","signature":"d1560f98cd525aba422fab9d0eab88a99d688535f9fe3e9571ad07107150658e"},{"version":"a6a73e063520c9b6f5366304198dd85932f8883a4a6af92b9593a759e4e1c915","signature":"89aad0b689a67c22ccf4d9286189d9100d12392a33cc1e3e4c82e33b0f5532ae"},{"version":"58347b71d621efa402f085188b5eb1d50ed2e5d59a8244d93fef9bc348132696","signature":"52d8766ccab59f3b1886174386c40c467d39ec131d95db874278e5caa0435ff6"},{"version":"dcd039568bf735bef587e81103259821f4075276b00b09b0a953bdd3993382b3","signature":"07b872bf818081b560e585efa3abe6791f40a56e690bedde9cb5e6533bc9dd59"},{"version":"18c8fa37685cf18ac8661cdd8ef2e6cb228d1a7f018988afee3853c1f2d70dd1","signature":"ab4f78ab1262fc757477b389dc41e2059a98fbfc2f126e908ad968e24edf2208"},{"version":"73cd7d6e4cf95533c4773d70a053560ede25412e8dc3fe78899295d2772f5256","signature":"9cf6dcf6fdcc94f8e2883f3b5e55cafe601eff468954d53710503bd1c2877c65"},{"version":"a7d595f18175110b5d8d0fa0d84e7353089073715a2260651fde382c1d937cd5","signature":"43bf088ea02b5e1c3ed20cb3c09f838865b8cf7541483947a7d67d32b92c43fe"},{"version":"825d8bf942dbc5fdd8da71cef6e8f75608e81e19de6176fbeebdbc4ac8a8dd75","signature":"dfd5af6b0313b9befc7d45c6ffa3f928cd0f2dba7b7ebec0b46f6d664d05bb66"},{"version":"7983641709059d23a092a9282d84aa0561c299f34524397e2486b9369df7746b","signature":"3723342edc83c5309506073f6c0231da3b44ebaf9d57ff80b817d29655ecd33e"},{"version":"053a7a1a336d0882da361b3c63b7b48ae4bf284ae7bb0fa3b5c66f2174625413","signature":"d11c33d82518e60e038f5993fe8dc94b15fc2e6feead064782042369b812e74e"},{"version":"cfbe250c72daafde65b81a94d66b65b2ddc9a1d4a6a8a0eb4cb1232585e29892","signature":"7f5929c9df2d83e29fb75f2d9959c3195425bfa56e341df1c46dfbed4d774717"},{"version":"37fdea562c838a09547d37927c74eeaac84cac0b07a48ae62e45c4f193d3f1d2","signature":"5eb024f17d5b963ed6f7f8f618c6b8539e73e229bc069b6525d67407fa70f56f"},{"version":"81942a3fd07d235c8be95afbb798f8e1228893e015b24970eaf2fdf2b4d7d4c4","signature":"0ce99cf8b7c831aecd35edffaf5e2833b891c5ae0870767779cbb73bd8d49b82"},{"version":"c1f887932e7b4c903a217018a90da79d09b84e40de2fd7efac3eb9439ca72702","signature":"b51a28810590d2e1702f7b2f87379f777cbe22fae892b5101c09d1b87b492bb3"},{"version":"4f5393f847df4a59dec6db36c86f1f3227c89f8ff5a41a13e96ee381fb578ade","signature":"97e8b5455bb1a3c1a0fb8b2234bd5d71deb08e860406d5f8f01b93c8c2c27e98"},{"version":"f8a1781244d0365c586fd2836a6489937db097f699f0afe255c14f2118ead13d","signature":"82ea000610fcca063cd4626d04ca441f65445309fc9f908330b6b91cdd89328f"},{"version":"76b78ba4d067c913b91c58631d21f779ddb5d52838a4e3304292d0d22f33d0cf","signature":"2580fc580c698686de6eec861a57e00e1d65175bbf09aad3632473a56508e0fe"},"2507d545427fb45bf8515cef9550802b025d10960aa8aa88188cb60788e6e608",{"version":"493b55f19c267a21ff59698bf8bef4903756a9d743be8ac9cc94e234334e4345","signature":"f0155ac4d1b089ce94de259b4c1536fd2b4d6c4276773a776d37577630287d10"},{"version":"a346701ad6dcdaa58e388fe0995fc5304c09c395b8cba68ed872780f8c102004","impliedFormat":99},{"version":"c57b441e0c0a9cbdfa7d850dae1f8a387d6f81cbffbc3cd0465d530084c2417d","impliedFormat":99},{"version":"2fbe402f0ee5aa8ab55367f88030f79d46211c0a0f342becaa9f648bf8534e9d","impliedFormat":1},{"version":"b94258ef37e67474ac5522e9c519489a55dcb3d4a8f645e335fc68ea2215fe88","impliedFormat":1},{"version":"8b15d05f236e8537d3ecbe4422ce46bf0de4e4cd40b2f909c91c5818af4ff17a","impliedFormat":1},{"version":"982bf16c5d13d9ab58c3d3a6485c39fe44f3796f8f5163d880f8818432b22ee0","signature":"512960c0e955a2324b34354dac25e3e4d431a1af4cd33077935eda5e95c8b7e1"},{"version":"d5793bd9966c2082ad4ec484f7e5a699e2a94d732b1ac2b3b3899535f53ae255","signature":"c0a523ae4fc5a14fb42b9e2212b16e13c8c8494ec020cc1e52adc1bf84e7fb05"},{"version":"1100f3eab8432605642b8cead539c936179c53c905b212b488b295db2bf6e177","signature":"fe4ceb08d9067ccba5e917a320e68f5b6c3e371eeb6cfc352a1035b278585100"},{"version":"f7aa45a83c6b92541437a989e435bc06234dd42d445831d3ddb9df6e6d444260","impliedFormat":1},{"version":"78574eb54de67115a01b0aade1d77add2b6c3e7dcd2080782eba95dcb2eebef2","signature":"5a98834521ef69f2836c1ac70ba491faf1a6ad74d0665abbd0c8b0f06e7e2865"},{"version":"d1f1e0d62cb8d8d1e04c26e14de842d8a151f75812d81b046c65b5d1fe8e4b27","signature":"512960c0e955a2324b34354dac25e3e4d431a1af4cd33077935eda5e95c8b7e1"},{"version":"8329a0b50f818665f1aca05ab93c16b103178b463f2949234ee4416bbc7d3fe2","signature":"1f8bb24b9445ba23ba7975442082768beedd19cb8e032b538ee8714acdd20108"},"35f7dff7d58c1c02dbda8e4f74ea97ae96084da6b108d28e445866036f3197c0","7fe0b310644a21bbe1b464223a79d2f653e8d74d1c09f4b15c2905fa045e5174",{"version":"6aa2859da46f726a22040725e684ea964d7469a6b26f1c0a6634bb65e79062b0","impliedFormat":99},{"version":"2f304078088f2f4dad8c89966a7abb2f5989e450ca36bbba6b6ca175b7cd1733","signature":"fa01815d97da0e20aa59b46fb1e69096b102d91a5a471ddcffa4e7105a3b23ce"},{"version":"864cb8749daf09f4a5801177de66f9b30098eb7c53ae4a6ad22ca3874d1793fc","signature":"95b8f8b466f1ddb44b87eb52d650cc0f25297d0bfac95f2ad312f0aee84107ad"},{"version":"d8247be2b4e2e6de48e8427c2fa49eb19f088976ba12096d41fb2df86e7902b1","signature":"18826b00398a616d648cc52be7d6e06b0781a02590aa213c535bd5a8f9d94efb"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"71acd198e19fa38447a3cbc5c33f2f5a719d933fccf314aaff0e8b0593271324","impliedFormat":99},{"version":"4db2dc92c77cf9107c5413328b05788d20525bc0cd58d92250c8ec40371266a9","signature":"7711adec5eed0b4cb819cae62ea768204c4bd260fa3ee1aceb586358db5f6aa0"},{"version":"a9373d52584b48809ffd61d74f5b3dfd127da846e3c4ee3c415560386df3994b","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"4a5aa16151dbec524bb043a5cbce2c3fec75957d175475c115a953aca53999a9","impliedFormat":99},{"version":"d4c744131c6161300510909aafe2c2cb6d819f2c7a8c2aeb75d4317004c7eff7","signature":"1913d3e9a871099126700f506a2c3b8fe9d47857253124e5787055b463b98b4c"},{"version":"b838ecb929829fceee915062aa08bcf66b5efd20a7bc70c1b61298d3d9689e53","signature":"d6ddf65af09c5330c9bb37727d6c8ed9108c067e7c673765b37e27b27d66dd04"},{"version":"022c333af19b497b6f3b1b397dde6b610ae568f3c75a886f56bec7bb7592d37a","signature":"b231953daf6d4ba14c247d0e802a26e55ff8fb4b20763250a066690eaf997154"},{"version":"6ff953a2059586e6595c225afde7676f3ade583333a68f7ffbe7e0137ebd0e30","signature":"e5f0b330316f2a19b6e1ee5d7123aa13efbb7f3522aa226ce6dd63b6b3b7f0ea"},{"version":"83dadf3e70ed12d34ab191763fb679c7dca2cb73d053b86ade1334817803d8b6","signature":"316b8686db069c7c5a89b480b06e81be49f09dcc454fd408678c4fb0571069f4"},{"version":"92dacef1b3a4c5ac90b31928cb4208259bb8c5befb23932d9081d64aa856e2e3","signature":"06ea396325a1e8909c69873c9e3552b98f0f978a7d56130b523858e74c051be7"},{"version":"e9891b7ad556ca88be4e4cfcdbc8858072931435672ab4e29a15f0db46ce2918","signature":"0d6137c95a67ffd57db626a7de415cc90ea4307d8aac76525502c680d3853036"},"18874081455df78221becbde75abf5caef957ec17aaa456072b2665adfa96713",{"version":"5b066e9723a0825f49eb8f3d0cb54fa1afde3870a0237a5a254f4a42a358fb6e","signature":"49df9a46ebdc372b3fa4df4ccc8425c638bd56e72dee2cfff3ea1e97d2c794de"},{"version":"04e74bcb4dcffb60f68e28996a310f39576386db51ee93f1a2a52efad9e0cc5a","signature":"f15525c528f2fb2d83814b552f1f477d8d44572672982ed99da742bcd9b77646"},"f10b176063a412d211163321a18fab7fe077d5f39cde3c23d198ee36a1d9ee75",{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"7ec047b73f621c526468517fea779fec2007dd05baa880989def59126c98ef79","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"8dd450de6d756cee0761f277c6dc58b0b5a66b8c274b980949318b8cad26d712","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"6b5f886fe41e2e767168e491fe6048398ed6439d44e006d9f51cc31265f08978","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"56a87e37f91f5625eb7d5f8394904f3f1e2a90fb08f347161dc94f1ae586bdd0","impliedFormat":99},{"version":"6b863463764ae572b9ada405bf77aac37b5e5089a3ab420d0862e4471051393b","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"904d6ad970b6bd825449480488a73d9b98432357ab38cf8d31ffd651ae376ff5","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"1179ef8174e0e4a09d35576199df04803b1db17c0fb35b9326442884bc0b0cce","impliedFormat":99},{"version":"43a882fde54ca685bcb35d77e588846ff3391155e320436b6c271af7f8de1a7d","signature":"d77c731b000c1abdf6097fdc49718bdab8e373595417be6f898c3d83eedaea1e"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"dfcf16e716338e9fe8cf790ac7756f61c85b83b699861df970661e97bf482692","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"2a00cea77767cb26393ee6f972fd32941249a0d65b246bfcb20a780a2b919a21","impliedFormat":99},{"version":"98007168d58f43df4d2428e25ba09e0ee7ace257b3aa1a48fb53cdd33e428c7f","signature":"8aed813c358a5eb08feb1e4808c7f4a6c12b247ad6b2b16f17cd04f94992cf28"},{"version":"8dedd59e5ce4288bb28f7b50cc8716d9b23487e08a13bc399bb53381de9fb786","signature":"daa157691b1d671ea52f53a1128f2c339e01062d2d59c8a11f2e6b8f245cc922"},{"version":"fbd8e567f7603cd33719073b1bd4d8fe9de27c1974afdd452d9a90d24e852611","signature":"b6248c081835f1aab18a92a4d06b8a9fe0077edec8062f3b3b4ee05d8a58da6c"},{"version":"0081a43c4cc63a984c97306e258390c434c5dd1c80158985ca78f8270e308ca6","signature":"81341da17dc0d42b58c591abdeea16d460abbb1cbed41827efbd0eccdd3a1fc2"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"68b6a7501a56babd7bcd840e0d638ee7ec582f1e70b3c36ebf32e5e5836913c8","impliedFormat":99},{"version":"7a14bf21ae8a29d64c42173c08f026928daf418bed1b97b37ac4bb2aa197b89b","impliedFormat":99},{"version":"711dbe2de6452fe53027615421afc6f5941533aacc6fb3e9a831635bb0f23ced","signature":"20f5c6fda7d5906e7abca36cb5068de741c18155bbe26f5aca1e1c29ca5e2f42"},{"version":"e07e2c8c681206772610f407512c3c66c669f97a55c20d5af168b155198dd5b9","signature":"01bf2c1d25dfac48c5a001ac0f07f792b75c566b67362d58900d6fcc20f29224"},"b9107eccee190d80e37633f8b9414394be98ee0a9ef556df3f39fdf71a291af2",{"version":"4446850b5665c2f5bc7c4363a6e42256a47a3df4620da09ffd1f84d3b8293f10","signature":"2da657bfb326db428e9d1328473b688da6648efedc0bfdd528718109c202981a"},{"version":"d1ff367c377396feb0ef5b12f1a404a930dcd0f7082bcf8d9276a802d94ef3ab","signature":"f00cb3cf2eb0b87c43e88211235cec90902469631c81f525038b66203f083209"},{"version":"48b94f3b652c68c0f427d19773e6460c6176ee95f0ea9864cb03e8cc9176acf8","signature":"91f51641daa8dadd247163be7a1e293765df88595205afaa7d2678217491783f"},{"version":"e3507ff969a7c1c9d55e0e6a7986d863433ac6fab17e27f5fa6c8d0fd79c15be","impliedFormat":99},{"version":"8bb642bc24d7a21e67124613f77174e377b053b4e50f08d3bb8b4b71c30da185","impliedFormat":99},{"version":"c043623180122dddecf5565e0809ea90426d6fc370454cd2ba1ab99ca3398248","impliedFormat":99},{"version":"70f20697bc3ed03af85920db61fb1e4388fffa37cd2e0c0d937e7608f5608bd1","impliedFormat":99},{"version":"5e35a2a3f0b62ee763fd1d1f13cdec015ea10fb1ed7a670989b1ba49b37ad287","impliedFormat":1},{"version":"b3b5aca751100320745c8bfd826202aed7d753d336448ce2265b9470dfa8a298","impliedFormat":1},{"version":"5fa35c6051059d5ed57cbda5479b593cec15d5405229542042bd583c1e680fb4","impliedFormat":1},{"version":"7df3932c1b8816845e1774538c4e921e196d396b3419e2e18bc973079b4064a3","impliedFormat":1},{"version":"c8a7131a27d7892f009ab03d78dc113582f819c429af2064280bec83c2e7c599","impliedFormat":1},{"version":"19629032a378771a07e93c0ab8253b92cb83e786446f1c0aed01d8f9b96a3fb6","impliedFormat":1},{"version":"fd4b51f120103d53cc03eea9d98d6a1c7e6c07f04847c0658ec925ceeb7667aa","impliedFormat":1},{"version":"53bacb19d6714c3ea41bebf01a34d35468a0ac0c9331d2ffdc411ce452444a2f","impliedFormat":1},{"version":"e2ce339ecc8f65810eda93bb801eb9278f616b653f5974135908df2c30acc5ae","impliedFormat":1},{"version":"234058398306e26bc917e6efba8fb26c9d9f2cfdfbaa17abfcb11138847de081","impliedFormat":1},{"version":"b3ff9aff54c18834bce9690184e69fd44fd5d57273a98a47fbf518b68cc4ec60","impliedFormat":1},{"version":"e6cfcf171b5f7ec0cb620eee4669739ad2711597d0ff7fdb79298dfc1118e66a","impliedFormat":1},{"version":"3dc40ead9c5ac3f164af434069561d6c660e64f77c71ab6ad405c5edc0724a94","impliedFormat":1},{"version":"d5fb34e3200ce13445c603012c0dfbd116317f8d5fef294e11f49d00a859a3d0","impliedFormat":1},{"version":"58fc843cdfd37a8b1ae2cbf3d6d3718d41cdafcbbf17e228bd6a7762a7235bf0","impliedFormat":1},{"version":"a4d0945318f81b27529abcae16d65612decf4164021a0d4d2ec19fbfcbaf1555","impliedFormat":1},{"version":"fbe57f37a07a627af9ae5922c86132677e58689427cc748866a549ef3862f859","impliedFormat":1},{"version":"8df750d51d498be760d538ac9818c7aebea597f21d4937a65fb2ebedd8a976e7","impliedFormat":1},{"version":"5b9c5efb469020fd6a8c6cb8c4b378ef3dc46ad97938ac900882f1d5f237bc91","impliedFormat":1},{"version":"83dc862cd9b7b1a929bcc03e9bbc8690cebc7e29b1edfa263f6fd11b737f19df","impliedFormat":1},{"version":"fffacebbcc213081096e101e64402c9fb772c5b4b36ad5e3d675e8d487c9e8af","impliedFormat":1},{"version":"1b243b5a51dff2bf70b7a6ce368fe7ff845c300027404b5a41a87ce5490cdad0","impliedFormat":1},{"version":"dfb119c12d7d177eb47b98c011677ca852dff82ddbe40ea571e31e04d2b84278","impliedFormat":1},{"version":"e0b50044596bf7b246a9ad7b804cc5ab521f02e89460a017981384895a468f23","impliedFormat":1},{"version":"b303a99933b69d9d6589ac24f215e5d987933782244251a10e62534f08852d94","impliedFormat":1},{"version":"e052b679185d44460040d5ce3d703d503e5f7108cd4e9d057323f307c6c0e42e","impliedFormat":1},{"version":"ddb79ad4350198a188ad3230d2646b4c67467941ddf4022ed01e4511a56d2cd9","impliedFormat":1},{"version":"8b3de2f727cfd97055765350c2e4d50ea322cabb517ff7aa3fa0ad74aab4826e","impliedFormat":1},{"version":"b3e584a57553f573aa01b34bf0d08c4dfefb2b9ede471c70d85207131f0f742f","impliedFormat":1},{"version":"23a24f7efe3c9186a1b05cd9a64a300818dd0716ffbd522d27178ec13dc1f620","impliedFormat":1},{"version":"6849f3dd56770a08b9783d61e3ba6e2d0ba82850a20ae97e1bdcaeb231d2f7fc","impliedFormat":1},{"version":"6fb23beb59f1f5c8dc97bfc012d5edac81ffca1c1b83a91381b4e130e7ce24f3","impliedFormat":1},{"version":"bc759b587b3e7213fc658fe78dbaf7b0e7c0a85f37626823b4bbef063759c406","impliedFormat":1},{"version":"04ed59801192608de22461e38b9f2e300953f1d6d6c05332f19e78e668d6a843","impliedFormat":1},{"version":"bf5cfc96bacabfe71962c32755df63ac499f732571368db3bdd7e144336c50f7","impliedFormat":1},{"version":"4c10770eca2ae9c1d5c97dad5c715b0c65def8699066231851a69fa58aaab3bf","impliedFormat":1},{"version":"c7e7d48913bfa205453911f699307e7ce630deb3c3e68326377bc2ba20abb1f9","impliedFormat":1},{"version":"4b78505d4f7ba7a80b24dae9b9808c2ec3ecb6171af03a4b86a7a0855d7a80c1","impliedFormat":1},{"version":"d09d8ac8da326eb4cf708d3a3937266180fe28e91c3a26e47218425b2ec1851d","impliedFormat":1},{"version":"50c0c2b5e76e48e1168355e3622ca22e939c09867e3deb9b7a260d5f4e8d890c","impliedFormat":1},{"version":"66491ea35e30cc8c11169e5580aef31e30fdf20b39bc22e0847c2c7994e2071b","impliedFormat":1},{"version":"35680fb7f25a165e31e93ea22d106220db4450b1270a135b73f731b66b3d4539","impliedFormat":1},{"version":"5865007a5331be0842d8f0aace163deda0a0672e95389fe6f87b61988478a626","impliedFormat":1},{"version":"dddc865f251a4993b9e23494a9ae0fb58997e0941b1ec774490a272d5a0b29bd","impliedFormat":1},{"version":"76d1f106ef20648708a7d410326b8ad90fc6f7d4cdf0e262edd6bd150676151b","impliedFormat":1},{"version":"6e974c9f7e02b1f1b7c9538619fe25d9d23e4eb5df3102f62f3bb0cb3d735d1a","impliedFormat":1},{"version":"18f3835257e2f87f8dc995c566217c5434d9bc14a6d18e7ca0e2afbfc2f1eca8","impliedFormat":1},{"version":"69055f4f0b1b2df9f0ca89231075c0578975518543100582dd37adb956ad6135","impliedFormat":1},{"version":"c3f85a0f71b64d78e7dfb27a12d10b0cd621745f40752b8e9fa61a7099d4290e","impliedFormat":1},{"version":"0b4b2424b5d19bbac7e7ad9366419746fff0f70001c1867b04440d0031b26991","impliedFormat":1},{"version":"e6d999c047721b80fc44a025370dbc02022390bfcf3c1e05cd200c53720c3f16","impliedFormat":1},{"version":"4fd695c068c325f2eb6effd7a2ed607d04f4ed24b1f7cc006b8325b3eb5bd595","impliedFormat":1},{"version":"c18fb9b8d4a7f41ae537512368ec9028d50b17e33e26c99f864912824b6e8c30","impliedFormat":1},{"version":"2b214fb1c919b0483175967f9cf0809e0ac595a7be41ba5566be27ce3d66cf86","impliedFormat":1},{"version":"ff8ece28a240cb8a29342a8c54efdaf124f93301081afa047bd1e7f6ec2a79e3","impliedFormat":1},{"version":"9b923be7ef4337bbddbd1713b13cf81da9a955034bdf657bb9e60a8fc9b20ac5","affectsGlobalScope":true,"impliedFormat":1},{"version":"527668d62da5909154a74b74a7a9ae59c41ab4a70da76c2f476765308efafb0f","impliedFormat":1},{"version":"e2974b2b0a7ba6384f5f3338d2a6a70170c3002112d6e05ce593d966100bf232","impliedFormat":1},{"version":"cc3738598b5fe875e341f701824403b3cac48c50472c72423d3e236b610fa977","impliedFormat":1},{"version":"f06e49e80942ebd4f352b1d52d51e749cb943e5b7e368cdf0ce15a169cfad5d0","impliedFormat":99},{"version":"adcbd1ed0d1621b7b2998cc3639871b57d85a3f862759d81c8634fbb6f3ec260","impliedFormat":99},{"version":"c982042c9614e12edd22a8ec0ba55c52fb31b41a513e841a0f3916fea6f775ca","impliedFormat":99},{"version":"28004f9370a7177104fe5c71381f4d2ddf8099066ba15ad0264df14135f0210a","impliedFormat":99},{"version":"0d85481bf9d4418ad633806d8d909777749291164161e87d3f76fb68ab1ae4b1","impliedFormat":99},{"version":"26474a5870247854706ee1a1b53846c464fa46d4f0fce6feca43516c6a565ece","impliedFormat":99},{"version":"499060fff17e6127887065c69309b9785808229fa4851185762b434fd191eb8f","impliedFormat":99},{"version":"e8b61ed76ce071a18c16b3d5145c9ec24a79afa4a40e4e70482d420988ad2e92","impliedFormat":99},{"version":"959c15065a76d4dc5e77e5c83dab8bcd52ebaa5779eb4d42fb43a5134c219eca","impliedFormat":99},{"version":"6aba2b87d07562e15164415aeb5ef55e544cfc4ead91c18982e0c5b70739c120","impliedFormat":99},{"version":"876324641782ef0d4123c39ce5b4fe59ddf3dcd8ef747bc06bd935aedf0a71c6","impliedFormat":99},{"version":"0716a38be84ad12588a2ffeb66977b960b6f9ec477473063b61b7fab971bbe4e","impliedFormat":99},{"version":"029fc7882219b11a8d7f0b64a51ecc6cceff45813fb0d5daf793c503a20dffa7","impliedFormat":99},{"version":"5cfb2066d3fe03aa5d6ffad84629bcb1eb4fe7cad46f874afca80aa459962b75","impliedFormat":99},{"version":"0a1b0a946c2dc3dbc3f7b41fab8ca5a3bb5f21fc3965dc07d1cb5af831a962d3","impliedFormat":99},{"version":"0e1a03168fbe0d48c1a558ce495ea48c922f9c2c98658092ef8361bb8c40536a","impliedFormat":99},{"version":"1204aa56ffbdf67afe38cd279d602ff1033fe9dc2110fc8fc219f1deb4b18a5e","impliedFormat":99},{"version":"922f879e741bb05195e598b51a58e3784f34761ee4d92f2f470f57740ffa1b7b","impliedFormat":99},{"version":"a06db219f83fd299973856c648293bcfca1f606a2617b7750f75b13dd28ca5fd","impliedFormat":99},{"version":"8832937a4f608e96d8c7b53fd5c040fd1e2be78dea6ca926b9c16e235f114749","impliedFormat":99},{"version":"60fa62255c9a3fc917f4be2d8c23ded1f3e919f68db44af67f8c67b46014663a","impliedFormat":99},{"version":"ebd64fdcbf908c363ab65ccb1ad9f26d82cd2bbb910fee5a955f3b75f937b1d2","impliedFormat":99},{"version":"608c0d45e9440b26e61a906bcd32ca23db396fa32aa29087db107bee281d70bf","impliedFormat":99},{"version":"c57ff70bc0ae1a2abe4f1a4c8fc8708f7cd99d0de97fac042e0ba9f4970c35db","impliedFormat":99},{"version":"cf5007ed1f1bdd4d9c696370c6fa698eddef590768bbb9807c7b9cb4000a9ec7","impliedFormat":99},{"version":"b96853f733fed9aa8ad28d397e1ec843792749dd8432e7f764edcb5231ec4160","impliedFormat":99},{"version":"6ee0d36f09cff8a99010c8761003a83b910149e5d7b39656f889b2bbbabe0f27","impliedFormat":99},{"version":"b9f6ae525124fa2244c7e5ae3d788d787db47c4dab1beda7809cfb6c47f74968","impliedFormat":99},{"version":"a74c7a2244c60699441eb66577f230112eb56235a0fd7b26451ffe03c999991d","impliedFormat":99},{"version":"a1fc2559d90de9e703fab40ed46ff05a402113d164892c3c4ca192102f136c99","impliedFormat":99},{"version":"514167c3cc3640146a0ede53e59dc82c1d27ad1bc1e134912a0ea2cff69f997c","impliedFormat":99},{"version":"10ce8a11a9beb91431a0246977d0c9342c9f530b6ddaf756a0ad6fef22818b9d","impliedFormat":99},{"version":"269ed3176766758542995bfab9612b921bb47c3b1efd382b3ec843d0e2dc147d","impliedFormat":99},{"version":"f3ec93a448c4bf491bd372962f4c9a402ba97a917ce905ac0251f16c2e03fb43","impliedFormat":99},{"version":"3c7869711e28e33bb715dedb6879707cb54bb91b0ea9e54c9e308ed23be6b8b4","impliedFormat":99},{"version":"abbd33f1c632b4e592fde62769716a5134831f960832d7007a6491e73e4ae109","impliedFormat":99},{"version":"f88a59d7650984e794b40b34303dcedc1c3802acf21429f110c832fedb529dc0","impliedFormat":99},{"version":"2e7ef180b0a117ec2edfc2e349b4ccea4ad63114ea41b0262aa3a6e01cb223f0","impliedFormat":99},{"version":"9e909c7914b218861b219760732ae7a7a880b7d8e5d4feff64eef921ca5efaae","impliedFormat":99},{"version":"de94ac03f309847b4febab46e6a7de3ed68cf6d3a3faf50823def5d1309cbf47","impliedFormat":99},{"version":"97eba2d9706d755314bb85231c44219b707f84209032197255c4c11c6acbfd3c","signature":"496cd22bb4f82c69d05d88ac924b20c9777a3232348707278cf5375b7a1ab576"},{"version":"ae4eef1bf8c13f009f82147f6a2763f2c7472529c7f7fb739f8d45c7bff03a47","signature":"0bb5669ada7a7c579244609dbed2c0db86aebc5c8b89bed00f121775ab60cc49"},{"version":"91f6bdd3a9e945fa50d6a3c005a07b6f15de69415ead01293a039f4603b7523d","signature":"ed59bf3031f5aa24f0ceda91d6c5c9ea5e094f196ba2359409722b13e88de6f8"},{"version":"4badb8e0f2fba7a7a55e32d877f93572292b41fb086b2cd2672388c803f00e84","signature":"a77b1deae4fb9f9916400df3926ffc60e1b27657a8c74f1d5f80fb612f63c07f"},{"version":"cfd9b75da29a6a5ba78c0aa4ec57b9bc5e7a55d1acf7de095ed91f662cdf2579","signature":"0c5c3f2215f494cc70301fb873c29441118a9232a5d14eaf6f67ed0dc2317885"},{"version":"473f734af60adb3d6962b0d457063f709fd4570d7c18ed09b50efee7ff9615ce","signature":"b098e49412a79e18117a33c5ebf61cb00b5ab79a0b296528fe7ad705b9bdd013"},{"version":"7fc745acebbee6e62e1d9498a48328d2d8b730a0e4cee78a6349a1be43be7d80","signature":"bd2ee593357e30f039c0a1e7e6901eab64ce342549240e0724ff461e11061584"},{"version":"f74bec68dd458976ea06f05ebdb4cc5b0e42e5242e5361edf0e5ec6e25dd717b","signature":"709605705d4907db12fa43a49e08de13bc875b40e469640cfca3ab72721c87b4"},{"version":"4d7d964609a07368d076ce943b07106c5ebee8138c307d3273ba1cf3a0c3c751","impliedFormat":99},{"version":"0e48c1354203ba2ca366b62a0f22fec9e10c251d9d6420c6d435da1d079e6126","impliedFormat":99},{"version":"0662a451f0584bb3026340c3661c3a89774182976cd373eca502a1d3b5c7b580","impliedFormat":99},{"version":"68219da40672405b0632a0a544d1319b5bfe3fa0401f1283d4c9854b0cc114ce","impliedFormat":99},{"version":"ee40ce45ec7c5888f0c1042abc595649d08f51e509af2c78c77403f1db75482a","impliedFormat":99},{"version":"7841bca23a8296afd82fd036fc8d3b1fed3c1e0c82ee614254693ccd47e916fc","impliedFormat":99},{"version":"b09c433ed46538d0dc7e40f49a9bf532712221219761a0f389e60349c59b3932","impliedFormat":99},{"version":"2fe97c700340d65f35f1bf31a74e2a530d04f47fc2ce7423d4880216452ab085","impliedFormat":99},{"version":"50bc55fc955fa799a4a1a11c3484077f06cc87033c68f5da6466b520876cb12f","impliedFormat":99},{"version":"22973bc5e4a4013061472e4bf3355fb6bb52cc5dfb42406d0aef0357a1fb3735","signature":"5b053d96ccc6391f56b1067a3cfbf5242924a0d3b023d731e16e0590595b24ff"},{"version":"f97faedb195315ae8f6c7edc1c895e465fa4613ccf35d5a850b77309abb2f880","signature":"29b81b6565ea28b26b07a2397a01c385b9da74235f1a867a33121354ba494f6f"},{"version":"309ebd217636d68cf8784cbc3272c16fb94fb8e969e18b6fe88c35200340aef1","impliedFormat":1},{"version":"f987c74a4b4baf361afbf22a16d230ee490d662f9aa2066853bb7ebbb8611355","impliedFormat":1},{"version":"1ff91526fcdd634148c655ef86e912a273ce6a0239e2505701561f086678262b","impliedFormat":1},{"version":"bd93f6fc4da70275db4def32903eed2be03547a41857142df63ddfebb9a67bdf","impliedFormat":1},{"version":"8d67b13da77316a8a2fabc21d340866ddf8a4b99e76a6c951cc45189142df652","impliedFormat":1},{"version":"7952419455ca298776db0005b9b5b75571d484d526a29bfbdf041652213bce6f","impliedFormat":1},{"version":"21360500b20e0ec570f26f1cbb388c155ede043698970f316969840da4f16465","impliedFormat":1},{"version":"3a819c2928ee06bbcc84e2797fd3558ae2ebb7e0ed8d87f71732fb2e2acc87b4","impliedFormat":1},{"version":"1765e61249cb44bf5064d42bfa06956455bbc74dc05f074d5727e8962592c920","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"26384fb401f582cae1234213c3dc75fdc80e3d728a0a1c55b405be8a0c6dddbe","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"e0bfe601a9fdf6defe94ed62dc60ac71597566001a1f86e705c95e431a9c816d","impliedFormat":1},{"version":"568b463d762d0df07ed10081293715069168ad7cf6308525a3bb93777b127845","impliedFormat":1},{"version":"6e5857f38aa297a859cab4ec891408659218a5a2610cd317b6dcbef9979459cc","impliedFormat":1},{"version":"add0ce7b77ba5b308492fa68f77f24d1ed1d9148534bdf05ac17c30763fc1a79","impliedFormat":1},{"version":"56ccc6238510b913f5e6c21afdc447632873f76748d0b30a87cb313b42f1c196","impliedFormat":1},{"version":"c1a2e05eb6d7ca8d7e4a7f4c93ccf0c2857e842a64c98eaee4d85841ee9855e6","impliedFormat":1},{"version":"85021a58f728318a9c83977a8a3a09196dcfc61345e0b8bbbb39422c1594f36b","impliedFormat":1},{"version":"d91805544905a40fbd639ba1b85f65dc13d6996a07034848d634aa9edb63479e","impliedFormat":1},{"version":"6042774c61ece4ba77b3bf375f15942eb054675b7957882a00c22c0e4fe5865c","impliedFormat":1},{"version":"5a3bd57ed7a9d9afef74c75f77fce79ba3c786401af9810cdf45907c4e93f30e","impliedFormat":1},{"version":"8610f5dc475d74c4b095aafa0c191548bfd43f65802e6da54b5e526202b8cfe0","impliedFormat":1},{"version":"7b9496d2e1664155c3c293e1fbbe2aba288614163c88cb81ed6061905924b8f9","impliedFormat":1},{"version":"e27451b24234dfed45f6cf22112a04955183a99c42a2691fb4936d63cfe42761","impliedFormat":1},{"version":"58d65a2803c3b6629b0e18c8bf1bc883a686fcf0333230dd0151ab6e85b74307","impliedFormat":1},{"version":"e818471014c77c103330aee11f00a7a00b37b35500b53ea6f337aefacd6174c9","impliedFormat":1},{"version":"2fbc91ba70096f93f57e22d1f0af22b707dbb3f9f5692cc4f1200861d3b75d88","impliedFormat":1},{"version":"29f823cbe0166e10e7176a94afe609a24b9e5af3858628c541ff8ce1727023cd","impliedFormat":1},{"version":"4c160c0c0622cbe04bfd1024631e21c8ecf1670124a12ec8b23727d13e5979f6","signature":"07d5b52bba05b29db0926a4001feb035ce13e255731e33675706fa8b31b302fb"},{"version":"c0479252952435fc8723ff7c46ed0ee950c4df55120837b27388ec17aaebf48c","signature":"4ea3892acd9ef4bb3367f9965621da37d703ce70441bf1eef18a7d7ce294719d"},{"version":"0b538297db0f7f6d639363e6e05d44e838d6c22b54519b0f794b642dc4c7c8c5","signature":"38b417f10aa857d5069b795c8b22e2952d287d22434596aa41cdec514ef8a073"},{"version":"e2ab89665b8d3a6097916601f56f8d8af1a8491ff63badd7eac3343d74979e0c","signature":"7184a811eca741a0b632eaec8dc054be85644743c22d84c0d76c6ce766a8f003"},{"version":"591b5d40d84be86d4603185460d15b35bb362bae84c46d55b511e54017d4ffe1","signature":"4e6c38cb8996d9c28afbf8c421f736c09b408079582482f3e65a0cba51d70d94"},{"version":"375700e065dd9948ca1ebb6793f62c18890f37bcb42ab757d73df6623dd903d9","impliedFormat":99},{"version":"4781142e27cfd19d75a2c0ee432826153fcdf670bdc52631a6078330c9133e6f","impliedFormat":99},{"version":"93515fa80b2295b33e3e38c3f835f1f602e1a1899b2cfa4215f11600478379c2","impliedFormat":99},{"version":"94896adfc3bcc06c707d9b3e4b3d0001d9ea39cd4ae805082a14491efbed6316","signature":"ee7a7d891dd0b0005b4dc9a7bcdb89e4300038f59ef33866731f1ae221e6f8ee"},{"version":"57aa303c296ff62f609c5a52ec5afbeb02cac7b769cbebb46be7b576e1ab3ddf","signature":"db56e1285f6ec596827631cbe48c095bbea2e8fdc3f901db2b21a51c08e60ce3"},{"version":"c13bc0c7c75bc996a9157a6319e3d007996d1389efc23e1417f0f42a3faf6045","impliedFormat":99},{"version":"f665b7400ea6d37fcc8bf8adb593cbc976926c13a616bc1bd6de8d8edda9f2b8","impliedFormat":99},{"version":"5c1255a52052237b712730bd0da805b0a708262909e500479a321688c1d6d197","impliedFormat":99},{"version":"b5a7c01a7b037ba33207ea7f1cf4c1fe65cfdde4ef83a8e1deb03f777e7ef2e0","signature":"7daf2126a5d8bdf4ef07669a69b291a46b76739e1085849baedcb94ef341e814"},{"version":"aa7a5425ff1fe64b035d4ac9c77ca1faaf410c4de7200be4cd112d53df6c1af9","signature":"9bc80befce6a60cc78a9eff1499995de23613754ca5339d92024a1b10a3ae338"},{"version":"703473df5a12fd91f969f58394059f512dd70d88c2eed68583a77212968094b6","signature":"048ef49f923e7ad7b06ffe95ceb407238a4554bf49dc36eaf1a76eaf75535edb"},{"version":"8309c9db65b1f3ecf337e2d73e26d137ef711d951f2a93643a7bcdcd7a979a19","signature":"658714ef591d2d51abab7172f2dcbddac9cfcd3e7c9ef6ba4f0a85248f6850df"},{"version":"4902f89e2c23ae6814a3818577c8602e2211912c1c74219846dd0d7709f3c328","signature":"5b4567b44b055c85ac88531073f1550a5465ea96dd82620c7b756ac0a8552ed3"},{"version":"228b0e18d6c64b67f83ecf29d0ac5394a4cebc2bdd7a9d5ee12f5dcff6a95805","signature":"b2c7cf7f304f6ebfea4dda1e9c526a79a591fc8d3bd003af083384025da649b1"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"89783bd45ab35df55203b522f8271500189c3526976af533a599a86caaf31362","impliedFormat":99},{"version":"26e6c521a290630ea31f0205a46a87cab35faac96e2b30606f37bae7bcda4f9d","impliedFormat":99},{"version":"798b5337dc147d88c65de01f7221e0bfa04272968a1fce6acc1ec0bef7d9ddb9","signature":"0ae95632387b568863f5432688f3d5b538edb7f0b60efa3e403667dbf4a6f509"},{"version":"163c2623809f0fce501b02fe357fbfdcd7139d1328c10f9be20104ef26a1dcb0","signature":"3c08f6713620a686351d4a0751134e94e3f78f66642b7c22f8afffd2c523b703"},{"version":"950bea01f2a3f9ecad239726a080cad2b9d47153849a4d14abb905f0f60d8292","signature":"0a7fd7460c25272fe93528407b12b7e1874a657e9c3a3070d6e37864f095b6a0"},"cb1149dc9b8b49da93176fad7a5a04f97fd7814b92c00b2608fd06c9142f76af","9df2681521a3c1735b5f226ef0ea22506fad3fe592a0bd5822154b138ae9b4e1",{"version":"10ec649a9babfe0e5d0caaeb83a6967947609b8c1b97451a5e107a7964a68ff8","signature":"a7a00932d3632b1b2e88331c72f65f544ccd70eefce739837b05744011075fba"},{"version":"b67e583128915dd73859e4e8f1e0df85f461ba3cc6997fb9b9af2402e4a5f431","signature":"e48edb6bb46fd51d556c424443612274746402c087eb39181775343d8e823618"},{"version":"f3a959e927e7f615371474ae959d900f19f03586a582e4e7dc9d35055cd06ac8","signature":"817ea241dbf951a15227290a558a5f75568c2baa3ab780809dc77e3cc45fda07"},{"version":"cb8f71eb51a21690b5cd207c0624b2e791de4c86617ec4f77edbc43738821211","signature":"b12a354249fdbc0ade9ef40f09af35ac2a6eea05cfc4c0410595379f518bdef4"},{"version":"742246c4523cfe0256bb85e503d55afa7411d5dd0792e8ff69bfdf8afe1cec76","signature":"d4ae819a0e3b5a81e1da7c92cab87f3d0724595e70b05ab6c431d93e08ac6361"},{"version":"57ae71d27ee71b7d1f2c6d867ddafbbfbaa629ad75565e63a508dbaa3ef9f859","impliedFormat":99},{"version":"60924ca0c60f0674f208bfa1eaaa54e6973ced7650df7c7a81ae069730ef665a","impliedFormat":99},{"version":"e3181c7595a89dd03ba9a20eb5065fa37e0b0a514261bed774f6ae2241634470","impliedFormat":99},{"version":"c42d5cbf94816659c01f7c2298d0370247f1a981f8ca6370301b7a03b3ced950","impliedFormat":99},{"version":"18c18ab0341fd5fdfefb5d992c365be1696bfe000c7081c964582b315e33f8f2","impliedFormat":99},{"version":"dafbd4199902d904e3d4a233b5faf5dc4c98847fcd8c0ddd7617b2aed50e90d8","impliedFormat":99},{"version":"9fc866f9783d12d0412ed8d68af5e4c9e44f0072d442b0c33c3bda0a5c8cae15","impliedFormat":99},{"version":"5fc13d24a2d0328eac00c4e73cc052a987fbced2151bc0d3b7eb8f3ba4d0f4e2","impliedFormat":99},{"version":"2cef84bf00cbdb452fdc5d8ecfe7b8c0aa3fa788bdc4ad8961e2e636530dbb60","impliedFormat":99},{"version":"24104650185414f379d5cc35c0e2c19f06684a73de5b472bae79e0d855771ecf","impliedFormat":99},{"version":"799003c0ab928582fca04977f47b8d85b43a8de610f4eef0ad2d069fbb9f9399","impliedFormat":99},{"version":"b13dd41c344a23e085f81b2f5cd96792e6b35ae814f32b25e39d9841844ad240","impliedFormat":99},{"version":"17d8b4e6416e48b6e23b73d05fd2fde407e2af8fddbe9da2a98ede14949c3489","impliedFormat":99},{"version":"6d17b2b41f874ab4369b8e04bdbe660163ea5c8239785c850f767370604959e3","impliedFormat":99},{"version":"04b4c044c8fe6af77b6c196a16c41e0f7d76b285d036d79dcaa6d92e24b4982b","impliedFormat":99},{"version":"30bdeead5293c1ddfaea4097d3e9dd5a6b0bc59a1e07ff4714ea1bbe7c5b2318","impliedFormat":99},{"version":"e7df226dcc1b0ce76b32f160556f3d1550124c894aae2d5f73cefaaf28df7779","impliedFormat":99},{"version":"f2b7eef5c46c61e6e72fba9afd7cc612a08c0c48ed44c3c5518559d8508146a2","impliedFormat":99},{"version":"00f0ba57e829398d10168b7db1e16217f87933e61bd8612b53a894bd7d6371da","impliedFormat":99},{"version":"126b20947d9fa74a88bb4e9281462bda05e529f90e22d08ee9f116a224291e84","impliedFormat":99},{"version":"40d9e43acee39702745eb5c641993978ac40f227475eacc99a83ba893ad995db","impliedFormat":99},{"version":"8a66b69b21c8de9cb88b4b6d12f655d5b7636e692a014c5aa1bd81745c8c51d5","impliedFormat":99},{"version":"ebbb846bdd5a78fdacff59ae04cea7a097912aeb1a2b34f8d88f4ebb84643069","impliedFormat":99},{"version":"7321adb29ffd637acb33ee67ea035f1a97d0aa0b14173291cc2fd58e93296e04","impliedFormat":99},{"version":"320816f1a4211188f07a782bdb6c1a44555b3e716ce13018f528ad7387108d5f","impliedFormat":99},{"version":"b2cc8a474b7657f4a03c67baf6bff75e26635fd4b5850675e8cad524a09ddd0c","impliedFormat":99},{"version":"0d081e9dc251063cc69611041c17d25847e8bdbe18164baaa89b7f1f1633c0ab","impliedFormat":99},{"version":"a64c25d8f4ec16339db49867ea2324e77060782993432a875d6e5e8608b0de1e","impliedFormat":99},{"version":"0739310b6b777f3e2baaf908c0fbc622c71160e6310eb93e0d820d86a52e2e23","impliedFormat":99},{"version":"37b32e4eadd8cd3c263e7ac1681c58b2ac54f3f77bb34c5e4326cc78516d55a9","impliedFormat":99},{"version":"9b7a8974e028c4ed6f7f9abb969e3eb224c069fd7f226e26fcc3a5b0e2a1eba8","impliedFormat":99},{"version":"e8100b569926a5592146ed68a0418109d625a045a94ed878a8c5152b1379237c","impliedFormat":99},{"version":"594201c616c318b7f3149a912abd8d6bdf338d765b7bcbde86bca2e66b144606","impliedFormat":99},{"version":"03e380975e047c5c6ded532cf8589e6cc85abb7be3629e1e4b0c9e703f2fd36f","impliedFormat":99},{"version":"fae14b53b7f52a8eb3274c67c11f261a58530969885599efe3df0277b48909e1","impliedFormat":99},{"version":"c41206757c428186f2e0d1fd373915c823504c249336bdc9a9c9bbdf9da95fef","impliedFormat":99},{"version":"e961f853b7b0111c42b763a6aa46fc70d06a697db3d8ed69b38f7ba0ae42a62b","impliedFormat":99},{"version":"3db90f79e36bcb60b3f8de1bc60321026800979c150e5615047d598c787a64b7","impliedFormat":99},{"version":"639b6fb3afbb8f6067c1564af2bd284c3e883f0f1556d59bd5eb87cdbbdd8486","impliedFormat":99},{"version":"49795f5478cb607fd5965aa337135a8e7fd1c58bc40c0b6db726adf186dd403f","impliedFormat":99},{"version":"7d8890e6e2e4e215959e71d5b5bd49482cf7a23be68d48ea446601a4c99bd511","impliedFormat":99},{"version":"d56f72c4bb518de5702b8b6ae3d3c3045c99e0fd48b3d3b54c653693a8378017","impliedFormat":99},{"version":"4c9ac40163e4265b5750510d6d2933fb7b39023eed69f7b7c68b540ad960826e","impliedFormat":99},{"version":"8dfab17cf48e7be6e023c438a9cdf6d15a9b4d2fa976c26e223ba40c53eb8da8","impliedFormat":99},{"version":"38bdf7ccacfd8e418de3a7b1e3cecc29b5625f90abc2fa4ac7843a290f3bf555","impliedFormat":99},{"version":"9819e46a914735211fbc04b8dc6ba65152c62e3a329ca0601a46ba6e05b2c897","impliedFormat":99},{"version":"50f0dc9a42931fb5d65cdd64ba0f7b378aedd36e0cfca988aa4109aad5e714cb","impliedFormat":99},{"version":"894f23066f9fafccc6e2dd006ed5bd85f3b913de90f17cf1fe15a2eb677fd603","impliedFormat":99},{"version":"abdf39173867e6c2d6045f120a316de451bbb6351a6929546b8470ddf2e4b3b9","impliedFormat":99},{"version":"aa2cb4053f948fbd606228195bbe44d78733861b6f7204558bbee603202ee440","impliedFormat":99},{"version":"6911b41bfe9942ac59c2da1bbcbe5c3c1f4e510bf65cae89ed00f434cc588860","impliedFormat":99},{"version":"7b81bc4d4e2c764e85d869a8dd9fe3652b34b45c065482ac94ffaacc642b2507","impliedFormat":99},{"version":"895df4edb46ccdcbce2ec982f5eed292cf7ea3f7168f1efea738ee346feab273","impliedFormat":99},{"version":"8692bb1a4799eda7b2e3288a6646519d4cebb9a0bddf800085fc1bd8076997a0","impliedFormat":99},{"version":"239c9e98547fe99711b01a0293f8a1a776fc10330094aa261f3970aaba957c82","impliedFormat":99},{"version":"34833ec50360a32efdc12780ae624e9a710dd1fd7013b58c540abf856b54285a","impliedFormat":99},{"version":"647538e4007dcc351a8882067310a0835b5bb8559d1cfa5f378e929bceb2e64d","impliedFormat":99},{"version":"992d6b1abcc9b6092e5a574d51d441238566b6461ade5de53cb9718e4f27da46","impliedFormat":99},{"version":"938702305649bf1050bd79f3803cf5cc2904596fc1edd4e3b91033184eae5c54","impliedFormat":99},{"version":"1e931d3c367d4b96fe043e792196d9c2cf74f672ff9c0b894be54e000280a79d","impliedFormat":99},{"version":"05bec322ea9f6eb9efcd6458bb47087e55bd688afdd232b78379eb5d526816ed","impliedFormat":99},{"version":"4c449a874c2d2e5e5bc508e6aa98f3140218e78c585597a21a508a647acd780a","impliedFormat":99},{"version":"dae15e326140a633d7693e92b1af63274f7295ea94fb7c322d5cbe3f5e48be88","impliedFormat":99},{"version":"c2b0a869713bca307e58d81d1d1f4b99ebfc7ec8b8f17e80dde40739aa8a2bc6","impliedFormat":99},{"version":"6e4b4ff6c7c54fa9c6022e88f2f3e675eac3c6923143eb8b9139150f09074049","impliedFormat":99},{"version":"69559172a9a97bbe34a32bff8c24ef1d8c8063feb5f16a6d3407833b7ee504cf","impliedFormat":99},{"version":"86b94a2a3edcb78d9bfcdb3b382547d47cb017e71abe770c9ee8721e9c84857f","impliedFormat":99},{"version":"e3fafafda82853c45c0afc075fea1eaf0df373a06daf6e6c7f382f9f61b2deb3","impliedFormat":99},{"version":"a4ba4b31de9e9140bc49c0addddbfaf96b943a7956a46d45f894822e12bf5560","impliedFormat":99},{"version":"d8a7926fc75f2ed887f17bae732ee31a4064b8a95a406c87e430c58578ee1f67","impliedFormat":99},{"version":"9886ffbb134b0a0059fd82219eba2a75f8af341d98bc6331b6ef8a921e10ec68","impliedFormat":99},{"version":"c2ead057b70d0ae7b87a771461a6222ebdb187ba6f300c974768b0ae5966d10e","impliedFormat":99},{"version":"46687d985aed8485ab2c71085f82fafb11e69e82e8552cf5d3849c00e64a00a5","impliedFormat":99},{"version":"999ca66d4b5e2790b656e0a7ce42267737577fc7a52b891e97644ec418eff7ec","impliedFormat":99},{"version":"ec948ee7e92d0888f92d4a490fdd0afb27fbf6d7aabebe2347a3e8ac82c36db9","impliedFormat":99},{"version":"03ef2386c683707ce741a1c30cb126e8c51a908aa0acc01c3471fafb9baaacd5","impliedFormat":99},{"version":"66a372e03c41d2d5e920df5282dadcec2acae4c629cb51cab850825d2a144cea","impliedFormat":99},{"version":"ddf9b157bd4c06c2e4646c9f034f36267a0fbd028bd4738214709de7ea7c548b","impliedFormat":99},{"version":"3e795aac9be23d4ad9781c00b153e7603be580602e40e5228e2dafe8a8e3aba1","impliedFormat":99},{"version":"98c461ec5953dfb1b5d5bca5fee0833c8a932383b9e651ca6548e55f1e2c71c3","impliedFormat":99},{"version":"5c42107b46cb1d36b6f1dee268df125e930b81f9b47b5fa0b7a5f2a42d556c10","impliedFormat":99},{"version":"7e32f1251d1e986e9dd98b6ff25f62c06445301b94aeebdf1f4296dbd2b8652f","impliedFormat":99},{"version":"2f7e328dda700dcb2b72db0f58c652ae926913de27391bd11505fc5e9aae6c33","impliedFormat":99},{"version":"3de7190e4d37da0c316db53a8a60096dbcd06d1a50677ccf11d182fa26882080","impliedFormat":99},{"version":"a9d6f87e59b32b02c861aade3f4477d7277c30d43939462b93f48644fa548c58","impliedFormat":99},{"version":"2bce8fd2d16a9432110bbe0ba1e663fd02f7d8b8968cd10178ea7bc306c4a5df","impliedFormat":99},{"version":"798bedbf45a8f1e55594e6879cd46023e8767757ecce1d3feaa78d16ad728703","impliedFormat":99},{"version":"62723d5ac66f7ed6885a3931dd5cfa017797e73000d590492988a944832e8bc2","impliedFormat":99},{"version":"03db8e7df7514bf17fc729c87fff56ca99567b9aa50821f544587a666537c233","impliedFormat":99},{"version":"9b1f311ba4409968b68bf20b5d892dbd3c5b1d65c673d5841c7dbde351bc0d0b","impliedFormat":99},{"version":"2d1e8b5431502739fe335ceec0aaded030b0f918e758a5d76f61effa0965b189","impliedFormat":99},{"version":"e725839b8f884dab141b42e9d7ff5659212f6e1d7b4054caa23bc719a4629071","impliedFormat":99},{"version":"4fa38a0b8ae02507f966675d0a7d230ed67c92ab8b5736d99a16c5fbe2b42036","impliedFormat":99},{"version":"50ec1e8c23bad160ddedf8debeebc722becbddda127b8fdce06c23eacd3fe689","impliedFormat":99},{"version":"9a0aea3a113064fd607f41375ade308c035911d3c8af5ae9db89593b5ca9f1f9","impliedFormat":99},{"version":"8d643903b58a0bf739ce4e6a8b0e5fb3fbdfaacbae50581b90803934b27d5b89","impliedFormat":99},{"version":"19de2915ccebc0a1482c2337b34cb178d446def2493bf775c4018a4ea355adb8","impliedFormat":99},{"version":"9be8fc03c8b5392cd17d40fd61063d73f08d0ee3457ecf075dcb3768ae1427bd","impliedFormat":99},{"version":"a2d89a8dc5a993514ca79585039eea083a56822b1d9b9d9d85b14232e4782cbe","impliedFormat":99},{"version":"f526f20cae73f17e8f38905de4c3765287575c9c4d9ecacee41cfda8c887da5b","impliedFormat":99},{"version":"d9ec0978b7023612b9b83a71fee8972e290d02f8ff894e95cdd732cd0213b070","impliedFormat":99},{"version":"7ab10c473a058ec8ac4790b05cae6f3a86c56be9b0c0a897771d428a2a48a9f9","impliedFormat":99},{"version":"451d7a93f8249d2e1453b495b13805e58f47784ef2131061821b0e456a9fd0e1","impliedFormat":99},{"version":"21c56fe515d227ed4943f275a8b242d884046001722a4ba81f342a08dbe74ae2","impliedFormat":99},{"version":"d8311f0c39381aa1825081c921efde36e618c5cf46258c351633342a11601208","impliedFormat":99},{"version":"6b50c3bcc92dc417047740810596fcb2df2502aa3f280c9e7827e87896da168a","impliedFormat":99},{"version":"18a6b318d1e7b31e5749a52be0cf9bbce1b275f63190ef32e2c79db0579328ca","impliedFormat":99},{"version":"6a2d0af2c27b993aa85414f3759898502aa198301bc58b0d410948fe908b07b0","impliedFormat":99},{"version":"2da11b6f5c374300e5e66a6b01c3c78ec21b5d3fec0748a28cc28e00be73e006","impliedFormat":99},{"version":"0729691b39c24d222f0b854776b00530877217bfc30aac1dc7fa2f4b1795c536","impliedFormat":99},{"version":"ca45bb5c98c474d669f0e47615e4a5ae65d90a2e78531fda7862ee43e687a059","impliedFormat":99},{"version":"c1c058b91d5b9a24c95a51aea814b0ad4185f411c38ac1d5eef0bf3cebec17dc","impliedFormat":99},{"version":"3ab0ed4060b8e5b5e594138aab3e7f0262d68ad671d6678bcda51568d4fc4ccc","impliedFormat":99},{"version":"e2bf1faba4ff10a6020c41df276411f641d3fdce5c6bae1db0ec84a0bf042106","impliedFormat":99},{"version":"80b0a8fe14d47a71e23d7c3d4dcee9584d4282ef1d843b70cab1a42a4ea1588c","impliedFormat":99},{"version":"a0f02a73f6e3de48168d14abe33bf5970fdacdb52d7c574e908e75ad571e78f7","impliedFormat":99},{"version":"c728002a759d8ec6bccb10eed56184e86aeff0a762c1555b62b5d0fa9d1f7d64","impliedFormat":99},{"version":"586f94e07a295f3d02f847f9e0e47dbf14c16e04ccc172b011b3f4774a28aaea","impliedFormat":99},{"version":"cfe1a0f4ed2df36a2c65ea6bc235dbb8cf6e6c25feb6629989f1fa51210b32e7","impliedFormat":99},{"version":"8ba69c9bf6de79c177329451ffde48ddab7ec495410b86972ded226552f664df","impliedFormat":99},{"version":"15111cbe020f8802ad1d150524f974a5251f53d2fe10eb55675f9df1e82dbb62","impliedFormat":99},{"version":"782dc153c56a99c9ed07b2f6f497d8ad2747764966876dbfef32f3e27ce11421","impliedFormat":99},{"version":"cc2db30c3d8bb7feb53a9c9ff9b0b859dd5e04c83d678680930b5594b2bf99cb","impliedFormat":99},{"version":"46909b8c85a6fd52e0807d18045da0991e3bdc7373435794a6ba425bc23cc6be","impliedFormat":99},{"version":"e4e511ff63bb6bd69a2a51e472c6044298bca2c27835a34a20827bc3ef9b7d13","impliedFormat":99},{"version":"2c86f279d7db3c024de0f21cd9c8c2c972972f842357016bfbbd86955723b223","impliedFormat":99},{"version":"112c895cff9554cf754f928477c7d58a21191c8089bffbf6905c87fe2dc6054f","impliedFormat":99},{"version":"8cfc293b33082003cacbf7856b8b5e2d6dd3bde46abbd575b0c935dc83af4844","impliedFormat":99},{"version":"d2c5c53f85ce0474b3a876d76c4fc44ff7bb766b14ed1bf495f9abac181d7f5f","impliedFormat":99},{"version":"3c523f27926905fcbe20b8301a0cc2da317f3f9aea2273f8fc8d9ae88b524819","impliedFormat":99},{"version":"9ca0d706f6b039cc52552323aeccb4db72e600b67ddc7a54cebc095fc6f35539","impliedFormat":99},{"version":"a64909a9f75081342ddd061f8c6b49decf0d28051bc78e698d347bdcb9746577","impliedFormat":99},{"version":"7d8d55ae58766d0d52033eae73084c4db6a93c4630a3e17f419dd8a0b2a4dcd8","impliedFormat":99},{"version":"b8b5c8ba972d9ffff313b3c8a3321e7c14523fc58173862187e8d1cb814168ac","impliedFormat":99},{"version":"9c42c0fa76ee36cf9cc7cc34b1389fbb4bd49033ec124b93674ec635fabf7ffe","impliedFormat":99},{"version":"6184c8da9d8107e3e67c0b99dedb5d2dfe5ccf6dfea55c2a71d4037caf8ca196","impliedFormat":99},{"version":"4030ceea7bf41449c1b86478b786e3b7eadd13dfe5a4f8f5fe2eb359260e08b3","impliedFormat":99},{"version":"7bf516ec5dfc60e97a5bde32a6b73d772bd9de24a2e0ec91d83138d39ac83d04","impliedFormat":99},{"version":"e6a6fb3e6525f84edf42ba92e261240d4efead3093aca3d6eb1799d5942ba393","impliedFormat":99},{"version":"45df74648934f97d26800262e9b2af2f77ef7191d4a5c2eb1df0062f55e77891","impliedFormat":99},{"version":"3fe361e4e567f32a53af1f2c67ad62d958e3d264e974b0a8763d174102fe3b29","impliedFormat":99},{"version":"28b520acee4bc6911bfe458d1ad3ebc455fa23678463f59946ad97a327c9ab2b","impliedFormat":99},{"version":"121b39b1a9ad5d23ed1076b0db2fe326025150ef476dccb8bf87778fcc4f6dd7","impliedFormat":99},{"version":"f791f92a060b52aa043dde44eb60307938f18d4c7ac13df1b52c82a1e658953f","impliedFormat":99},{"version":"df09443e7743fd6adc7eb108e760084bacdf5914403b7aac5fbd4dc4e24e0c2c","impliedFormat":99},{"version":"eeb4ff4aa06956083eaa2aad59070361c20254b865d986bc997ee345dbd44cbb","impliedFormat":99},{"version":"ed84d5043444d51e1e5908f664addc4472c227b9da8401f13daa565f23624b6e","impliedFormat":99},{"version":"146bf888b703d8baa825f3f2fb1b7b31bda5dff803e15973d9636cdda33f4af3","impliedFormat":99},{"version":"b4ec8b7a8d23bdf7e1c31e43e5beac3209deb7571d2ccf2a9572865bf242da7c","impliedFormat":99},{"version":"3fba0d61d172091638e56fba651aa1f8a8500aac02147d29bd5a9cc0bc8f9ec2","impliedFormat":99},{"version":"a5a57deb0351b03041e0a1448d3a0cc5558c48e0ed9b79b69c99163cdca64ad8","impliedFormat":99},{"version":"9bcecf0cbc2bfc17e33199864c19549905309a0f9ecc37871146107aac6e05ae","impliedFormat":99},{"version":"d6a211db4b4a821e93c978add57e484f2a003142a6aef9dbfa1fe990c66f337b","impliedFormat":99},{"version":"bd4d10bd44ce3f630dd9ce44f102422cb2814ead5711955aa537a52c8d2cae14","impliedFormat":99},{"version":"08e4c39ab1e52eea1e528ee597170480405716bae92ebe7a7c529f490afff1e0","impliedFormat":99},{"version":"625bb2bc3867557ea7912bd4581288a9fca4f3423b8dffa1d9ed57fafc8610e3","impliedFormat":99},{"version":"d1992164ecc334257e0bef56b1fd7e3e1cea649c70c64ffc39999bb480c0ecdf","impliedFormat":99},{"version":"a53ff2c4037481eb357e33b85e0d78e8236e285b6428b93aa286ceea1db2f5dc","impliedFormat":99},{"version":"4fe608d524954b6857d78857efce623852fcb0c155f010710656f9db86e973a5","impliedFormat":99},{"version":"b53b62a9838d3f57b70cc456093662302abb9962e5555f5def046172a4fe0d4e","impliedFormat":99},{"version":"9866369eb72b6e77be2a92589c9df9be1232a1a66e96736170819e8a1297b61f","impliedFormat":99},{"version":"43abfbdf4e297868d780b8f4cfdd8b781b90ecd9f588b05e845192146a86df34","impliedFormat":99},{"version":"582419791241fb851403ae4a08d0712a63d4c94787524a7419c2bc8e0eb1b031","impliedFormat":99},{"version":"18437eeb932fe48590b15f404090db0ab3b32d58f831d5ffc157f63b04885ee5","impliedFormat":99},{"version":"0c5eaedf622d7a8150f5c2ec1f79ac3d51eea1966b0b3e61bfdea35e8ca213a7","impliedFormat":99},{"version":"fac39fc7a9367c0246de3543a6ee866a0cf2e4c3a8f64641461c9f2dac0d8aae","impliedFormat":99},{"version":"3b9f559d0200134f3c196168630997caedeadc6733523c8b6076a09615d5dec8","impliedFormat":99},{"version":"932af64286d9723da5ef7b77a0c4229829ce8e085e6bcc5f874cb0b83e8310d4","impliedFormat":99},{"version":"adeb9278f11f5561157feee565171c72fd48f5fe34ed06f71abf24e561fcaa1e","impliedFormat":99},{"version":"2269fef79b4900fc6b08c840260622ca33524771ff24fda5b9101ad98ea551f3","impliedFormat":99},{"version":"73d47498a1b73d5392d40fb42a3e7b009ae900c8423f4088c4faa663cc508886","impliedFormat":99},{"version":"7efc34cdc4da0968c3ba687bc780d5cacde561915577d8d1c1e46c7ac931d023","impliedFormat":99},{"version":"3c20a3bb0c50c819419f44aa55acc58476dad4754a16884cef06012d02b0722f","impliedFormat":99},{"version":"4569abf6bc7d51a455503670f3f1c0e9b4f8632a3b030e0794c61bfbba2d13be","impliedFormat":99},{"version":"98b2297b4dc1404078a54b61758d8643e4c1d7830af724f3ed2445d77a7a2d57","impliedFormat":99},{"version":"952ba89d75f1b589e07070fea2d8174332e3028752e76fd46e1c16cc51e6e2af","impliedFormat":99},{"version":"b6c9a2deefb6a57ff68d2a38d33c34407b9939487fc9ee9f32ba3ecf2987a88a","impliedFormat":99},{"version":"f6b371377bab3018dac2bca63e27502ecbd5d06f708ad7e312658d3b5315d948","impliedFormat":99},{"version":"31947dd8f1c8eeb7841e1f139a493a73bd520f90e59a6415375d0d8e6a031f01","impliedFormat":99},{"version":"95cd83b807e10b1af408e62caf5fea98562221e8ddca9d7ccc053d482283ddda","impliedFormat":99},{"version":"19287d6b76288c2814f1633bdd68d2b76748757ffd355e73e41151644e4773d6","impliedFormat":99},{"version":"fc4e6ec7dade5f9d422b153c5d8f6ad074bd9cc4e280415b7dc58fb5c52b5df1","impliedFormat":99},{"version":"3aea973106e1184db82d8880f0ca134388b6cbc420f7309d1c8947b842886349","impliedFormat":99},{"version":"765e278c464923da94dda7c2b281ece92f58981642421ae097862effe2bd30fa","impliedFormat":99},{"version":"de260bed7f7d25593f59e859bd7c7f8c6e6bb87e8686a0fcafa3774cb5ca02d8","impliedFormat":99},{"version":"b5c341ce978f5777fbe05bc86f65e9906a492fa6b327bda3c6aae900c22e76c6","impliedFormat":99},{"version":"686ddbfaf88f06b02c6324005042f85317187866ca0f8f4c9584dd9479653344","impliedFormat":99},{"version":"7f789c0c1db29dd3aab6e159d1ba82894a046bf8df595ac48385931ae6ad83e0","impliedFormat":99},{"version":"8eb3057d4fe9b59b2492921b73a795a2455ebe94ccb3d01027a7866612ead137","impliedFormat":99},{"version":"1e43c5d7aee1c5ec20611e28b5417f5840c75d048de9d7f1800d6808499236f8","impliedFormat":99},{"version":"d42610a5a2bee4b71769968a24878885c9910cd049569daa2d2ee94208b3a7a5","impliedFormat":99},{"version":"f6ed95506a6ed2d40ed5425747529befaa4c35fcbbc1e0d793813f6d725690fa","impliedFormat":99},{"version":"a6fcc1cd6583939506c906dff1276e7ebdc38fbe12d3e108ba38ad231bd18d97","impliedFormat":99},{"version":"ed13354f0d96fb6d5878655b1fead51722b54875e91d5e53ef16de5b71a0e278","impliedFormat":99},{"version":"1193b4872c1fb65769d8b164ca48124c7ebacc33eae03abf52087c2b29e8c46c","impliedFormat":99},{"version":"af682dfabe85688289b420d939020a10eb61f0120e393d53c127f1968b3e9f66","impliedFormat":99},{"version":"0dca04006bf13f72240c6a6a502df9c0b49c41c3cab2be75e81e9b592dcd4ea8","impliedFormat":99},{"version":"79d6ac4a2a229047259116688f9cd62fda25422dee3ad304f77d7e9af53a41ef","impliedFormat":99},{"version":"64534c17173990dc4c3d9388d16675a059aac407031cfce8f7fdffa4ee2de988","impliedFormat":99},{"version":"ba46d160a192639f3ca9e5b640b870b1263f24ac77b6895ab42960937b42dcbb","impliedFormat":99},{"version":"5e5ddd6fc5b590190dde881974ab969455e7fad61012e32423415ae3d085b037","impliedFormat":99},{"version":"1c16fd00c42b60b96fe0fa62113a953af58ddf0d93b0a49cb4919cf5644616f0","impliedFormat":99},{"version":"eb240c0e6b412c57f7d9a9f1c6cd933642a929837c807b179a818f6e8d3a4e44","impliedFormat":99},{"version":"4a7bde5a1155107fc7d9483b8830099f1a6072b6afda5b78d91eb5d6549b3956","impliedFormat":99},{"version":"3c1baaffa9a24cc7ef9eea6b64742394498e0616b127ca630aca0e11e3298006","impliedFormat":99},{"version":"87ca1c31a326c898fa3feb99ec10750d775e1c84dbb7c4b37252bcf3742c7b21","impliedFormat":99},{"version":"d7bd26af1f5457f037225602035c2d7e876b80d02663ab4ca644099ad3a55888","impliedFormat":99},{"version":"2ad0a6b93e84a56b64f92f36a07de7ebcb910822f9a72ad22df5f5d642aff6f3","impliedFormat":99},{"version":"523d1775135260f53f672264937ee0f3dc42a92a39de8bee6c48c7ea60b50b5a","impliedFormat":99},{"version":"e441b9eebbc1284e5d995d99b53ed520b76a87cab512286651c4612d86cd408e","impliedFormat":99},{"version":"76f853ee21425c339a79d28e0859d74f2e53dee2e4919edafff6883dd7b7a80f","impliedFormat":99},{"version":"00cf042cd6ba1915648c8d6d2aa00e63bbbc300ea54d28ed087185f0f662e080","impliedFormat":99},{"version":"f57e6707d035ab89a03797d34faef37deefd3dd90aa17d90de2f33dce46a2c56","impliedFormat":99},{"version":"cc8b559b2cf9380ca72922c64576a43f000275c72042b2af2415ce0fb88d7077","impliedFormat":99},{"version":"1a337ca294c428ba8f2eb01e887b28d080ee4a4307ae87e02e468b1d26af4a74","impliedFormat":99},{"version":"5a15362fc2e72765a908c0d4dd89e3ab3b763e8bc8c23f19234a709ecfd202fe","impliedFormat":99},{"version":"2dffdfe62ac8af0943853234519616db6fd8958fc7ff631149fd8364e663f361","impliedFormat":99},{"version":"5dbdb2b2229b5547d8177c34705272da5a10b8d0033c49efbc9f6efba5e617f2","impliedFormat":99},{"version":"6fc0498cd8823d139004baff830343c9a0d210c687b2402c1384fb40f0aa461c","impliedFormat":99},{"version":"8492306a4864a1dc6fc7e0cc0de0ae9279cbd37f3aae3e9dc1065afcdc83dddc","impliedFormat":99},{"version":"c011b378127497d6337a93f020a05f726db2c30d55dc56d20e6a5090f05919a6","impliedFormat":99},{"version":"f4556979e95a274687ae206bbab2bb9a71c3ad923b92df241d9ab88c184b3f40","impliedFormat":99},{"version":"50e82bb6e238db008b5beba16d733b77e8b2a933c9152d1019cf8096845171a4","impliedFormat":99},{"version":"d6011f8b8bbf5163ef1e73588e64a53e8bf1f13533c375ec53e631aad95f1375","impliedFormat":99},{"version":"693cd7936ac7acfa026d4bcb5801fce71cec49835ba45c67af1ef90dbfd30af7","impliedFormat":99},{"version":"195e2cf684ecddfc1f6420564535d7c469f9611ce7a380d6e191811f84556cd2","impliedFormat":99},{"version":"1dc6b6e7b2a7f2962f31c77f4713f3a5a132bbe14c00db75d557568fe82e4311","impliedFormat":99},{"version":"add93b1180e9aaac2dae4ef3b16f7655893e2ecbe62bd9e48366c305f0063d89","impliedFormat":99},{"version":"594bd896fe37c970aafb7a376ebeec4c0d636b62a5f611e2e27d30fb839ad8a5","impliedFormat":99},{"version":"b1c6a6faf60542ba4b4271db045d7faea56e143b326ef507d2797815250f3afc","impliedFormat":99},{"version":"8c8b165beb794260f462679329b131419e9f5f35212de11c4d53e6d4d9cbedf6","impliedFormat":99},{"version":"ee5a4cf57d49fcf977249ab73c690a59995997c4672bb73fcaaf2eed65dbd1b2","impliedFormat":99},{"version":"f9f36051f138ab1c40b76b230c2a12b3ce6e1271179f4508da06a959f8bee4c1","impliedFormat":99},{"version":"9dc2011a3573d271a45c12656326530c0930f92539accbec3531d65131a14a14","impliedFormat":99},{"version":"091521ce3ede6747f784ae6f68ad2ea86bbda76b59d2bf678bcad2f9d141f629","impliedFormat":99},{"version":"202c2be951f53bafe943fb2c8d1245e35ed0e4dfed89f48c9a948e4d186dd6d4","impliedFormat":99},{"version":"c618aead1d799dbf4f5b28df5a6b9ce13d72722000a0ec3fe90a8115b1ea9226","impliedFormat":99},{"version":"9b0bf59708549c3e77fddd36530b95b55419414f88bbe5893f7bc8b534617973","impliedFormat":99},{"version":"7e216f67c4886f1bde564fb4eebdd6b185f262fe85ad1d6128cad9b229b10354","impliedFormat":99},{"version":"cd51e60b96b4d43698df74a665aa7a16604488193de86aa60ec0c44d9f114951","impliedFormat":99},{"version":"b63341fb6c7ba6f2aeabd9fc46b43e6cc2d2b9eec06534cfd583d9709f310ec2","impliedFormat":99},{"version":"be2af50c81b15bcfe54ad60f53eb1c72dae681c72d0a9dce1967825e1b5830a3","impliedFormat":99},{"version":"be5366845dfb9726f05005331b9b9645f237f1ddc594c0def851208e8b7d297b","impliedFormat":99},{"version":"5ddd536aaeadd4bf0f020492b3788ed209a7050ce27abec4e01c7563ff65da81","impliedFormat":99},{"version":"e243b24da119c1ef0d79af2a45217e50682b139cb48e7607efd66cc01bd9dcda","impliedFormat":99},{"version":"5b1398c8257fd180d0bf62e999fe0a89751c641e87089a83b24392efda720476","impliedFormat":99},{"version":"1588b1359f8507a16dbef67cd2759965fc2e8d305e5b3eb71be5aa9506277dff","impliedFormat":99},{"version":"4c99f2524eee1ec81356e2b4f67047a4b7efaf145f1c4eb530cd358c36784423","impliedFormat":99},{"version":"b30c6b9f6f30c35d6ef84daed1c3781e367f4360171b90598c02468b0db2fc3d","impliedFormat":99},{"version":"79c0d32274ccfd45fae74ac61d17a2be27aea74c70806d22c43fc625b7e9f12a","impliedFormat":99},{"version":"1b7e3958f668063c9d24ac75279f3e610755b0f49b1c02bb3b1c232deb958f54","impliedFormat":99},{"version":"779d4022c3d0a4df070f94858a33d9ebf54af3664754536c4ce9fd37c6f4a8db","impliedFormat":99},{"version":"e662f063d46aa8c088edffdf1d96cb13d9a2cbf06bc38dc6fc62b4d125fb7b49","impliedFormat":99},{"version":"d1d612df1e41c90d9678b07740d13d4f8e6acec2f17390d4ff4be5c889a6d37d","impliedFormat":99},{"version":"c95933fe140918892d569186f17b70ef6b1162f851a0f13f6a89e8f4d599c5a1","impliedFormat":99},{"version":"1d8d30677f87c13c2786980a80750ac1e281bdb65aa013ea193766fe9f0edd74","impliedFormat":99},{"version":"4661673cbc984b8a6ee5e14875a71ed529b64e7f8e347e12c0db4cecc25ad67d","impliedFormat":99},{"version":"7f980a414274f0f23658baa9a16e21d828535f9eac538e2eab2bb965325841db","impliedFormat":99},{"version":"20fb747a339d3c1d4a032a31881d0c65695f8167575e01f222df98791a65da9b","impliedFormat":99},{"version":"dd4e7ebd3f205a11becf1157422f98db675a626243d2fbd123b8b93efe5fb505","impliedFormat":99},{"version":"43ec6b74c8d31e88bb6947bb256ad78e5c6c435cbbbad991c3ff39315b1a3dba","impliedFormat":99},{"version":"b27242dd3af2a5548d0c7231db7da63d6373636d6c4e72d9b616adaa2acef7e1","impliedFormat":99},{"version":"e0ee7ba0571b83c53a3d6ec761cf391e7128d8f8f590f8832c28661b73c21b68","impliedFormat":99},{"version":"072bfd97fc61c894ef260723f43a416d49ebd8b703696f647c8322671c598873","impliedFormat":99},{"version":"e70875232f5d5528f1650dd6f5c94a5bed344ecf04bdbb998f7f78a3c1317d02","impliedFormat":99},{"version":"8e495129cb6cd8008de6f4ff8ce34fe1302a9e0dcff8d13714bd5593be3f7898","impliedFormat":99},{"version":"0345bc0b1067588c4ea4c48e34425d3284498c629bc6788ebc481c59949c9037","impliedFormat":99},{"version":"e30f5b5d77c891bc16bd65a2e46cd5384ea57ab3d216c377f482f535db48fc8f","impliedFormat":99},{"version":"f113afe92ee919df8fc29bca91cab6b2ffbdd12e4ac441d2bb56121eb5e7dbe3","impliedFormat":99},{"version":"49d567cc002efb337f437675717c04f207033f7067825b42bb59c9c269313d83","impliedFormat":99},{"version":"1d248f707d02dc76555298a934fba0f337f5028bb1163ce59cd7afb831c9070f","impliedFormat":99},{"version":"5d8debffc9e7b842dc0f17b111673fe0fc0cca65e67655a2b543db2150743385","impliedFormat":99},{"version":"5fccbedc3eb3b23bc6a3a1e44ceb110a1f1a70fa8e76941dce3ae25752caa7a9","impliedFormat":99},{"version":"f4031b95f3bab2b40e1616bd973880fb2f1a97c730bac5491d28d6484fac9560","impliedFormat":99},{"version":"dbe75b3c5ed547812656e7945628f023c4cd0bc1879db0db3f43a57fb8ec0e2b","impliedFormat":99},{"version":"b754718a546a1939399a6d2a99f9022d8a515f2db646bab09f7d2b5bff3cbb82","impliedFormat":99},{"version":"2eef10fb18ed0b4be450accf7a6d5bcce7b7f98e02cac4e6e793b7ad04fc0d79","impliedFormat":99},{"version":"c46f471e172c3be12c0d85d24876fedcc0c334b0dab48060cdb1f0f605f09fed","impliedFormat":99},{"version":"7d6ddeead1d208588586c58c26e4a23f0a826b7a143fb93de62ed094d0056a33","impliedFormat":99},{"version":"7c5782291ff6e7f2a3593295681b9a411c126e3736b83b37848032834832e6b9","impliedFormat":99},{"version":"3a3f09df6258a657dd909d06d4067ee360cd2dccc5f5d41533ae397944a11828","impliedFormat":99},{"version":"ea54615be964503fec7bce04336111a6fa455d3e8d93d44da37b02c863b93eb8","impliedFormat":99},{"version":"2a83694bc3541791b64b0e57766228ea23d92834df5bf0b0fcb93c5bb418069c","impliedFormat":99},{"version":"b5913641d6830e7de0c02366c08b1d26063b5758132d8464c938e78a45355979","impliedFormat":99},{"version":"46c095d39c1887979d9494a824eda7857ec13fb5c20a6d4f7d02c2975309bf45","impliedFormat":99},{"version":"f6e02ca076dc8e624aa38038e3488ebd0091e2faea419082ed764187ba8a6500","impliedFormat":99},{"version":"4d49e8a78aba1d4e0ad32289bf8727ae53bc2def9285dff56151a91e7d770c3e","impliedFormat":99},{"version":"63315cf08117cc728eab8f3eec8801a91d2cd86f91d0ae895d7fd928ab54596d","impliedFormat":99},{"version":"a14a6f3a5636bcaebfe9ec2ccfa9b07dc94deb1f6c30358e9d8ea800a1190d5e","impliedFormat":99},{"version":"21206e7e81876dabf2a7af7aa403f343af1c205bdcf7eff24d9d7f4eee6214c4","impliedFormat":99},{"version":"cd0a9f0ffec2486cad86b7ef1e4da42953ffeb0eb9f79f536e16ff933ec28698","impliedFormat":99},{"version":"f609a6ec6f1ab04dba769e14d6b55411262fd4627a099e333aa8876ea125b822","impliedFormat":99},{"version":"6d8052bb814be030c64cb22ca0e041fe036ad3fc8d66208170f4e90d0167d354","impliedFormat":99},{"version":"851f72a5d3e8a2bf7eeb84a3544da82628f74515c92bdf23c4a40af26dcc1d16","impliedFormat":99},{"version":"59692a7938aab65ea812a8339bbc63c160d64097fe5a457906ea734d6f36bcd4","impliedFormat":99},{"version":"8cb3b95e610c44a9986a7eab94d7b8f8462e5de457d5d10a0b9c6dd16bde563b","impliedFormat":99},{"version":"f571713abd9a676da6237fe1e624d2c6b88c0ca271c9f1acc1b4d8efeea60b66","impliedFormat":99},{"version":"16c5d3637d1517a3d17ed5ebcfbb0524f8a9997a7b60f6100f7c5309b3bb5ac8","impliedFormat":99},{"version":"ca1ec669726352c8e9d897f24899abf27ad15018a6b6bcf9168d5cd1242058ab","impliedFormat":99},{"version":"bffb1b39484facf6d0c5d5feefe6c0736d06b73540b9ce0cf0f12da2edfd8e1d","impliedFormat":99},{"version":"f1663c030754f6171b8bb429096c7d2743282de7733bccd6f67f84a4c588d96e","impliedFormat":99},{"version":"dd09693285e58504057413c3adc84943f52b07d2d2fd455917f50fa2a63c9d69","impliedFormat":99},{"version":"d94c94593d03d44a03810a85186ae6d61ebeb3a17a9b210a995d85f4b584f23d","impliedFormat":99},{"version":"c7c3bf625a8cb5a04b1c0a2fbe8066ecdbb1f383d574ca3ffdabe7571589a935","impliedFormat":99},{"version":"7a2f39a4467b819e873cd672c184f45f548511b18f6a408fe4e826136d0193bb","impliedFormat":99},{"version":"f8a0ae0d3d4993616196619da15da60a6ec5a7dfaf294fe877d274385eb07433","impliedFormat":99},{"version":"2cca80de38c80ef6c26deb4e403ca1ff4efbe3cf12451e26adae5e165421b58d","impliedFormat":99},{"version":"0070d3e17aa5ad697538bf865faaff94c41f064db9304b2b949eb8bcccb62d34","impliedFormat":99},{"version":"53df93f2db5b7eb8415e98242c1c60f6afcac2db44bce4a8830c8f21eee6b1dd","impliedFormat":99},{"version":"d67bf28dc9e6691d165357424c8729c5443290367344263146d99b2f02a72584","impliedFormat":99},{"version":"932557e93fbdf0c36cc29b9e35950f6875425b3ac917fa0d3c7c2a6b4f550078","impliedFormat":99},{"version":"e3dc7ec1597fb61de7959335fb7f8340c17bebf2feb1852ed8167a552d9a4a25","impliedFormat":99},{"version":"b64e15030511c5049542c2e0300f1fe096f926cf612662884f40227267f5cd9f","impliedFormat":99},{"version":"1932796f09c193783801972a05d8fb1bfef941bb46ac76fbe1abb0b3bfb674fa","impliedFormat":99},{"version":"d9575d5787311ee7d61ad503f5061ebcfaf76b531cfecce3dc12afb72bb2d105","impliedFormat":99},{"version":"5b41d96c9a4c2c2d83f1200949f795c3b6a4d2be432b357ad1ab687e0f0de07c","impliedFormat":99},{"version":"38ec829a548e869de4c5e51671245a909644c8fb8e7953259ebb028d36b4dd06","impliedFormat":99},{"version":"20c2c5e44d37dac953b516620b5dba60c9abd062235cdf2c3bfbf722d877a96b","impliedFormat":99},{"version":"875fe6f7103cf87c1b741a0895fda9240fed6353d5e7941c8c8cbfb686f072b4","impliedFormat":99},{"version":"c0ccccf8fbcf5d95f88ed151d0d8ce3015aa88cf98d4fd5e8f75e5f1534ee7ae","impliedFormat":99},{"version":"1b1f4aba21fd956269ced249b00b0e5bfdbd5ebd9e628a2877ab1a2cf493c919","impliedFormat":99},{"version":"939e3299952dff0869330e3324ba16efe42d2cf25456d7721d7f01a43c1b0b34","impliedFormat":99},{"version":"f0a9b52faec508ba22053dedfa4013a61c0425c8b96598cef3dea9e4a22637c6","impliedFormat":99},{"version":"d5b302f50db61181adc6e209af46ae1f27d7ef3d822de5ea808c9f44d7d219fd","impliedFormat":99},{"version":"19131632ba492c83e8eeadf91a481def0e0b39ffc3f155bc20a7f640e0570335","impliedFormat":99},{"version":"4581c03abea21396c3e1bb119e2fd785a4d91408756209cbeed0de7070f0ab5b","impliedFormat":99},{"version":"ebcd3b99e17329e9d542ef2ccdd64fddab7f39bc958ee99bbdb09056c02d6e64","impliedFormat":99},{"version":"4b148999deb1d95b8aedd1a810473a41d9794655af52b40e4894b51a8a4e6a6d","impliedFormat":99},{"version":"1781cc99a0f3b4f11668bb37cca7b8d71f136911e87269e032f15cf5baa339bf","impliedFormat":99},{"version":"33f1b7fa96117d690035a235b60ecd3cd979fb670f5f77b08206e4d8eb2eb521","impliedFormat":99},{"version":"01429b306b94ff0f1f5548ce5331344e4e0f5872b97a4776bd38fd2035ad4764","impliedFormat":99},{"version":"c1bc4f2136de7044943d784e7a18cb8411c558dbb7be4e4b4876d273cbd952af","impliedFormat":99},{"version":"5470f84a69b94643697f0d7ec2c8a54a4bea78838aaa9170189b9e0a6e75d2cf","impliedFormat":99},{"version":"36aaa44ee26b2508e9a6e93cd567e20ec700940b62595caf962249035e95b5e3","impliedFormat":99},{"version":"f8343562f283b7f701f86ad3732d0c7fd000c20fe5dc47fa4ed0073614202b4d","impliedFormat":99},{"version":"a53c572630a78cd99a25b529069c1e1370f8a5d8586d98e798875f9052ad7ad1","impliedFormat":99},{"version":"4ad3451d066711dde1430c544e30e123f39e23c744341b2dfd3859431c186c53","impliedFormat":99},{"version":"8069cbef9efa7445b2f09957ffbc27b5f8946fdbade4358fb68019e23df4c462","impliedFormat":99},{"version":"cd8b4e7ad04ba9d54eb5b28ac088315c07335b837ee6908765436a78d382b4c3","impliedFormat":99},{"version":"d533d8f8e5c80a30c51f0cbfe067b60b89b620f2321d3a581b5ba9ac8ffd7c3a","impliedFormat":99},{"version":"33f49f22fdda67e1ddbacdcba39e62924793937ea7f71f4948ed36e237555de3","impliedFormat":99},{"version":"710c31d7c30437e2b8795854d1aca43b540cb37cefd5900f09cfcd9e5b8540c4","impliedFormat":99},{"version":"b2c03a0e9628273bc26a1a58112c311ffbc7a0d39938f3878837ab14acf3bc41","impliedFormat":99},{"version":"a93beb0aa992c9b6408e355ea3f850c6f41e20328186a8e064173106375876c2","impliedFormat":99},{"version":"efdcba88fcd5421867898b5c0e8ea6331752492bd3547942dea96c7ebcb65194","impliedFormat":99},{"version":"a98e777e7a6c2c32336a017b011ba1419e327320c3556b9139413e48a8460b9a","impliedFormat":99},{"version":"ea44f7f8e1fe490516803c06636c1b33a6b82314366be1bd6ffa4ba89bc09f86","impliedFormat":99},{"version":"c25f22d78cc7f46226179c33bef0e4b29c54912bde47b62e5fdaf9312f22ffcb","impliedFormat":99},{"version":"d57579cfedc5a60fda79be303080e47dfe0c721185a5d95276523612228fcefc","impliedFormat":99},{"version":"a41630012afe0d4a9ff14707f96a7e26e1154266c008ddbd229e3f614e4d1cf7","impliedFormat":99},{"version":"298a858633dfa361bb8306bbd4cfd74f25ab7cc20631997dd9f57164bc2116d1","impliedFormat":99},{"version":"921782c45e09940feb232d8626a0b8edb881be2956520c42c44141d9b1ddb779","impliedFormat":99},{"version":"06117e4cc7399ce1c2b512aa070043464e0561f956bda39ef8971a2fcbcdbf2e","impliedFormat":99},{"version":"daccf332594b304566c7677c2732fed6e8d356da5faac8c5f09e38c2f607a4ab","impliedFormat":99},{"version":"4386051a0b6b072f35a2fc0695fecbe4a7a8a469a1d28c73be514548e95cd558","impliedFormat":99},{"version":"78e41de491fe25947a7fd8eeef7ebc8f1c28c1849a90705d6e33f34b1a083b90","impliedFormat":99},{"version":"3ccd198e0a693dd293ed22e527c8537c76b8fe188e1ebf20923589c7cfb2c270","impliedFormat":99},{"version":"2ebf2ee015d5c8008428493d4987e2af9815a76e4598025dd8c2f138edc1dcae","impliedFormat":99},{"version":"0dcc8f61382c9fcdafd48acc54b6ffda69ca4bb7e872f8ad12fb011672e8b20c","impliedFormat":99},{"version":"9db563287eb527ead0bcb9eb26fbec32f662f225869101af3cabcb6aee9259cf","impliedFormat":99},{"version":"068489bec523be43f12d8e4c5c337be4ff6a7efb4fe8658283673ae5aae14b85","impliedFormat":99},{"version":"838212d0dc5b97f7c5b5e29a89953de3906f72fce13c5ae3c5ade346f561d226","impliedFormat":99},{"version":"ddc78d29af824ad7587152ea523ed5d60f2bc0148d8741c5dacf9b5b44587b1b","impliedFormat":99},{"version":"019b522e3783e5519966927ceeb570eefcc64aba3f9545828a5fb4ae1fde53c6","impliedFormat":99},{"version":"b34623cc86497a5123de522afba770390009a56eebddba38d2aa5798b70b0a87","impliedFormat":99},{"version":"d2a8cbeb0c0caaf531342062b4b5c227118862879f6a25033e31fad00797b7eb","impliedFormat":99},{"version":"14891c20f15be1d0d42ecbbd63de1c56a4d745e3ea2b4c56775a4d5d36855630","impliedFormat":99},{"version":"e55a1f6b198a39e38a3cea3ffe916aab6fde7965c827db3b8a1cacf144a67cd9","impliedFormat":99},{"version":"f7910ccfe56131e99d52099d24f3585570dc9df9c85dd599a387b4499596dd4d","impliedFormat":99},{"version":"9409ac347c5779f339112000d7627f17ede6e39b0b6900679ce5454d3ad2e3c9","impliedFormat":99},{"version":"22dfe27b0aa1c669ce2891f5c89ece9be18074a867fe5dd8b8eb7c46be295ca1","impliedFormat":99},{"version":"684a5c26ce2bb7956ef6b21e7f2d1c584172cd120709e5764bc8b89bac1a10eb","impliedFormat":99},{"version":"caee92604debc32ccab33dc2128727eb3c82e56d9af95f91f0177033893ebb42","impliedFormat":99},{"version":"c66be51e3d121c163a4e140b6b520a92e1a6a8a8862d44337be682e6f5ec290a","impliedFormat":99},{"version":"66e486a9c9a86154dc9780f04325e61741f677713b7e78e515938bf54364fee2","impliedFormat":99},{"version":"d211bc80b6b6e98445df46fe9dd3091944825dd924986a1c15f9c66d7659c495","impliedFormat":99},{"version":"8dd2b72f5e9bf88939d066d965144d07518e180efec3e2b6d06ae5e725d84c7d","impliedFormat":99},{"version":"949cb88e315ab1a098c3aa4a8b02496a32b79c7ef6d189eee381b96471a7f609","impliedFormat":99},{"version":"bc43af2a5fa30a36be4a3ed195ff29ffb8067bf4925aa350ace9d9f18f380cc2","impliedFormat":99},{"version":"b9beb5d678e6cf67901f1154f91dff455378e6aa89b20da56ed1400f3fb1f3cf","impliedFormat":99},{"version":"8428e71f6d1b63acf55ceb56244aad9cf07678cf9626166e4aded15e3d252f8a","impliedFormat":99},{"version":"11505212ab24aa0f06d719a09add4be866e26f0fc15e96a1a2a8522c0c6a73a8","impliedFormat":99},{"version":"4d647d8335edecd696fa7e59a7f2f2fea835d56d800aa2cb9278c8e5c6806815","impliedFormat":99},{"version":"c44bb0071cededc08236d57d1131c44339c1add98b029a95584dfe1462533575","impliedFormat":99},{"version":"7a4935af71877da3bbc53938af00e5d4f6d445ef850e1573a240447dcb137b5c","impliedFormat":99},{"version":"4e313033202712168ecc70a6d830964ad05c9c93f81d806d7a25d344f6352565","impliedFormat":99},{"version":"8a1fc69eaf8fc8d447e6f776fbfa0c1b12245d7f35f1dbfb18fbc2d941f5edd8","impliedFormat":99},{"version":"afb9b4c8bd38fb43d38a674de56e6f940698f91114fded0aa119de99c6cd049a","impliedFormat":99},{"version":"1d277860f19b8825d027947fca9928ee1f3bfaa0095e85a97dd7a681b0698dfc","impliedFormat":99},{"version":"6d32122bb1e7c0b38b6f126d166dff1f74c8020f8ba050248d182dcafc835d08","impliedFormat":99},{"version":"cfac5627d337b82d2fbeff5f0f638b48a370a8d72d653327529868a70c5bc0f8","impliedFormat":99},{"version":"8a826bc18afa4c5ed096ceb5d923e2791a5bae802219e588a999f535b1c80492","impliedFormat":99},{"version":"73e94021c55ab908a1b8c53792e03bf7e0d195fee223bdc5567791b2ccbfcdec","impliedFormat":99},{"version":"5f73eb47b37f3a957fe2ac6fe654648d60185908cab930fc01c31832a5cb4b10","impliedFormat":99},{"version":"cb6372a2460010a342ba39e06e1dcfd722e696c9d63b4a71577f9a3c72d09e0a","impliedFormat":99},{"version":"1e289698069f553f36bbf12ee0084c492245004a69409066faceb173d2304ec4","impliedFormat":99},{"version":"f1ca71145e5c3bba4d7f731db295d593c3353e9a618b40c4af0a4e9a814bb290","impliedFormat":99},{"version":"ac12a6010ff501e641f5a8334b8eaf521d0e0739a7e254451b6eea924c3035c7","impliedFormat":99},{"version":"97395d1e03af4928f3496cc3b118c0468b560765ab896ce811acb86f6b902b5c","impliedFormat":99},{"version":"7dcfbd6a9f1ce1ddf3050bd469aa680e5259973b4522694dc6291afe20a2ae28","impliedFormat":99},{"version":"6e545419ad200ae4614f8e14d32b7e67e039c26a872c0f93437b0713f54cde53","impliedFormat":99},{"version":"efc225581aae9bb47d421a1b9f278db0238bc617b257ce6447943e59a2d1621e","impliedFormat":99},{"version":"8833b88e26156b685bc6f3d6a014c2014a878ffbd240a01a8aee8a9091014e9c","impliedFormat":99},{"version":"7a2a42a1ac642a9c28646731bd77d9849cb1a05aa1b7a8e648f19ab7d72dd7dc","impliedFormat":99},{"version":"4d371c53067a3cc1a882ff16432b03291a016f4834875b77169a2d10bb1b023e","impliedFormat":99},{"version":"99b38f72e30976fd1946d7b4efe91aa227ecf0c9180e1dd6502c1d39f37445b4","impliedFormat":99},{"version":"df1bcf0b1c413e2945ce63a67a1c5a7b21dbbec156a97d55e9ea0eed90d2c604","impliedFormat":99},{"version":"6e2011a859fa435b1196da1720be944ed59c668bb42d2f2711b49a506b3e4e90","impliedFormat":99},{"version":"b4bfa90fac90c6e0d0185d2fe22f059fec67587cc34281f62294f9c4615a8082","impliedFormat":99},{"version":"036d363e409ebe316a6366aff5207380846f8f82e100c2e3db4af5fe0ad0c378","impliedFormat":99},{"version":"5ae6642588e4a72e5a62f6111cb750820034a7fbe56b5d8ec2bcb29df806ce52","impliedFormat":99},{"version":"6fca09e1abc83168caf36b751dec4ddda308b5714ec841c3ff0f3dc07b93c1b8","impliedFormat":99},{"version":"2f7268e6ac610c7122b6b416e34415ce42b51c56d080bef41786d2365f06772d","impliedFormat":99},{"version":"9a07957f75128ed0be5fc8a692a14da900878d5d5c21880f7c08f89688354aa4","impliedFormat":99},{"version":"8b6f3ae84eab35c50cf0f1b608c143fe95f1f765df6f753cd5855ae61b3efbe2","impliedFormat":99},{"version":"992491d83ff2d1e7f64a8b9117daee73724af13161f1b03171f0fa3ffe9b4e3e","impliedFormat":99},{"version":"12bcf6af851be8dd5f3e66c152bb77a83829a6a8ba8c5acc267e7b15e11aa9ab","impliedFormat":99},{"version":"e2704efc7423b077d7d9a21ddb42f640af1565e668d5ec85f0c08550eff8b833","impliedFormat":99},{"version":"704482f2a4a47287b195fa15c63de9188819072bc0f7635da3411ed9509bfa63","impliedFormat":99},{"version":"20c66936bdbdf6938b49053377bceea1009f491d89c2dff81efa36812a85f298","impliedFormat":99},{"version":"0c06897f7ab3830cef0701e0e083b2c684ed783ae820b306aedd501f32e9562d","impliedFormat":99},{"version":"56cc6eae48fd08fa709cf9163d01649f8d24d3fea5806f488d2b1b53d25e1d6c","impliedFormat":99},{"version":"57a925b13947b38c34277d93fb1e85d6f03f47be18ca5293b14082a1bd4a48f5","impliedFormat":99},{"version":"9d9d64c1fa76211dd529b6a24061b8d724e2110ee55d3829131bca47f3fe4838","impliedFormat":99},{"version":"c13042e244bb8cf65586e4131ef7aed9ca33bf1e029a43ed0ebab338b4465553","impliedFormat":99},{"version":"54be9b9c71a17cb2519b841fad294fa9dc6e0796ed86c8ac8dd9d8c0d1c3a631","impliedFormat":99},{"version":"10881be85efd595bef1d74dfa7b9a76a5ab1bfed9fb4a4ca7f73396b72d25b90","impliedFormat":99},{"version":"925e71eaa87021d9a1215b5cf5c5933f85fe2371ddc81c32d1191d7842565302","impliedFormat":99},{"version":"faed0b3f8979bfbfb54babcff9d91bd51fda90931c7716effa686b4f30a09575","impliedFormat":99},{"version":"53c72d68328780f711dbd39de7af674287d57e387ddc5a7d94f0ffd53d8d3564","impliedFormat":99},{"version":"51129924d359cdebdccbf20dbabc98c381b58bfebe2457a7defed57002a61316","impliedFormat":99},{"version":"7270a757071e3bc7b5e7a6175f1ac9a4ddf4de09f3664d80cb8805138f7d365b","impliedFormat":99},{"version":"ea7b5c6a79a6511cdeeedc47610370be1b0e932e93297404ef75c90f05fc1b61","impliedFormat":99},{"version":"385186398bf278346f83d74d0fa6733bc30d7403e391c70c13918ae784bcb538","signature":"3b67826fbf472e0f44d5cb98d65c6faae1129c3151c7aeed37e1311fd43a1ea0"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"2c57db2bf2dbd9e8ef4853be7257d62a1cb72845f7b976bb4ee827d362675f96","impliedFormat":99},{"version":"894eb30992723a15e3ae75c46a3bf8808a526f5b3bff2c61c78f4d3e8d521cb8","signature":"c9e66c79207c3be6fa9cda6bf6f96476f6432d60a67bb823178c5c5bbc1ecb95"},{"version":"c1424847f8905ee22d15ce094f27ac27a0b33801fec847dbaf9b1239a5c2abd9","impliedFormat":1},{"version":"222ca30f5d8caedf7c691abb6ec681b4fe9d6a6008418f0c5f27ca64ee30e536","impliedFormat":1},{"version":"503c2d4238fb9e95fdfe87cab5e1683a673515e76516514ba1c571697a8d9655","impliedFormat":1},{"version":"2c378d9368abcd2eba8c29b294d40909845f68557bc0b38117e4f04fc56e5f9c","impliedFormat":1},{"version":"bb220eaac1677e2ad82ac4e7fd3e609a0c7b6f2d6d9c673a35068c97f9fcd5cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"c60b14c297cc569c648ddaea70bc1540903b7f4da416edd46687e88a543515a1","impliedFormat":1},{"version":"a43e9687b77e09d98cf9922bfe0910bb0ed7e5b910148c796e742764ce7dc773","impliedFormat":1},{"version":"faa03a3b555488b5ce533ce6b0cf46c75a7e1cd8f2af14211f5721ef6ea20c82","impliedFormat":1},{"version":"43c39d43de6c598e908401ed15ab7ba7d3e1b34460003025ea62ad48418dde98","impliedFormat":1},{"version":"80c3dbd0388dfa12adaab2ba562b961d79eabaa5f966dea4a59954effa7dbe8d","impliedFormat":1},{"version":"650c26b5a44787da1b03c89a3a17b2c6dc30c6f152c6314389298759e6a59275","impliedFormat":1},{"version":"e014c4f7e51d02f2aa47b21a45ab1313235283a07dc039dd2ab7a104f64da7f3","impliedFormat":1},{"version":"63b3480521274886ca85e33a7dadbd5052d3b5f3313800355a42428ea0361a96","impliedFormat":1},{"version":"f734b58ea162765ff4d4a36f671ee06da898921e985a2064510f4925ec1ed062","affectsGlobalScope":true,"impliedFormat":1},{"version":"acb93abc527fa52eb2adc5602a7c3c0949861f8e4317a187bb5c3372f872eff4","impliedFormat":1},{"version":"37f96daaddc2dd96712b2e86f3901f477ac01a5c2539b1bc07fd609d62039ee1","impliedFormat":1},{"version":"9c5c84c449a3d74e417343410ba9f1bd8bfeb32abd16945a1b3d0592ded31bc8","impliedFormat":1},{"version":"a7f09d2aaf994dbfd872eda4f2411d619217b04dbe0916202304e7a3d4b0f5f8","impliedFormat":1},{"version":"a1e2b9e55ddf6cfa9435f3a7026380749fda2f5a9f8dac57f4c5e1f40f53bf3c","impliedFormat":99},{"version":"fca68ac3b92725dbf3dac3f9fbc80775b66d2a9c642e75595a4a11a2095b3c9a","impliedFormat":1},{"version":"81c4a0e6de3d5674ec3a721e04b3eb3244180bda86a22c4185ecac0e3f051cd8","impliedFormat":1},{"version":"78d030052390a253a1ee7675591425671de366f6964130a8e148a2166d6fc452","impliedFormat":1},{"version":"223709d7c096b4e2bb00390775e43481426c370ac8e270de7e4c36d355fc8bc9","impliedFormat":1},{"version":"61a03761af9f60417c66882a48eb383957bda5987393d2f32e1ed104e8d48f15","impliedFormat":1},{"version":"2b8a883d217f55290af714b87ef738e32e0b99984b23b0f82a98caae362e7451","impliedFormat":1},{"version":"d5e806fbb24521445d9e5b11bc3fd626fdb2c0b11d3a8f96f9b68ea402cad9fa","impliedFormat":1},{"version":"7261cabedede09ebfd50e135af40be34f76fb9dbc617e129eaec21b00161ae86","impliedFormat":1},{"version":"ea554794a0d4136c5c6ea8f59ae894c3c0848b17848468a63ed5d3a307e148ae","impliedFormat":1},{"version":"26d9ea4d13529d0e6192db96841b264f9a0fc9236fe234d96cdf8e8141c24576","impliedFormat":1},{"version":"94c8c60f751015c8f38923e0d1ae32dd4780b572660123fa087b0cf9884a68a8","impliedFormat":1},{"version":"690c8311d7bcf6e2d2fb143335aebedc8025e9bbd5696da3d7fa35cf5ec5b6ac","impliedFormat":1},{"version":"685a189e1adddbdfd0eaee9f42df9e77e89fb60756305a398d8ee480148b6678","impliedFormat":1},{"version":"c5b47653a15ec7c0bde956e77e5ca103ddc180d40eb4b311e4a024ef7c668fb0","impliedFormat":1},{"version":"fb7e20b94d23d989fa7c7d20fccebef31c1ef2d3d9ca179cadba6516e4e918ad","impliedFormat":1},{"version":"8326f735a1f0d2b4ad20539cda4e0d2e7c5fc0b534e3c0d503d5ed20a5711009","impliedFormat":1},{"version":"8d720cd4ee809af1d81f4ce88f02168568d5fded574d89875afd8fe7afd9549e","impliedFormat":1},{"version":"df87c2628c5567fd71dc0b765c845b0cbfef61e7c2e56961ac527bfb615ea639","impliedFormat":1},{"version":"659a83f1dd901de4198c9c2aa70e4a46a9bd0c41ce8a42ee26f2dbff5e86b1f3","impliedFormat":1},{"version":"a66f3da7de689a5879af9501bbae12a28b42194e0a364afb7a6d395b3e3813c3","impliedFormat":1},{"version":"a0baa826317f013ecb3e451192a309b591f430432dddfec349fc61a11e9c44d4","impliedFormat":1},{"version":"953440f26228d2301293dbb5a71397b5508ba09f57c5dbcd33b16eca57076eb2","impliedFormat":1},{"version":"beb6995acedc0239d062124022004eb8341fa5eb62d9c867c1881c04f4233797","impliedFormat":1},{"version":"1b6358a3b261d9e6096154f9b5aecaddba845c95335d021e87a5626962092bd3","impliedFormat":1},{"version":"64aff4bce69cccfd193353af05e8b3ae3125c009969d2dda49072ec297e2fc82","impliedFormat":1},{"version":"cb4a9bad89a226da94b70cd0cca2010ffde636f34022bec7fc69caf9e6ad8e20","impliedFormat":1},{"version":"43587ce13d0b0bb9f6ee8363020d8521102381cefb4b650b1c4ae9ad56ed7e07","impliedFormat":1},{"version":"3f3526aea8d29f0c53f8fb99201c770c87c357b5e87349aca8494bfd0c145c26","impliedFormat":1},{"version":"e33bd2b4ebf93c3bb248d845e3751f5c31731268ce71bc38f99ec44e64daaab1","impliedFormat":1},{"version":"1801a58e8cbd538d216fbea6af3808bd2b25fa01cf8d52dba29b6b8ac93cb70c","impliedFormat":1},{"version":"4326dc453ff5bf36ad778e93b7021cdd9abcfc4efe75a5c04032324f404af558","impliedFormat":1},{"version":"9b597900f033ffe72808c6c39d62142c920499e51748a247d2f9dc16cdd3bcd5","impliedFormat":1},{"version":"64843c2f493a1ff3ef8cf8db3cff661598f13b6cb794675fc0b2af5fdb2f3116","impliedFormat":1},{"version":"0e447b14e81b5b3e5d83cbea58b734850f78fb883f810e46d3dedba1a5124658","impliedFormat":1},{"version":"bcd9c89a593fc73c694bb5e06c8bf7c6bdda0ac491195ef364d9dac5f7db0f03","impliedFormat":1},{"version":"929939785efdef0b6781b7d3a7098238ea3af41be010f18d6627fd061b6c9edf","impliedFormat":1},{"version":"6eaab464388a8b742621def40c40932bb0550813a32f70df10ecb6b2884c0c8f","impliedFormat":1},{"version":"fc94f97b7dbe8def50e4e6441cfc957a82e103358153b4bef1bf83d02c015ef0","impliedFormat":1},{"version":"6052522a593f094cfee0e99c76312a229cf2d49ac2e75095af83813ec9f4b109","impliedFormat":1},{"version":"7601b760d7679d3d678771b0719cb43b9406a3e10122da583f11b34ec96ebdbc","impliedFormat":1},{"version":"a63ce903dd08c662702e33700a3d28ca66ed21ac0591e1dbf4a0b309ae80e690","impliedFormat":1},{"version":"b9a7df08c1eebb4be745018c2eb1274bb8f3c833806a80bee366adeb6345bd4e","impliedFormat":1},{"version":"0e112389b534d19d42f5033e73cecbf189c7f1666853eb453649ae490595bb27","impliedFormat":1},{"version":"8f4844e37b671b16f618029c46ed308f8eecf129f7465d20f150b0bc2b505ac2","impliedFormat":1},{"version":"2ce8dcdc7d6ba8e1702e1d4aa2687d62990678ab518e26ac4d5495aa78199b14","impliedFormat":1},{"version":"b34fe66e28be3aaf3987b2ebb0f6553e63c54ba9d24ce81dc8666a472de5f46b","impliedFormat":1},{"version":"6e2d2b63c278fd1c8dd54da2328622c964f50afa62978ed1a73ccd85e99a4fc7","impliedFormat":1},{"version":"8bc28fd0aeb868da5ab03d778b6bfc14fd0243bc04495d0d897cb7e3cb4bfca8","impliedFormat":1},{"version":"f642b9a36789a744a3f269de516bdd08675bceda13ee45d26bc0302e9ec2dabe","impliedFormat":1},{"version":"6ce50ada4bc9d2ad69927dce35cead36da337a618de0a2daaaeeafe38c692597","impliedFormat":1},{"version":"13b8d0a9b0493191f15d11a5452e7c523f811583a983852c1c8539ab2cfdae7c","impliedFormat":1},{"version":"e8f45424b7cace1ce8c65052d4ee0c014b22e5aa3c114ae6fea32cef0f3d9c82","impliedFormat":1},{"version":"068f5afbae92a20a5fcd9cfce76f7b90de2c59a952396b5da225b61f95a1d60a","impliedFormat":1},{"version":"e97649774336f99385c03380cc4a1dbab65123c35cb3172f36ddef2f319a2ff9","impliedFormat":1},{"version":"a99bbc08536893273b1faa9c07c59c862f0fd363475a31d0c4b7bfc6df170c35","impliedFormat":1},{"version":"33a2af54111b3888415e1d81a7a803d37fada1ed2f419c427413742de3948ff5","impliedFormat":1},{"version":"0d364dcd873ebebc7d9c47c14808e9e179948537e903e76178237483581bbf6c","impliedFormat":1},{"version":"3fab75b3b823bf174ea1cee355e5bfb222277da1f8f9848f42150a05f5c3921b","impliedFormat":1},{"version":"14e655243975208ff46b52e65b9b36e3225dc610ffdd61afd8878565e2b62f3d","impliedFormat":1},{"version":"8c4224b82437321e1ba75fd34a0c1671e3ddcd8952b5c7bb84a1dead962ff953","impliedFormat":1},{"version":"e65e42a4d26b35a605baf789c348ee70220f72995c5ee6128a40328d3e8701c1","impliedFormat":1},{"version":"b5f27501077287cafa1257a91181b02c2c5fc6118206974960ee35c947bff460","impliedFormat":1},{"version":"f5f41e3a8df5eaa79ba16ae9c5f114beae9c2b32bb976a6175ecf3e2e975d10e","impliedFormat":1},{"version":"8a705ea6df44796af9df7704e6b7bc4fbff126fce0066fc9719936cc5668d054","impliedFormat":1},{"version":"fc8f837ef36ac7748fed8d55cce33bb3b3e8c10082f1f42512606c9b91e71b74","impliedFormat":1},{"version":"d080548751209b1ebf7f8e6284a82d8f87998fedce00f3872f513d4c11bad9d0","impliedFormat":1},{"version":"0f8107c8cc078f31adc9e1928c6f7b33230223f143ae183468a5ea3a7889b55b","impliedFormat":1},{"version":"38a131409a186927cc36d6cd16b9195a370082ff4cbecf60b23c9f7e5cd39901","impliedFormat":1},{"version":"81b262fe146dae64043337c7479a43b6ae67e74ac02c0729769e3d6e76d4d858","impliedFormat":1},{"version":"3051e0c946698682b8746ff3224ae5237435852c42a5179275358d5f547b71f7","impliedFormat":1},{"version":"4c7aa04345d784f2c8f96216370dafe86435add65ad0adcae5c1d2b82cd40a05","impliedFormat":1},{"version":"8fece074d02a27532eb2285f4f6803e98d7db8c956218d996910f2a961ee0fab","impliedFormat":1},{"version":"28675d40ec83b792b3003736fb009851b9729e70b7c97639625a0af5da4e0596","impliedFormat":1},{"version":"ad750b859d04354baa92aa0f02aafb3948ec2ae53c57906749ce94a0a2379ff4","impliedFormat":1},{"version":"4e8cec3e1789d0fe24376f6251e5cbe40fc5af278c7505d19789963570d9adee","impliedFormat":1},{"version":"7484b1e25cc822d12150f434159299ab2c8673adf5bd2434b54eb761ede22f76","impliedFormat":1},{"version":"9682bab70fa3b7027a9d30fb8ae1ee4e71ecb207b4643b913ba22e0eaf8f9b35","impliedFormat":1},{"version":"d7ed6d8bcc8c8d86a4307178e89cad6c88aac374fe87804c0bc7a0cc52c61a81","impliedFormat":1},{"version":"cff89395b8a7727af0a881b510273d74ce9df0fb6b640f6f4ce21da067485c2b","impliedFormat":1},{"version":"b713dea10b669b9d43a425d38525fc9aa6976eff98906a9491f055b48ee4d617","impliedFormat":1},{"version":"fb0ca8459e1a3c03e7f9b3f56b66df68e191748d6726c059732e79398abb9351","impliedFormat":1},{"version":"f83a4510748339b4157417db922474b9f1f43c0dc8dda5021b5c74923ed9a811","impliedFormat":1},{"version":"3d04566611a1a38f2d2c2fc8e2574c0e1d9d7afd692b4fcd8dc7a8f69ec9cd65","impliedFormat":1},{"version":"0052687c81e533e79a3135232798d3027c5e5afff69cd4b7ccc22be202bbbf4f","impliedFormat":1},{"version":"aa585adb25c3751a39bb6c6663ab1988f6dfd46f8225c0da12719e060562939e","impliedFormat":1},{"version":"a49ee6249fff5005c7b7db2b481fc0d75592da0c097af6c3580b67ce85713b8f","impliedFormat":1},{"version":"b88fbb95e567a0fa2df81bdd82b88b13545d79453787bda4543c0369f4f6d568","impliedFormat":1},{"version":"fd4a83bdc421c19734cd066e1411dae15348c25484db04a0a2f7029d1a256963","impliedFormat":1},{"version":"af31f37264ea5d5349eec50786ceca75c572ed3be91bdd7cb428fdd8cd14b17c","impliedFormat":1},{"version":"8d56fb4ae16943117591d60ffd52f4544affc46c44111b492d4f2ab51ff5268c","impliedFormat":1},{"version":"40683566071340b03c74d0a4ffa84d49fedb181a691ce04c97e11b231a7deee4","impliedFormat":1},{"version":"c53674e899725630a469dadd5cd0827b85903d5435afb784cacbe41c5e8c9eef","impliedFormat":1},{"version":"e885933b92f26fa3204403999eddc61651cd3109faf8bffa4f6b6e558b0ab2fa","impliedFormat":1},{"version":"5852ec0e134dda28852eada61248ab2b8027aa1238340ccc407234f013627f61","impliedFormat":1},{"version":"0463dbee62e1e2f1692ece7b08d31c329e642114355426606b390aab7978414e","impliedFormat":1},{"version":"f6bf2b22f3af7ddb26f9a93b47f8747547ecb598ca5b3002d9e76f72a65809b5","impliedFormat":1},{"version":"6733e3a832f92b68e7368878cfb4e54a4b942361e87a0b8fa2a475ec9369ad03","signature":"e05f7241b9f0d8920509251c4334b674d7dfe32fc4dd7901c62508cf53424b0d"},{"version":"1db57e4576635680f80735fa5d76e8ce9942de2986d2e8f8d579c47b77955d92","signature":"3989ffa2db8fa65dad58a77f17de46379a8f1b6acdbbc3e1edc92a9e8f66f6a9"},{"version":"5c1b479320c1e8727815f025889d437a51d7d9864141e1f2482b28ea65dc322c","signature":"0e9d205bf2e600c2985999726bac6490e2c0ed9e3646cc1e0e7f988b9463f9a6"},{"version":"4dc481ce5f4588cc7c9c3f7c7bb99407321b774e0e6db995f924f440149b101c","signature":"523cbf15f5b12fdc02dbcf3f59602623f8b49c4cc351678ce8b0106575cdddbf"},{"version":"8ee77e3b2e0b27a14404546146fb18f17a05a2ec9605857bfcbbedcd9705e2df","signature":"1875f9aee1a1e88b821c49e02e35d163013f9b1a672b0097478379cfafd87d06"},{"version":"cd8d704e31ca6e772eaaed0d1abbda5131968d07da6295ec31ca25f2f96f4603","signature":"8d23da0bcd77e78b20a2f20624973b039d3013ebf0fabd0c8e0615c58e74489f"},{"version":"fb53d08863f113ec1c8bc2c5d543d625551e28e401b29e5988f6ce4259ef935f","signature":"8670ec89de827a6e9d8f0f268b29a415094ea5137e91e60da027ded8ad5cc098"},{"version":"fd432f424507ee57ff25fc592c2a0b16f28fa56deb4df236653654ecec348789","signature":"81e691d34825e62f13beb4439db7e04a3a7b4610ed434bc8b7d0e2f05436fb75"},{"version":"91b4ce96f6ad631a0a6920eb0ab928159ff01a439ae0e266ecdc9ea83126a195","impliedFormat":1},{"version":"88efe27bebddb62da9655a9f093e0c27719647e96747f16650489dc9671075d6","impliedFormat":1},{"version":"e348f128032c4807ad9359a1fff29fcbc5f551c81be807bfa86db5a45649b7ba","impliedFormat":1},{"version":"8ee6b07974528da39b7835556e12dd3198c0a13e4a9de321217cd2044f3de22e","impliedFormat":1},{"version":"5a38140438107de65fa204b3705b83529e225e1b01c68c73fb7fa4e88e5ddfa3","impliedFormat":1},{"version":"5f12132800d430adbe59b49c2c0354d85a71ada7d756e34250a655baa8ad4ae5","impliedFormat":1},{"version":"1996d1cd7d585a8359a35878f67abdd73cc35b1f675c9c6b147b202fdd8dfc3f","impliedFormat":1},{"version":"b16e757e4c35434065120a2b3bf13a518fc9e621dc9c2ed668f91635a9dc4e75","impliedFormat":1},{"version":"0b7ba8784d5de5560adeb015ca6d22d8a9d0920dcb16dd627b40010763f26d85","impliedFormat":1},{"version":"0377607549f9d921e43421851de61264443471afb1f0e86b847872e99bbe3ba0","impliedFormat":1},{"version":"4374cefdde5c6e9bad52b0436e887b8325b8f407c12035194ad02c28f1553a3a","impliedFormat":1},{"version":"9b70cad270593f676aecfe4d1611dc766464f0b8138527b0ebbf1ff773578d69","impliedFormat":1},{"version":"b4f85bfb7e831703ac81737361842f1ae4d924b42c5d1af2bff93cca521de4d1","impliedFormat":1},{"version":"5fea76008a2d537ca09d569ffae4e08b991b4a5ff90e9f4783bc983584454ede","impliedFormat":1},{"version":"21575cdeaca6a2c2a0beb8c2ecbc981d9deb95f879f82dc7d6e325fe8737b5ba","impliedFormat":1},{"version":"40ec58f0fadd0b3981b3d383e1c12fa0680115ae9f018387fc2cfc0bbcf23204","impliedFormat":1},{"version":"849b9e7283b7309a4556c9b90bb8e2dfc27751f157798065bbc513dcddb09a8c","impliedFormat":1},{"version":"10e109212c7be8a9f66e988e5d6c2a8900c9d14bf6beadf5fa70d32ada3425cf","impliedFormat":1},{"version":"2b821aeb31e690092f8eae671dd961a9d0fd598ff4883ce0a600c90e9e8fa716","impliedFormat":1},{"version":"26602933b613e4df3868a6c82e14fffa2393a08531cb333ed27b151923462981","impliedFormat":1},{"version":"f57a588d8f6b3ce5c8b494f2dc759a8885eaee18e80a4952df47de45403fedbe","impliedFormat":1},{"version":"34735727b3fe7a0ed0651a0f88d06449163d1989a2b2de7f047473adc7c1c383","impliedFormat":1},{"version":"a5b13abc88ab3186e713c445e59e2f6eee20c6167943517bc2f56985d89b8c55","impliedFormat":1},{"version":"c8a206a6ba4e32710ebb4a389187772423de0f4f6180b95a7ef1a5a1934c1be6","impliedFormat":1},{"version":"7ae65fe95b18205e241e6695cb2c61c0828d660aca7d08f68781b439a800e6b8","impliedFormat":1},{"version":"c2c8c166199d3a7bd093152437d1f6399d05e458a9ca9364456feecba920cda4","impliedFormat":1},{"version":"369b7270eeeb37982203b2cb18c7302947b89bf5818c1d3d2e95a0418f02b74e","impliedFormat":1},{"version":"94f95d223e2783b0aef4d15d7f6990a6a550fe17d099c501395f690337f7105e","impliedFormat":1},{"version":"039bd8d1e0d151570b66e75ee152877fb0e2f42eca43718632ac195e6884be34","impliedFormat":1},{"version":"9e615a787ac4628fe5bcf3f7b2edf1d487422945a5ce1826024cba04ee41daac","impliedFormat":1},{"version":"5f200be1d6585239093ed367e7a77a5400c76c80a00309ba9b4fc2bb5add9899","impliedFormat":1},{"version":"d3cfde44f8089768ebb08098c96d01ca260b88bccf238d55eee93f1c620ff5a5","impliedFormat":1},{"version":"293eadad9dead44c6fd1db6de552663c33f215c55a1bfa2802a1bceed88ff0ec","impliedFormat":1},{"version":"206e73f49f16633113787cc651dc03dc900379395dfa02ab1ef4c9cbbcd5adc2","impliedFormat":1},{"version":"fec412ded391a7239ef58f455278154b62939370309c1fed322293d98c8796a6","impliedFormat":1},{"version":"e3498cf5e428e6c6b9e97bd88736f26d6cf147dedbfa5a8ad3ed8e05e059af8a","impliedFormat":1},{"version":"dba3f34531fd9b1b6e072928b6f885aa4d28dd6789cbd0e93563d43f4b62da53","impliedFormat":1},{"version":"f672c876c1a04a223cf2023b3d91e8a52bb1544c576b81bf64a8fec82be9969c","impliedFormat":1},{"version":"e4b03ddcf8563b1c0aee782a185286ed85a255ce8a30df8453aade2188bbc904","impliedFormat":1},{"version":"2329d90062487e1eaca87b5e06abcbbeeecf80a82f65f949fd332cfcf824b87b","impliedFormat":1},{"version":"25b3f581e12ede11e5739f57a86e8668fbc0124f6649506def306cad2c59d262","impliedFormat":1},{"version":"93c3e73824ad57f98fd23b39335dbdae2db0bd98199b0dc0b9ccc60bf3c5134a","impliedFormat":1},{"version":"a9ebb67d6bbead6044b43714b50dcb77b8f7541ffe803046fdec1714c1eba206","impliedFormat":1},{"version":"833e92c058d033cde3f29a6c7603f517001d1ddd8020bc94d2067a3bc69b2a8e","impliedFormat":1},{"version":"8e6427dd1a4321b0857499739c641b98657ea6dc7cc9a02c9b2c25a845c3c8e6","impliedFormat":1},{"version":"58da08d1fe876c79c47dcf88be37c5c3fab55d97b34c8c09a666599a2191208d","impliedFormat":1},{"version":"85e75abb2b960333554d87b59c2c93837bcdac57fc8f5bec08e3785dfcdbca85","signature":"a013754e9c9372195578014767d9daa25f3a37a2cac34b96228225fbf6ba5c86"},{"version":"2576c3edc78797e0206c738577de487893253780821e977c690eeeb1bc4c3b71","signature":"efdd399105978f071ab08cbbd26ba9774eb8bc990875bcebbaeb7107c14b9abe"},{"version":"a26d74bc8768e134734fa049d5a89fb674a560292f4bf1b39392416dc04cf49e","impliedFormat":99},{"version":"ea7f3d87bb25b8cf26c1b440de31b628c53b5e72e8f1ab1726356bf58acf5946","impliedFormat":99},{"version":"7ec047b73f621c526468517fea779fec2007dd05baa880989def59126c98ef79","impliedFormat":99},{"version":"8dd450de6d756cee0761f277c6dc58b0b5a66b8c274b980949318b8cad26d712","impliedFormat":99},{"version":"6b5f886fe41e2e767168e491fe6048398ed6439d44e006d9f51cc31265f08978","impliedFormat":99},{"version":"f4a1eba860f7493d19df42373ddde4f3c6f31aa574b608e55e5b2bd459bba587","impliedFormat":99},{"version":"6b863463764ae572b9ada405bf77aac37b5e5089a3ab420d0862e4471051393b","impliedFormat":99},{"version":"904d6ad970b6bd825449480488a73d9b98432357ab38cf8d31ffd651ae376ff5","impliedFormat":99},{"version":"2535fc1a5fe64892783ff8f61321b181c24f824e688a4a05ae738da33466605b","impliedFormat":99},{"version":"c9c151ff19977b78e8d6b108f7162f4daef60aea6c9dd4dcf9faa883ec885430","signature":"3bbc2674f9e5d598c0701114b0081a64cbc78fd3928a2d2e652ddfda70124dee"},{"version":"bb703864a1bc9ca5ac3589ffd83785f6dc86f7f6c485c97d7ffd53438777cb9e","impliedFormat":1},{"version":"a171f27504ba8bfa244cb257956e01601f6f98a348e0cb94dc77e201260e377f","signature":"34695ed66680ea492a62489b33cfd7bfa9529b696be1bc23384122f471208d00"},{"version":"23d948d8f56babd009b022f9d2d95b5869a00a0b1d9fb25dfe62019db4895b49","signature":"1356a99efa4e82c4c75b28f8d669629821a83a05f5767a192b380abdda45f1ce"},{"version":"c351dc34a026a2e3ea1b23b2eb0d9d95a60599a156a6029d03607de67e715627","signature":"f138d5ffbc374cc396b5347b8fd34f866962b2540e7d85b69c0de168946ee499"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"cc3738ba01d9af5ba1206a313896837ff8779791afcd9869e582783550f17f38","impliedFormat":99},{"version":"3b217e02ad520f3d63c5ccc6d8870c91c1da51d8c0f09e834c3415ef051c1dfb","signature":"e7f0196b8c2cc640e4d5841868b7ce67c41d306262e568d0132ddafab39bc157"},{"version":"17247b09a117c79610d682568e2ba37566d96d2333d3540a66d0f8755a54893c","signature":"dcf0caf6d631c1007de4e649c1fb92791bf5ac0eb55d286bffd7cf12ab399d66"},{"version":"4c888d7fa80bc9a1dcc5b6cb0d5c79e684ac393c9555ad169cb771bb33ab9e31","signature":"6556c6baed9df53b7da342c0f3ce2ed14a456d2e645381ffb6aba4f6cdd21159"},{"version":"6d3bacd5150ba69409c66fdd6d34dd40936319692a793d0d313d5834a48c5b4a","signature":"e7ae15fba5ca5e6f6c5feb87053b004ef3e7ed91c61811dec07b556028050c29"},{"version":"734c978a53643112e0939f3493758ff2651ca56aa92f180cda3a0542274baff6","signature":"5710b2220aa08a5cdec279bc67698116171d4334ca0dbdb19e1b0f1e923f2523"},{"version":"96d87913d6fc27df14759c6892fc97bb07c843b52a3e3ef23e2c9cd5f3856f32","signature":"02aba73a5ca1a835386bb3084dd25ac2a664dee48a1f85f850986bb6c7bc3592"},{"version":"f467fc85a8b59e7c1bc8a56d795b00b7e080221c286e13218a26d1265b854116","signature":"e65416c124c9f46e7c3821cde9224b2900f734c3763aa7154bce71b8c97a2c0a"},{"version":"7cc0a406255ee9e1d94c3f931037d77de942531b08f894e4e9a4d5a59641b589","signature":"ddce3db9495e56c599668c462b6c864917787b33f19b2a44decd6b5e27efbf72"},{"version":"e7441be68f390975c6155c805cea8f54cc1b7f3656b6b9440ecbbbd7753499e6","impliedFormat":99},{"version":"5a99d073185e0ef6d984436547dce1f99c333dde7c1d7f33a2155dce05216514","signature":"a62a952464813ad6681414a2f6708d8d8cb5ccb7ee948cef6e7f7d6f11869795"},{"version":"45b9fae41a215d2da711ef8e760b3fe7bf4988e85234c607f87ecb1736e231f4","signature":"b28a8bbf7170986ad6254e2abf992f664ce730a94dc3cf372fcdafda8a638c14"},{"version":"31c30cc54e8c3da37c8e2e40e5658471f65915df22d348990d1601901e8c9ff3","impliedFormat":99},{"version":"a6f9e326f19cfa485b3a6c2eb7b9829c42f8012f29820cefab0b10dd5c1cb2fa","signature":"870119a5f3f2da219ba16214980357bbf0dd1f2bcfd77fd35da7d8465c0ae708"},{"version":"ad14d7864ec595f8f9224a085083fffd0137150d803092803b146643434d48a7","signature":"ade22b42ad26354dbff601e10439a06d15581696425231bd83fe6517a9438b0d"},{"version":"5993c89605dbafbc4369dd2a7ea7fa01224fffdea66398d90a653ed71201548e","signature":"e9215c110843d60cdcf28e5fa8144522681de43094a89e06e3855f7990f49a7f"},{"version":"5d0c5e767bf2a6f08629a58b6a89b7d91a81f6e35d9167bfda0bd9f1e2357b4e","signature":"f515561294f9cdcee8482e9c653ee65f600d63832257edb86a2f2f5a0cc1b64e"},{"version":"8a9c24c3ea3bfc9461b593a8f3c4410a77ebd97a76d8774dc2fdb5d643ef1fb3","signature":"b819d8b90a2f2e2b67c15c59eed25430cc7ed831fd114e567ff88833fa4b5de5"},{"version":"c6fdd0d48ea1ce1634bf1f2889eb7a106c53e3718de5eb9c8c95d3e80b3656f1","signature":"97b88cd12c3dda2a5fc7c2e658d589781dd5aba8920d00c252a623198190e172"},{"version":"e098c281134ed1c8ed31d955779036b8167bc584c35a09ff5891ccad575c9e6c","signature":"646228bb4dfcdb32d9eb2aa9a591f2f2d752e7ad1c9bbefcd99ed31c11431bc3"},{"version":"b7e512b41ea4f5bf1c8d6fcf6cb13708a6b9636f6304d705e5750b21184c6a09","signature":"9dff8a85e580b32a38517861c4adeaa44f516d226f8762207a57be459aa996ab"},{"version":"f27aebbf4766ccbe7969f8c20b657637ad5df5d1fed7c90454352cf41cfb1d39","signature":"1f7668672979a9628e11b2f30673d4b753e0270ebe50819c637afbd376007d20"},"4012abed7b39073f7497b340722ccf697db4df2b453fe6618656282d235e1172",{"version":"83bd0d8407a4501dd60aa6a18b6a6d9fc73faf613850de209ec362832cefbbf5","signature":"abec593d0c5872aced84afb7046990d70b3016feebce6e521e6845d7998a219e"},{"version":"cf5a31f8d64d03be9a17d9f86cd18b41f39b665ff7502b51ff549fc877f98921","signature":"ea30d960932ca79984691953e1c38879c34a3dd702bca3b68b06947169e9e829"},{"version":"8df6b419289c0961123c4d6cac9c14bf01a55f95207071c721e89b7be9a30cc3","signature":"2b2c4db5b364af2c223aef79682842c401fee9875b5624d3f4856d090dd17c3d"},{"version":"f48eb40e426a9c3cf66bc5fe145bec945f186964536f0a8366cd2d0997298b8f","signature":"b49934ea0ebed672b4554b54ebf5047afe63d4212a629920553e3c4f98d1e210"},"f4cb7592391f5b404d9e8b6b229fd296f49d3ae9ab28dc12acd58a9e94059f42","23a6e9e2fb0ce3ea299b33e644dc16975d5889443adf27ecea3d946fe642f2ad",{"version":"cd8d704e31ca6e772eaaed0d1abbda5131968d07da6295ec31ca25f2f96f4603","signature":"8d23da0bcd77e78b20a2f20624973b039d3013ebf0fabd0c8e0615c58e74489f"},{"version":"fd432f424507ee57ff25fc592c2a0b16f28fa56deb4df236653654ecec348789","signature":"81e691d34825e62f13beb4439db7e04a3a7b4610ed434bc8b7d0e2f05436fb75"},{"version":"6d3bacd5150ba69409c66fdd6d34dd40936319692a793d0d313d5834a48c5b4a","signature":"e7ae15fba5ca5e6f6c5feb87053b004ef3e7ed91c61811dec07b556028050c29"},{"version":"734c978a53643112e0939f3493758ff2651ca56aa92f180cda3a0542274baff6","signature":"5710b2220aa08a5cdec279bc67698116171d4334ca0dbdb19e1b0f1e923f2523"},{"version":"13680c9726421b79c1957bf5f06d3deec35e7e5a113c49583b037ffab6ec6d39","signature":"c3b82b731c1bfda402eba10f9df571580d1f5a674d5ca43ce97a933ee02c2d22"},{"version":"1ca52accaf2273cc86e913b388ba0c36f4e4d8e19b3f9b015e81eea6c4ae5960","signature":"2a618d1e67da91688d27b94c9b241bbfba39b5cc1634eec5587a9288744c45c3"},{"version":"131acc8316fd3441b8159de979db10c447d27787d00961508d05cbd9daa21eb7","signature":"a9f7d0693bbfc1b3167c19e6756b12e8acc591d96dbb553a5a4a27ba4e4a35b4"},{"version":"c1a2518a277db331f5506a94c74afcae9f9d3287ed659b7a91407c28ed6ed6c6","signature":"63bde153cfa3cf0afe2a2a36aafa1a130e4b2caf41652c5d1dcbfaa0d6a9148c"},{"version":"939278542533ba85240a3f27dc77a8a4a70628e97f37c8fc58a7927a337ba610","signature":"e27aa7e6f6113a7b2c84125c2b9a273b8c06c822d94d1bdca4cdb0aa4ce5de0e"},{"version":"f142d5c2f148ecb72e45eaa5152a642ab1956e0a3235896b2eda30a6c4a8e0a8","signature":"11f5be9abc00c11cd52420abfbc71561ec3cdb19f272077b1eedfc066110e2f4"},{"version":"a9373d52584b48809ffd61d74f5b3dfd127da846e3c4ee3c415560386df3994b","impliedFormat":99},{"version":"cbfd5ef0c8fdb4983202252b5f5758a579f4500edc3b9ad413da60cffb5c3564","impliedFormat":99},{"version":"956cf4b485bcf57684caac10df2aa2a72387d0736d8f4cd1315c49ebd2da4615","signature":"1eb20268ebe644e6df6078e14bce71cc71590d43c562b4d3fdc2375777bca31a"},{"version":"caf4af98bf464ad3e10c46cf7d340556f89197aab0f87f032c7b84eb8ddb24d9","impliedFormat":99},{"version":"233267a4a036c64aee95f66a0d31e3e0ef048cccc57dd66f9cf87582b38691e4","impliedFormat":99},{"version":"0397ed074259c28d961b3567cf425d491b6b434fff93bc25eea2fc93bbd75f7a","signature":"b49f7ee0feb128c542b7a46a8af92fd18942b5460e80d7be8aabd8ce507764d8"},{"version":"b598b1e9481a930b5f9e38e0e41a4267722ecb641d41a46ad04a0873fb92eb31","signature":"00ca1d2d1160f655bf2eb98c3454f9043ec52d5c63d7c8b360122b4afe4c27d9"},{"version":"9990f21aad5b08bd1367c26eaf653379fbd3cbf1c73835d7c89558a897cdb9e4","signature":"ffa79f62c536266410190ee8d522f68b1e8a1a01fb705451c8c2c987df92e062"},{"version":"1dbd248b251538341f7b6d921c1972569ec7f3f7f5897123fc00148f6bdc0e57","signature":"354030b88a182802d063fb8096a34d9d23b69d2f48db10277488475dde054919"},{"version":"42adab75a647248b224a23d3b6b398efcee1b6b417cdcc4f32bc50cf6fba266d","signature":"6912fcc8e7b93e970fc0018c59d7606df75f8d62b342ef5e9d74eb08ba50b6d1"},{"version":"ab85664862c198191ba3d77d3a0e271a26c949093cabd88b74f5079484b3c69c","signature":"ca272dae169954a9e3dad0b8ec2acc9b69b9c292508909a8ddd4f9412a01e6c3"},{"version":"c0b208999b2e53020a7b2a1d8d4ac67bec87651389bd630ac2e8d632fa839b10","signature":"17d95f0fda80b532996dc589a631ac937896df66be49ac9b0b381e028dfe9e85"},{"version":"c892fb76ede9506711319412d369bc666c1a574d16d6559f0aea873d55d07cfc","signature":"f23885a1b16d6b8c10966100c439eef43e2a0a82c0a43c2abd239f01ea9188be"},{"version":"146072a9d4178049116796062a37421cdf09f0bd06390a69a1fb76daf71dcb11","signature":"3a663b83bd70cae5c1b7e453f52eaab61f1f382c44d69c7b4491da5058239b2a"},{"version":"3aa160f473ca0af44d500c6bed1af5f5d9ad4ffb2884b4ca34e59989dd5d90e4","signature":"c416f65676cd621ef92478b644323536b31d366476693fa2f9a15063cd1d6ff5"},"2552a31fad45a9ed1bde87e51b038dc0e786cd364b597162263abbf57018949b",{"version":"6c1b1a7df2ef20edea7af3b853134925e9fe26e3f6cb51b04201ecd6ae35e284","affectsGlobalScope":true},"e8d8cd9625ec6cca3487427e67839eed80d92b7a71e5b86d5e2bfd7aaf4f38ea",{"version":"1ff6028b5b6ccb9af8d5789deaff14ff09a6ab61cdb619eb383395989edffa2c","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"b0527c1ada15e769629e8940045d2232802a8c72924e8632588a19bf2cd24b7d","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},"386b6553763e4688817838bf6cc7d51a504cac0dd9ca96f46600874fbb72dfad",{"version":"7e684095a2d1cdd296f6c85e01108415c3ac1bc7d9e4e2f53794e9bea9c96209","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"2d4bb2c9dceea92ed7d0d27ae50595a810c93062ccef307a1d2e161be870d66c","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"c454d311382b04274c7162009563df77518ab6efa55f0514e550dfac17194b7e","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"552c254ab29a8654b61a0e6bd57f335f5444c4d3848a2402b962d2053bc27bcf","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"d5dbcca0bda070af8f47ff6f5af4f85f7a4dc911652731edfc15e4ba8d1be131","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"a9fb08273dc91752f3f65cf26761a7d680b131bf624989e53965da7cbaff8c6a","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},"b6987d179737a82a85e4004adf041b441a8fda6f31ce061bd57eaa8cdca0c46f",{"version":"f6f8307d1cd2a2f262f6a03d1bc4eaae1008540dd689749a1d55817bda99ddd4","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"5b42a8c5dc0bbc6d6bc5ed9371e998a83b675e58704c36a823d692db7fae27a5","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"20ec7104a8eafb68e8a2e051c79b9b207baf897ce7c1617dc36ce6cbf20a11cb","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"b662365d8aaa73d2b671acea170068124be27ffe9157f941041855ae4ff7ae48","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"5d8d42c44b018640984dd551a66f80b877dd2e128a280024a0b496cb7a2f17b8","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"23780a759d95f2d5ae46ff2f511f2a6425e3a6c0d6d4d1b8c80cc5c06ef395af","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"c609171dc1f4060d39c937c4271322c028f0bc6387c439b8bc0bdfa966e1c463","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"7f9185208bef1386bad7daa7c8482d330c4f0ae3a761cbfc4e809a076851d41b","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"e8c311b5223ea0d77983d6ab262754e438795bb0afbbe12b93d715d87cdd2c8e","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"f2f2bd590a323d641b06cdfe963a6fd7e1d4f1e97ec632a5d6419b89ac029738","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"4137cfd6aca641a19268e4c1e8c5aa5c846fc920183eb174f316ed0d0ccc03c3","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},"39749520c8e365ea4ac255752171fc222f4961d5e6d15ff24c3a76807178ff41",{"version":"44c1a8f9f2f368a13c4f338095d8fbb864feadd148551a6f744854dae5d30691","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"4b81c172877b114e84631eabcb73795e6d5e8c587709d83eb36764ab29b1d93e","signature":"89b0f68f8f0b901f9dfff2b9e7255520283a783d6af7f2bc2953d771232317a2"},{"version":"b1538a92b9bae8d230267210c5db38c2eb6bdb352128a3ce3aa8c6acf9fc9622","impliedFormat":1},{"version":"6fc1a4f64372593767a9b7b774e9b3b92bf04e8785c3f9ea98973aa9f4bbe490","impliedFormat":1},{"version":"ff09b6fbdcf74d8af4e131b8866925c5e18d225540b9b19ce9485ca93e574d84","impliedFormat":1},{"version":"d5895252efa27a50f134a9b580aa61f7def5ab73d0a8071f9b5bf9a317c01c2d","impliedFormat":1},{"version":"56208c500dcb5f42be7e18e8cb578f257a1a89b94b3280c506818fed06391805","impliedFormat":1},{"version":"0c94c2e497e1b9bcfda66aea239d5d36cd980d12a6d9d59e66f4be1fa3da5d5a","impliedFormat":1},{"version":"1f366bde16e0513fa7b64f87f86689c4d36efd85afce7eb24753e9c99b91c319","impliedFormat":1},{"version":"151ff381ef9ff8da2da9b9663ebf657eac35c4c9a19183420c05728f31a6761d","impliedFormat":1},{"version":"f3d8c757e148ad968f0d98697987db363070abada5f503da3c06aefd9d4248c1","impliedFormat":1},{"version":"96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","impliedFormat":1},{"version":"7fa8d75d229eeaee235a801758d9c694e94405013fe77d5d1dd8e3201fc414f1","impliedFormat":1}],"root":[83,497,502,[508,530],[536,538],[540,544],[546,548],551,[555,565],579,[584,587],[592,597],[701,708],718,719,[792,796],800,801,[805,810],[815,824],1258,1261,[1377,1384],1431,1432,1442,[1444,1446],[1449,1456],1458,1459,[1461,1486],1489,[1492,1528]],"options":{"allowJs":true,"esModuleInterop":true,"jsx":1,"module":99,"skipLibCheck":true,"strict":true,"target":4},"referencedMap":[[1508,1],[1509,2],[1512,3],[1511,4],[1513,5],[1510,6],[1507,7],[1514,8],[1517,9],[1516,10],[1518,11],[1515,12],[1505,13],[1519,14],[1506,15],[1520,16],[1521,17],[1522,18],[1523,19],[1524,20],[1525,21],[1526,22],[1528,23],[1527,24],[1502,25],[83,26],[1503,27],[1504,28],[497,29],[502,30],[825,26],[826,31],[827,32],[832,33],[828,32],[831,26],[829,26],[830,26],[640,34],[602,26],[603,26],[604,26],[646,34],[641,26],[605,26],[606,26],[607,26],[608,26],[648,35],[609,26],[610,26],[611,26],[612,26],[617,36],[618,37],[619,36],[620,36],[621,26],[622,36],[623,37],[624,36],[625,36],[626,36],[627,36],[628,36],[629,37],[630,37],[631,36],[632,36],[633,37],[634,37],[635,36],[636,36],[637,26],[638,26],[647,34],[614,26],[642,26],[643,38],[644,38],[616,39],[615,40],[645,41],[639,26],[653,42],[656,43],[655,42],[654,44],[652,45],[649,26],[651,46],[650,47],[1430,48],[1429,49],[244,26],[1460,50],[571,51],[570,52],[1260,53],[1259,52],[552,52],[581,54],[580,52],[567,51],[566,52],[814,55],[811,52],[569,51],[568,52],[550,56],[813,57],[812,52],[1441,58],[1437,59],[1433,52],[1435,59],[1436,59],[1439,60],[1440,59],[1434,52],[1438,26],[574,61],[572,52],[576,51],[575,52],[549,52],[1488,62],[1487,52],[590,63],[589,52],[578,64],[577,52],[1448,63],[1447,52],[531,65],[554,63],[553,52],[591,66],[588,52],[1491,67],[1490,52],[583,51],[582,52],[573,26],[1280,68],[1279,26],[668,26],[1529,26],[1530,26],[1531,26],[1532,69],[1265,26],[1534,70],[1266,71],[1533,26],[1535,26],[1536,26],[1537,26],[1538,26],[143,72],[144,72],[145,73],[100,74],[146,75],[147,76],[148,77],[95,26],[98,78],[96,26],[97,26],[149,79],[150,80],[151,81],[152,82],[153,83],[154,84],[155,84],[156,85],[157,86],[158,87],[159,88],[101,26],[99,26],[160,89],[161,90],[162,91],[194,92],[163,93],[164,94],[165,95],[166,96],[167,97],[168,98],[169,99],[170,100],[171,101],[172,102],[173,102],[174,103],[175,26],[176,104],[178,105],[177,106],[179,107],[180,108],[181,109],[182,110],[183,111],[184,112],[185,113],[186,114],[187,115],[188,116],[189,117],[190,118],[191,119],[102,26],[103,26],[104,26],[142,120],[192,121],[193,122],[198,123],[354,52],[199,124],[197,125],[356,126],[355,127],[195,128],[352,26],[196,129],[84,26],[86,130],[351,52],[262,52],[1539,26],[534,131],[533,132],[532,26],[1443,133],[85,26],[921,134],[900,135],[997,26],[901,136],[837,134],[838,134],[839,134],[840,134],[841,134],[842,134],[843,134],[844,134],[845,134],[846,134],[847,134],[848,134],[849,134],[850,134],[851,134],[852,134],[853,134],[854,134],[833,26],[855,134],[856,134],[857,26],[858,134],[859,134],[861,134],[860,134],[862,134],[863,134],[864,134],[865,134],[866,134],[867,134],[868,134],[869,134],[870,134],[871,134],[872,134],[873,134],[874,134],[875,134],[876,134],[877,134],[878,134],[879,134],[880,134],[882,134],[883,134],[884,134],[881,134],[885,134],[886,134],[887,134],[888,134],[889,134],[890,134],[891,134],[892,134],[893,134],[894,134],[895,134],[896,134],[897,134],[898,134],[899,134],[902,137],[903,134],[904,134],[905,138],[906,139],[907,134],[908,134],[909,134],[910,134],[913,134],[911,134],[912,134],[835,26],[914,134],[915,134],[916,134],[917,134],[918,134],[919,134],[920,134],[922,140],[923,134],[924,134],[925,134],[927,134],[926,134],[928,134],[929,134],[930,134],[931,134],[932,134],[933,134],[934,134],[935,134],[936,134],[937,134],[939,134],[938,134],[940,134],[941,26],[942,26],[943,26],[1090,141],[944,134],[945,134],[946,134],[947,134],[948,134],[949,134],[950,26],[951,134],[952,26],[953,134],[954,134],[955,134],[956,134],[957,134],[958,134],[959,134],[960,134],[961,134],[962,134],[963,134],[964,134],[965,134],[966,134],[967,134],[968,134],[969,134],[970,134],[971,134],[972,134],[973,134],[974,134],[975,134],[976,134],[977,134],[978,134],[979,134],[980,134],[981,134],[982,134],[983,134],[984,134],[985,26],[986,134],[987,134],[988,134],[989,134],[990,134],[991,134],[992,134],[993,134],[994,134],[995,134],[996,134],[998,142],[1186,143],[1091,136],[1093,136],[1094,136],[1095,136],[1096,136],[1097,136],[1092,136],[1098,136],[1100,136],[1099,136],[1101,136],[1102,136],[1103,136],[1104,136],[1105,136],[1106,136],[1107,136],[1108,136],[1110,136],[1109,136],[1111,136],[1112,136],[1113,136],[1114,136],[1115,136],[1116,136],[1117,136],[1118,136],[1119,136],[1120,136],[1121,136],[1122,136],[1123,136],[1124,136],[1125,136],[1127,136],[1128,136],[1126,136],[1129,136],[1130,136],[1131,136],[1132,136],[1133,136],[1134,136],[1135,136],[1136,136],[1137,136],[1138,136],[1139,136],[1140,136],[1142,136],[1141,136],[1144,136],[1143,136],[1145,136],[1146,136],[1147,136],[1148,136],[1149,136],[1150,136],[1151,136],[1152,136],[1153,136],[1154,136],[1155,136],[1156,136],[1157,136],[1159,136],[1158,136],[1160,136],[1161,136],[1162,136],[1164,136],[1163,136],[1165,136],[1166,136],[1167,136],[1168,136],[1169,136],[1170,136],[1172,136],[1171,136],[1173,136],[1174,136],[1175,136],[1176,136],[1177,136],[834,134],[1178,136],[1179,136],[1181,136],[1180,136],[1182,136],[1183,136],[1184,136],[1185,136],[999,134],[1000,134],[1001,26],[1002,26],[1003,26],[1004,134],[1005,26],[1006,26],[1007,26],[1008,26],[1009,26],[1010,134],[1011,134],[1012,134],[1013,134],[1014,134],[1015,134],[1016,134],[1017,134],[1022,144],[1020,145],[1021,146],[1019,147],[1018,134],[1023,134],[1024,134],[1025,134],[1026,134],[1027,134],[1028,134],[1029,134],[1030,134],[1031,134],[1032,134],[1033,26],[1034,26],[1035,134],[1036,134],[1037,26],[1038,26],[1039,26],[1040,134],[1041,134],[1042,134],[1043,134],[1044,140],[1045,134],[1046,134],[1047,134],[1048,134],[1049,134],[1050,134],[1051,134],[1052,134],[1053,134],[1054,134],[1055,134],[1056,134],[1057,134],[1058,134],[1059,134],[1060,134],[1061,134],[1062,134],[1063,134],[1064,134],[1065,134],[1066,134],[1067,134],[1068,134],[1069,134],[1070,134],[1071,134],[1072,134],[1073,134],[1074,134],[1075,134],[1076,134],[1077,134],[1078,134],[1079,134],[1080,134],[1081,134],[1082,134],[1083,134],[1084,134],[1085,134],[836,148],[1086,26],[1087,26],[1088,26],[1089,26],[1371,26],[613,26],[1276,26],[660,149],[658,150],[659,26],[657,151],[539,52],[804,152],[507,153],[506,154],[505,155],[501,156],[499,157],[500,158],[498,26],[803,159],[504,160],[503,26],[700,161],[695,162],[681,162],[697,163],[696,164],[692,163],[680,162],[693,163],[694,162],[699,165],[698,163],[802,166],[93,167],[443,168],[448,25],[450,169],[220,170],[248,171],[426,172],[243,173],[231,26],[212,26],[218,26],[416,174],[279,175],[219,26],[385,176],[253,177],[254,178],[350,179],[413,180],[368,181],[420,182],[421,183],[419,184],[418,26],[417,185],[250,186],[221,187],[300,26],[301,188],[216,26],[232,189],[222,190],[284,189],[281,189],[205,189],[246,191],[245,26],[425,192],[435,26],[211,26],[326,193],[327,194],[321,52],[471,26],[329,26],[330,195],[322,196],[477,197],[475,198],[470,26],[412,199],[411,26],[469,200],[323,52],[364,201],[362,202],[472,26],[476,26],[474,203],[473,26],[363,204],[464,205],[467,206],[291,207],[290,208],[289,209],[480,52],[288,210],[273,26],[483,26],[486,26],[485,52],[487,211],[201,26],[422,212],[423,213],[424,214],[234,26],[210,215],[200,26],[342,52],[203,216],[341,217],[340,218],[331,26],[332,26],[339,26],[334,26],[337,219],[333,26],[335,220],[338,221],[336,220],[217,26],[208,26],[209,189],[263,222],[264,223],[261,224],[259,225],[260,226],[256,26],[348,195],[370,195],[442,227],[451,228],[455,229],[429,230],[428,26],[276,26],[488,231],[438,232],[324,233],[325,234],[316,235],[306,26],[347,236],[307,237],[349,238],[344,239],[343,26],[345,26],[361,240],[430,241],[431,242],[309,243],[313,244],[304,245],[408,246],[437,247],[283,248],[386,249],[206,250],[436,251],[202,173],[257,26],[265,252],[397,253],[255,26],[396,254],[94,26],[391,255],[233,26],[302,256],[387,26],[207,26],[266,26],[395,257],[215,26],[271,258],[312,259],[427,260],[311,26],[394,26],[258,26],[399,261],[400,262],[213,26],[402,263],[404,264],[403,265],[236,26],[393,250],[406,266],[392,267],[398,268],[224,26],[227,26],[225,26],[229,26],[226,26],[228,26],[230,269],[223,26],[378,270],[377,26],[383,271],[379,272],[382,273],[381,273],[384,271],[380,272],[270,274],[371,275],[434,276],[490,26],[459,277],[461,278],[308,26],[460,279],[432,241],[489,280],[328,241],[214,26],[310,281],[267,282],[268,283],[269,284],[299,285],[407,285],[285,285],[372,286],[286,286],[252,287],[251,26],[376,288],[375,289],[374,290],[373,291],[433,292],[320,293],[358,294],[319,295],[353,296],[357,297],[415,298],[414,299],[410,300],[367,301],[369,302],[366,303],[405,304],[360,26],[447,26],[359,305],[409,26],[272,306],[305,212],[303,307],[274,308],[277,309],[484,26],[275,310],[278,310],[445,26],[444,26],[446,26],[482,26],[280,311],[318,52],[92,26],[365,312],[249,26],[238,313],[314,26],[453,52],[463,314],[298,52],[457,195],[297,315],[440,316],[296,314],[204,26],[465,317],[294,52],[295,52],[287,26],[237,26],[293,318],[292,319],[235,320],[315,101],[282,101],[401,26],[389,321],[388,26],[449,26],[346,322],[317,52],[441,323],[87,52],[90,324],[91,325],[88,52],[89,26],[247,326],[242,327],[241,26],[240,328],[239,26],[439,329],[452,330],[454,331],[456,332],[458,333],[462,334],[496,335],[466,335],[495,336],[468,337],[478,338],[479,339],[481,340],[491,341],[494,215],[493,26],[492,342],[1244,343],[1206,344],[1205,345],[1243,346],[1245,347],[1187,52],[1188,52],[1189,52],[1233,348],[1212,349],[1213,349],[1214,350],[1215,52],[1216,52],[1217,351],[1190,352],[1218,52],[1219,52],[1220,353],[1221,52],[1222,52],[1223,52],[1224,52],[1225,52],[1226,52],[1191,352],[1227,52],[1228,52],[1229,352],[1230,52],[1231,52],[1232,353],[1246,350],[1234,343],[1235,343],[1236,343],[1237,343],[1238,343],[1239,26],[1240,343],[1241,354],[1247,355],[1248,356],[1257,357],[1203,358],[1192,359],[1193,343],[1194,359],[1195,343],[1196,26],[1197,26],[1198,26],[1199,343],[1200,343],[1201,343],[1202,343],[1210,360],[1211,361],[1207,362],[1208,363],[1242,364],[1204,52],[1209,365],[1249,359],[1250,359],[1256,366],[1251,343],[1252,359],[1253,359],[1254,343],[1255,359],[1385,26],[1400,367],[1401,367],[1415,368],[1402,369],[1403,369],[1404,370],[1398,371],[1396,372],[1387,26],[1391,373],[1395,374],[1393,375],[1399,376],[1388,377],[1389,378],[1390,379],[1392,380],[1394,381],[1397,382],[1405,369],[1406,369],[1407,369],[1408,367],[1409,369],[1410,369],[1386,369],[1411,26],[1413,383],[1412,369],[1414,367],[1284,26],[1293,384],[1303,385],[1349,386],[1274,387],[1320,388],[1307,389],[1367,390],[1319,391],[1304,392],[1351,393],[1350,394],[1315,395],[1306,396],[1352,397],[1353,398],[1354,399],[1362,400],[1356,400],[1364,400],[1368,400],[1355,400],[1357,400],[1360,400],[1363,400],[1359,401],[1361,400],[1365,402],[1358,402],[1269,403],[1336,52],[1333,404],[1337,52],[1329,400],[1270,400],[1327,405],[1273,406],[1286,407],[1332,408],[1335,400],[1271,52],[1334,409],[1263,52],[1262,52],[1282,52],[1375,410],[1374,411],[1376,412],[1344,26],[1342,26],[1346,413],[1345,414],[1341,415],[1343,416],[1347,417],[1348,418],[1340,52],[1290,419],[1264,400],[1339,400],[1285,420],[1338,400],[1305,419],[1366,400],[1281,421],[1324,422],[1283,423],[1308,424],[1300,425],[1309,426],[1310,427],[1311,428],[1312,429],[1316,430],[1317,431],[1292,432],[1323,433],[1321,434],[1322,435],[1318,436],[1325,437],[1294,438],[1302,439],[1288,440],[1298,441],[1299,442],[1295,443],[1289,444],[1301,445],[1268,446],[1373,26],[1287,447],[1326,448],[1369,26],[1313,26],[1330,26],[1314,26],[1372,449],[1291,450],[1296,26],[1328,451],[1331,26],[1297,26],[1370,26],[1272,52],[1278,452],[1275,26],[1277,26],[390,453],[545,52],[535,26],[81,26],[82,26],[13,26],[14,26],[16,26],[15,26],[2,26],[17,26],[18,26],[19,26],[20,26],[21,26],[22,26],[23,26],[24,26],[3,26],[25,26],[26,26],[4,26],[27,26],[31,26],[28,26],[29,26],[30,26],[32,26],[33,26],[34,26],[5,26],[35,26],[36,26],[37,26],[38,26],[6,26],[42,26],[39,26],[40,26],[41,26],[43,26],[7,26],[44,26],[49,26],[50,26],[45,26],[46,26],[47,26],[48,26],[8,26],[54,26],[51,26],[52,26],[53,26],[55,26],[9,26],[56,26],[57,26],[58,26],[60,26],[59,26],[61,26],[62,26],[10,26],[63,26],[64,26],[65,26],[11,26],[66,26],[67,26],[68,26],[69,26],[70,26],[1,26],[71,26],[72,26],[12,26],[76,26],[74,26],[79,26],[78,26],[73,26],[77,26],[75,26],[80,26],[120,454],[130,455],[119,454],[140,456],[111,457],[110,458],[139,342],[133,459],[138,460],[113,461],[127,462],[112,463],[136,464],[108,465],[107,342],[137,466],[109,467],[114,468],[115,26],[118,468],[105,26],[141,469],[131,470],[122,471],[123,472],[125,473],[121,474],[124,475],[134,342],[116,476],[117,477],[126,478],[106,479],[129,470],[128,468],[132,26],[135,480],[679,481],[598,26],[663,26],[675,482],[673,483],[601,484],[662,485],[672,486],[677,487],[669,488],[670,26],[678,489],[676,490],[667,491],[665,492],[664,26],[671,26],[661,486],[674,26],[600,26],[599,52],[666,26],[691,493],[690,494],[689,495],[682,496],[688,497],[684,162],[687,487],[685,26],[686,162],[683,498],[1457,133],[1267,499],[791,500],[1420,501],[1427,502],[1422,26],[1423,26],[1421,503],[1424,504],[1416,26],[1417,26],[1428,505],[1419,506],[1425,26],[1426,507],[1418,508],[786,509],[789,510],[787,510],[783,509],[790,511],[788,510],[784,512],[785,513],[779,514],[724,515],[726,516],[778,26],[725,517],[782,518],[780,26],[727,515],[728,26],[777,519],[723,520],[720,26],[781,521],[721,522],[722,26],[729,523],[730,523],[731,523],[732,523],[733,523],[734,523],[735,523],[736,523],[737,523],[738,523],[739,523],[740,523],[741,523],[743,523],[742,523],[744,523],[745,523],[746,523],[776,524],[747,523],[748,523],[749,523],[750,523],[751,523],[752,523],[753,523],[754,523],[755,523],[756,523],[757,523],[758,523],[759,523],[761,523],[760,523],[762,523],[763,523],[764,523],[765,523],[766,523],[767,523],[768,523],[769,523],[770,523],[771,523],[772,523],[775,523],[773,523],[774,523],[711,525],[717,526],[715,527],[713,527],[716,527],[712,527],[714,527],[710,527],[798,26],[799,528],[709,26],[797,26],[823,529],[1379,530],[809,531],[1452,532],[1384,533],[1453,534],[1382,535],[819,536],[820,537],[1476,538],[821,539],[1479,532],[1478,533],[1480,534],[1477,535],[801,531],[806,540],[1484,541],[807,539],[808,542],[1486,543],[511,544],[512,544],[513,544],[514,544],[515,544],[516,544],[519,545],[518,545],[1483,546],[1485,547],[1378,548],[1377,549],[822,550],[586,551],[1450,552],[1446,553],[1383,554],[1451,555],[1381,556],[1475,557],[556,558],[543,559],[540,560],[544,561],[1471,562],[1464,563],[1456,564],[1459,565],[1470,566],[1468,567],[1463,568],[1466,569],[1465,562],[1467,570],[1472,571],[1462,572],[1469,573],[562,574],[560,575],[557,576],[558,577],[547,578],[548,577],[561,579],[559,577],[564,580],[587,581],[594,582],[565,583],[593,584],[520,26],[546,26],[1445,585],[1481,586],[816,587],[1455,588],[1454,52],[1482,589],[1461,590],[1432,591],[542,592],[537,593],[1258,594],[563,595],[824,52],[1261,596],[1444,597],[585,598],[1458,599],[815,600],[1474,601],[538,602],[551,603],[1473,52],[1442,604],[1489,605],[579,606],[810,607],[1449,608],[555,609],[1380,602],[592,610],[1431,602],[1492,611],[541,612],[584,613],[1493,52],[1494,52],[1495,52],[1496,52],[1497,52],[1498,52],[1499,52],[1500,52],[1501,52],[521,52],[530,614],[818,615],[805,52],[595,542],[596,52],[597,52],[508,26],[701,616],[817,617],[525,26],[509,26],[702,26],[703,618],[526,26],[528,619],[705,620],[527,26],[707,621],[517,544],[529,622],[708,26],[523,623],[522,26],[536,612],[719,624],[792,625],[793,626],[510,627],[794,628],[718,629],[795,628],[796,630],[800,631],[524,26],[704,26],[706,632]],"semanticDiagnosticsPerFile":[[529,[{"start":2187,"length":13,"code":2322,"category":1,"messageText":{"messageText":"Type 'string | null' is not assignable to type 'string'.","category":1,"code":2322,"next":[{"messageText":"Type 'null' is not assignable to type 'string'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/contexts/itemmastercontext.tsx","start":11088,"length":13,"messageText":"The expected type comes from property 'absolute_path' which is declared here on type 'ItemPage'","category":3,"code":6500}]},{"start":2796,"length":5,"code":2353,"category":1,"messageText":"Object literal may only specify known properties, and 'title' does not exist in type 'ItemSection'."},{"start":3558,"length":10,"code":2322,"category":1,"messageText":{"messageText":"Type '\"TEXT\" | \"NUMBER\" | \"DATE\" | \"SELECT\" | \"TEXTAREA\" | \"CHECKBOX\"' is not assignable to type '\"number\" | \"textbox\" | \"dropdown\" | \"checkbox\" | \"date\" | \"textarea\"'.","category":1,"code":2322,"next":[{"messageText":"Type '\"TEXT\"' is not assignable to type '\"number\" | \"textbox\" | \"dropdown\" | \"checkbox\" | \"date\" | \"textarea\"'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/contexts/itemmastercontext.tsx","start":8476,"length":10,"messageText":"The expected type comes from property 'field_type' which is declared here on type 'ItemField'","category":3,"code":6500}]},{"start":5727,"length":10,"code":2322,"category":1,"messageText":{"messageText":"Type '\"TEXT\" | \"NUMBER\" | \"DATE\" | \"SELECT\" | \"TEXTAREA\" | \"CHECKBOX\"' is not assignable to type '\"number\" | \"textbox\" | \"dropdown\" | \"checkbox\" | \"date\" | \"textarea\"'.","category":1,"code":2322,"next":[{"messageText":"Type '\"TEXT\"' is not assignable to type '\"number\" | \"textbox\" | \"dropdown\" | \"checkbox\" | \"date\" | \"textarea\"'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/contexts/itemmastercontext.tsx","start":7374,"length":10,"messageText":"The expected type comes from property 'field_type' which is declared here on type 'ItemMasterField'","category":3,"code":6500}]},{"start":6541,"length":5,"code":2339,"category":1,"messageText":"Property 'title' does not exist on type 'Partial'."},{"start":8880,"length":18,"code":2339,"category":1,"messageText":"Property 'default_validation' does not exist on type 'Partial'."},{"start":8946,"length":18,"code":2339,"category":1,"messageText":"Property 'default_properties' does not exist on type 'Partial'."}]],[707,[{"start":821,"length":24,"code":7053,"category":1,"messageText":{"messageText":"Element implicitly has an 'any' type because expression of type '\"Authorization\"' can't be used to index type 'HeadersInit'.","category":1,"code":7053,"next":[{"messageText":"Property 'Authorization' does not exist on type 'HeadersInit'.","category":1,"code":2339}]}}]],[792,[{"start":629,"length":4,"code":2769,"category":1,"messageText":{"messageText":"No overload matches this call.","category":1,"code":2769,"next":[{"messageText":"Overload 1 of 2, '(values: readonly [\"FG\", \"PT\", \"SM\", \"RM\", \"CS\"], params?: string | { error?: string | $ZodErrorMap<$ZodIssueInvalidValue> | undefined; message?: string | undefined; } | undefined): ZodEnum<...>', gave the following error.","category":1,"code":2772,"next":[{"messageText":"Object literal may only specify known properties, and 'errorMap' does not exist in type '{ error?: string | $ZodErrorMap<$ZodIssueInvalidValue> | undefined; message?: string | undefined; }'.","category":1,"code":2353}]},{"messageText":"Overload 2 of 2, '(entries: Readonly>, params?: string | { error?: string | $ZodErrorMap<$ZodIssueInvalidValue> | undefined; message?: string | undefined; } | undefined): ZodEnum<...>', gave the following error.","category":1,"code":2772,"next":[{"messageText":"Argument of type 'string[]' is not assignable to parameter of type 'Readonly>'.","category":1,"code":2345,"next":[{"messageText":"Index signature for type 'string' is missing in type 'string[]'.","category":1,"code":2329}]}]}]},"relatedInformation":[]},{"start":19388,"length":6,"code":2339,"category":1,"messageText":"Property 'errors' does not exist on type 'ZodError'."},{"start":19404,"length":3,"messageText":"Parameter 'err' implicitly has an 'any' type.","category":1,"code":7006}]],[800,[{"start":7708,"length":11,"code":2769,"category":1,"messageText":{"messageText":"No overload matches this call.","category":1,"code":2769,"next":[{"messageText":"Overload 1 of 2, '(partial: MasterDataStore | Partial | ((state: MasterDataStore) => MasterDataStore | Partial<...>), replace?: false | undefined, action?: Action | undefined): void', gave the following error.","category":1,"code":2772,"next":[{"messageText":"Type '{}' is missing the following properties from type 'Record': \"item-master\", quotation, \"sales-order\", formula, pricing","category":1,"code":2739,"canonicalHead":{"code":2322,"messageText":"Type '{}' is not assignable to type 'Record'."}}]},{"messageText":"Overload 2 of 2, '(state: MasterDataStore | ((state: MasterDataStore) => MasterDataStore), replace: true, action?: Action | undefined): void', gave the following error.","category":1,"code":2772,"next":[{"messageText":"Type '{}' is missing the following properties from type 'Record': \"item-master\", quotation, \"sales-order\", formula, pricing","category":1,"code":2739,"canonicalHead":{"code":2322,"messageText":"Type '{}' is not assignable to type 'Record'."}}]}]},"relatedInformation":[]},{"start":10569,"length":7,"messageText":"Expected 0-1 arguments, but got 2.","category":1,"code":2554}]],[1451,[{"start":8149,"length":8,"code":2322,"category":1,"messageText":{"messageText":"Type 'Resolver<{ itemName: unknown; certificationStartDate: unknown; certificationEndDate: unknown; finalizedDate: unknown; productName: unknown; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ......' is not assignable to type 'Resolver<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: ...'.","category":1,"code":2322,"next":[{"messageText":"Types of parameters 'values' and 'values' are incompatible.","category":1,"code":2328,"next":[{"messageText":"Type '{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: string | ...' is not assignable to type '{ itemName: unknown; certificationStartDate: unknown; certificationEndDate: unknown; finalizedDate: unknown; productName: unknown; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...'.","category":1,"code":2322,"next":[{"messageText":"Type '{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: string | ...' is not assignable to type '{ itemName: unknown; certificationStartDate: unknown; certificationEndDate: unknown; finalizedDate: unknown; productName: unknown; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...'.","category":1,"code":2322,"next":[{"messageText":"Type '{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: string | ...' is not assignable to type '{ itemName: unknown; certificationStartDate: unknown; certificationEndDate: unknown; finalizedDate: unknown; productName: unknown; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...'.","category":1,"code":2322,"next":[{"messageText":"Property 'certificationStartDate' is optional in type '{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: string | ...' but required in type '{ itemName: unknown; certificationStartDate: unknown; certificationEndDate: unknown; finalizedDate: unknown; productName: unknown; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...'.","category":1,"code":2327}]}]}]}]}]}},{"start":13680,"length":10,"code":2345,"category":1,"messageText":"Argument of type '\"needsBOM\"' is not assignable to parameter of type '\"length\" | \"bom\" | \"unit\" | \"note\" | \"itemCode\" | \"itemName\" | \"itemType\" | \"productCategory\" | \"partType\" | \"partUsage\" | \"category1\" | \"category2\" | \"category3\" | \"specification\" | ... 70 more ... | `bomCategories.${number}`'."},{"start":13798,"length":16,"code":2345,"category":1,"messageText":{"messageText":"Argument of type '(data: CreateItemFormData) => Promise' is not assignable to parameter of type 'SubmitHandler'.","category":1,"code":2345,"next":[{"messageText":"Types of parameters 'data' and 'data' are incompatible.","category":1,"code":2328,"next":[{"messageText":"Type 'TFieldValues' is not assignable to type '{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: string | ...'.","category":1,"code":2322,"next":[{"messageText":"Type 'FieldValues' is not assignable to type '{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy?: string | ...'.","category":1,"code":2322,"next":[{"messageText":"Type 'FieldValues' is missing the following properties from type '{ partType: string; isActive: boolean; currentRevision: number; isFinal: boolean; itemType: \"PT\"; length?: string | undefined; bom?: { id: string; childItemCode: string; childItemName: string; ... 7 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 42 more ...; chainSpec?: string | undefined; }': partType, isActive, currentRevision, isFinal, itemType","category":1,"code":2739,"next":[{"messageText":"Type 'TFieldValues' is not assignable to type '{ unit: string; itemName: string; specification: string; isActive: boolean; currentRevision: number; isFinal: boolean; itemType: \"CS\"; bom?: { id: string; childItemCode: string; childItemName: string; ... 7 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 15 more ...; finalizedBy?: string | un...'.","category":1,"code":2322,"next":[{"messageText":"Type 'FieldValues' is missing the following properties from type '{ unit: string; itemName: string; specification: string; isActive: boolean; currentRevision: number; isFinal: boolean; itemType: \"CS\"; bom?: { id: string; childItemCode: string; childItemName: string; ... 7 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 15 more ...; finalizedBy?: string | un...': unit, itemName, specification, isActive, and 3 more.","category":1,"code":2740,"canonicalHead":{"code":2322,"messageText":"Type 'FieldValues' is not assignable to type '{ unit: string; itemName: string; specification: string; isActive: boolean; currentRevision: number; isFinal: boolean; itemType: \"CS\"; bom?: { id: string; childItemCode: string; childItemName: string; ... 7 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 15 more ...; finalizedBy?: string | un...'."}}]}],"canonicalHead":{"code":2322,"messageText":"Type 'FieldValues' is not assignable to type '{ partType: string; isActive: boolean; currentRevision: number; isFinal: boolean; itemType: \"PT\"; length?: string | undefined; bom?: { id: string; childItemCode: string; childItemName: string; ... 7 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 42 more ...; chainSpec?: string | undefined; }'."}}]}]}]}]}},{"start":17400,"length":5,"code":2322,"category":1,"messageText":{"messageText":"Type '\"\" | ItemType' is not assignable to type 'ItemType | undefined'.","category":1,"code":2322,"next":[{"messageText":"Type '\"\"' is not assignable to type 'ItemType | undefined'.","category":1,"code":2322}]},"relatedInformation":[{"file":"./src/components/items/itemtypeselect.tsx","start":311,"length":5,"messageText":"The expected type comes from property 'value' which is declared here on type 'IntrinsicAttributes & ItemTypeSelectProps'","category":3,"code":6500}]},{"start":18713,"length":11,"code":2339,"category":1,"messageText":{"messageText":"Property 'productName' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'productName' does not exist on type 'Partial> & { ......'.","category":1,"code":2339}]}},{"start":18805,"length":11,"code":2339,"category":1,"messageText":{"messageText":"Property 'productName' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'productName' does not exist on type 'Partial> & { ......'.","category":1,"code":2339}]}},{"start":18922,"length":11,"code":2339,"category":1,"messageText":{"messageText":"Property 'productName' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'productName' does not exist on type 'Partial> & { ......'.","category":1,"code":2339}]}},{"start":19028,"length":11,"code":2339,"category":1,"messageText":{"messageText":"Property 'productName' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'productName' does not exist on type 'Partial> & { ......'.","category":1,"code":2339}]}},{"start":25032,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'partType' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'partType' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":25600,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'partType' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'partType' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":25714,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'partType' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'partType' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":25817,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'partType' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'partType' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":32950,"length":13,"code":2345,"category":1,"messageText":"Argument of type '\"description\"' is not assignable to parameter of type '\"length\" | \"bom\" | \"unit\" | \"note\" | \"itemCode\" | \"itemName\" | \"itemType\" | \"productCategory\" | \"partType\" | \"partUsage\" | \"category1\" | \"category2\" | \"category3\" | \"specification\" | ... 70 more ... | `bomCategories.${number}`'."},{"start":45410,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'material' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'material' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":46087,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'material' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'material' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":46217,"length":8,"code":2339,"category":1,"messageText":{"messageText":"Property 'material' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'material' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":47216,"length":6,"code":2339,"category":1,"messageText":{"messageText":"Property 'length' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'length' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":47450,"length":6,"code":2339,"category":1,"messageText":{"messageText":"Property 'length' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'length' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":47578,"length":6,"code":2339,"category":1,"messageText":{"messageText":"Property 'length' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'length' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":47703,"length":6,"code":2339,"category":1,"messageText":{"messageText":"Property 'length' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'length' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":48585,"length":13,"code":2339,"category":1,"messageText":{"messageText":"Property 'bendingLength' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'bendingLength' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":49906,"length":13,"code":2339,"category":1,"messageText":{"messageText":"Property 'bendingLength' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'bendingLength' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":50041,"length":13,"code":2339,"category":1,"messageText":{"messageText":"Property 'bendingLength' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'bendingLength' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":51037,"length":19,"code":2339,"category":1,"messageText":{"messageText":"Property 'electricOpenerPower' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'electricOpenerPower' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":51535,"length":19,"code":2339,"category":1,"messageText":{"messageText":"Property 'electricOpenerPower' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'electricOpenerPower' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":51676,"length":19,"code":2339,"category":1,"messageText":{"messageText":"Property 'electricOpenerPower' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'electricOpenerPower' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":52434,"length":22,"code":2339,"category":1,"messageText":{"messageText":"Property 'electricOpenerCapacity' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'electricOpenerCapacity' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":53329,"length":22,"code":2339,"category":1,"messageText":{"messageText":"Property 'electricOpenerCapacity' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'electricOpenerCapacity' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":53473,"length":22,"code":2339,"category":1,"messageText":{"messageText":"Property 'electricOpenerCapacity' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'electricOpenerCapacity' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":54659,"length":12,"code":2339,"category":1,"messageText":{"messageText":"Property 'motorVoltage' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'motorVoltage' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":55148,"length":12,"code":2339,"category":1,"messageText":{"messageText":"Property 'motorVoltage' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'motorVoltage' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":55282,"length":12,"code":2339,"category":1,"messageText":{"messageText":"Property 'motorVoltage' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'motorVoltage' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":56240,"length":9,"code":2339,"category":1,"messageText":{"messageText":"Property 'chainSpec' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'chainSpec' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":56866,"length":9,"code":2339,"category":1,"messageText":{"messageText":"Property 'chainSpec' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'chainSpec' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":56997,"length":9,"code":2339,"category":1,"messageText":{"messageText":"Property 'chainSpec' does not exist on type 'FieldErrors<{ itemName: string; isActive: boolean; currentRevision: number; isFinal: boolean; productName: string; itemType: \"FG\"; bom?: { id: string; childItemCode: string; childItemName: string; quantity: number; ... 6 more ...; bendingDetails?: { ...; }[] | undefined; }[] | undefined; ... 22 more ...; finalizedBy...'.","category":1,"code":2339,"next":[{"messageText":"Property 'chainSpec' does not exist on type 'Partial> ...'.","category":1,"code":2339}]}},{"start":59270,"length":13,"code":2345,"category":1,"messageText":"Argument of type '\"description\"' is not assignable to parameter of type '\"length\" | \"bom\" | \"unit\" | \"note\" | \"itemCode\" | \"itemName\" | \"itemType\" | \"productCategory\" | \"partType\" | \"partUsage\" | \"category1\" | \"category2\" | \"category3\" | \"specification\" | ... 70 more ... | `bomCategories.${number}`'."},{"start":64110,"length":13,"code":2345,"category":1,"messageText":"Argument of type '\"description\"' is not assignable to parameter of type '\"length\" | \"bom\" | \"unit\" | \"note\" | \"itemCode\" | \"itemName\" | \"itemType\" | \"productCategory\" | \"partType\" | \"partUsage\" | \"category1\" | \"category2\" | \"category3\" | \"specification\" | ... 70 more ... | `bomCategories.${number}`'."},{"start":82908,"length":9,"code":2345,"category":1,"messageText":"Argument of type '\"remarks\"' is not assignable to parameter of type '\"length\" | \"bom\" | \"unit\" | \"note\" | \"itemCode\" | \"itemName\" | \"itemType\" | \"productCategory\" | \"partType\" | \"partUsage\" | \"category1\" | \"category2\" | \"category3\" | \"specification\" | ... 70 more ... | `bomCategories.${number}`'."}]]],"affectedFilesPendingEmit":[1508,1509,1512,1511,1513,1510,1507,1514,1517,1516,1518,1515,1505,1519,1506,1520,1521,1522,1523,1524,1525,1526,1528,1527,1504,502,823,1379,809,1452,1384,1453,1382,819,820,1476,821,1479,1478,1480,1477,801,806,1484,807,808,1486,511,512,513,514,515,516,519,518,1483,1485,1378,1377,822,586,1450,1446,1383,1451,1381,1475,556,543,540,544,1471,1464,1456,1459,1470,1468,1463,1466,1465,1467,1472,1462,1469,562,560,557,558,547,548,561,559,564,587,594,565,593,520,546,1445,1481,816,1455,1454,1482,1461,1432,542,537,1258,563,824,1261,1444,585,1458,815,1474,538,551,1473,1442,1489,579,810,1449,555,1380,592,1431,1492,541,584,1493,1494,1495,1496,1497,1498,1499,1500,1501,521,530,818,805,595,596,597,508,701,817,525,509,702,703,526,528,705,527,707,517,529,708,523,522,536,719,792,793,510,794,718,795,796,800,524,704,706],"version":"5.9.3"} \ No newline at end of file