diff --git a/questions/00003-medium-omit/README.ja.md b/questions/00003-medium-omit/README.ja.md
index c74e3df2..5e8e1702 100644
--- a/questions/00003-medium-omit/README.ja.md
+++ b/questions/00003-medium-omit/README.ja.md
@@ -18,4 +18,4 @@ const todo: TodoPreview = {
}
```
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00003-medium-omit/README.ko.md b/questions/00003-medium-omit/README.ko.md
index fe63c644..897e11c1 100644
--- a/questions/00003-medium-omit/README.ko.md
+++ b/questions/00003-medium-omit/README.ko.md
@@ -18,4 +18,4 @@ const todo: TodoPreview = {
}
```
-
관련된 문제들
\ No newline at end of file
+
관련된 문제들
diff --git a/questions/00003-medium-omit/README.md b/questions/00003-medium-omit/README.md
index d640d731..dcfa3d15 100644
--- a/questions/00003-medium-omit/README.md
+++ b/questions/00003-medium-omit/README.md
@@ -20,4 +20,4 @@ const todo: TodoPreview = {
}
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00003-medium-omit/README.zh-CN.md b/questions/00003-medium-omit/README.zh-CN.md
index 4c7e3236..4111f6be 100644
--- a/questions/00003-medium-omit/README.zh-CN.md
+++ b/questions/00003-medium-omit/README.zh-CN.md
@@ -20,4 +20,4 @@ const todo: TodoPreview = {
}
```
-
相关挑战
+
相关挑战
diff --git a/questions/00004-easy-pick/README.ja.md b/questions/00004-easy-pick/README.ja.md
index 3ec31a26..d42ddf5c 100644
--- a/questions/00004-easy-pick/README.ja.md
+++ b/questions/00004-easy-pick/README.ja.md
@@ -19,4 +19,4 @@ const todo: TodoPreview = {
}
```
-
関連する課題
+
関連する課題
diff --git a/questions/00004-easy-pick/README.ko.md b/questions/00004-easy-pick/README.ko.md
index 0e788672..146c966d 100644
--- a/questions/00004-easy-pick/README.ko.md
+++ b/questions/00004-easy-pick/README.ko.md
@@ -19,4 +19,4 @@ const todo: TodoPreview = {
}
```
-
관련된 문제들
+
관련된 문제들
diff --git a/questions/00004-easy-pick/README.md b/questions/00004-easy-pick/README.md
index 99e90e64..f7c1b916 100644
--- a/questions/00004-easy-pick/README.md
+++ b/questions/00004-easy-pick/README.md
@@ -21,4 +21,4 @@ const todo: TodoPreview = {
}
```
-
Related Challenges
+
Related Challenges
diff --git a/questions/00004-easy-pick/README.zh-CN.md b/questions/00004-easy-pick/README.zh-CN.md
index 6adbf462..12935ca6 100644
--- a/questions/00004-easy-pick/README.zh-CN.md
+++ b/questions/00004-easy-pick/README.zh-CN.md
@@ -23,4 +23,4 @@ const todo: TodoPreview = {
}
```
-
相关挑战
+
相关挑战
diff --git a/questions/00006-hard-simple-vue/README.ja.md b/questions/00006-hard-simple-vue/README.ja.md
index b6af8473..f2220a85 100644
--- a/questions/00006-hard-simple-vue/README.ja.md
+++ b/questions/00006-hard-simple-vue/README.ja.md
@@ -36,4 +36,4 @@ const instance = SimpleVue({
})
```
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00006-hard-simple-vue/README.md b/questions/00006-hard-simple-vue/README.md
index 31dd6a98..61926bae 100644
--- a/questions/00006-hard-simple-vue/README.md
+++ b/questions/00006-hard-simple-vue/README.md
@@ -36,4 +36,4 @@ const instance = SimpleVue({
})
```
-
Related Challenges
+
Related Challenges
diff --git a/questions/00006-hard-simple-vue/README.zh-CN.md b/questions/00006-hard-simple-vue/README.zh-CN.md
index 667de7cb..84617761 100644
--- a/questions/00006-hard-simple-vue/README.zh-CN.md
+++ b/questions/00006-hard-simple-vue/README.zh-CN.md
@@ -36,4 +36,4 @@ const instance = SimpleVue({
})
```
-
相关挑战
+
相关挑战
diff --git a/questions/00007-easy-readonly/README.ja.md b/questions/00007-easy-readonly/README.ja.md
index 5c5f53c9..74b2c4cd 100644
--- a/questions/00007-easy-readonly/README.ja.md
+++ b/questions/00007-easy-readonly/README.ja.md
@@ -19,4 +19,4 @@ todo.title = "Hello" // Error: cannot reassign a readonly property
todo.description = "barFoo" // Error: cannot reassign a readonly property
```
-
関連する課題
+
関連する課題
diff --git a/questions/00007-easy-readonly/README.ko.md b/questions/00007-easy-readonly/README.ko.md
index 5f003db5..62059144 100644
--- a/questions/00007-easy-readonly/README.ko.md
+++ b/questions/00007-easy-readonly/README.ko.md
@@ -19,4 +19,4 @@ todo.title = "Hello" // Error: cannot reassign a readonly property
todo.description = "barFoo" // Error: cannot reassign a readonly property
```
-
관련된 문제들
\ No newline at end of file
+
관련된 문제들
diff --git a/questions/00007-easy-readonly/README.md b/questions/00007-easy-readonly/README.md
index 0eb67d63..5a372ee3 100644
--- a/questions/00007-easy-readonly/README.md
+++ b/questions/00007-easy-readonly/README.md
@@ -22,4 +22,4 @@ todo.title = "Hello" // Error: cannot reassign a readonly property
todo.description = "barFoo" // Error: cannot reassign a readonly property
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00007-easy-readonly/README.zh-CN.md b/questions/00007-easy-readonly/README.zh-CN.md
index 03480180..b8c68058 100644
--- a/questions/00007-easy-readonly/README.zh-CN.md
+++ b/questions/00007-easy-readonly/README.zh-CN.md
@@ -25,4 +25,4 @@ todo.title = "Hello" // Error: cannot reassign a readonly property
todo.description = "barFoo" // Error: cannot reassign a readonly property
```
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/00008-medium-readonly-2/README.ja.md b/questions/00008-medium-readonly-2/README.ja.md
index c7c7f181..99f28f5f 100644
--- a/questions/00008-medium-readonly-2/README.ja.md
+++ b/questions/00008-medium-readonly-2/README.ja.md
@@ -24,4 +24,4 @@ todo.description = "barFoo" // Error: cannot reassign a readonly property
todo.completed = true // OK
```
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00008-medium-readonly-2/README.ko.md b/questions/00008-medium-readonly-2/README.ko.md
index a1cdec4d..e1aa4b50 100644
--- a/questions/00008-medium-readonly-2/README.ko.md
+++ b/questions/00008-medium-readonly-2/README.ko.md
@@ -22,4 +22,4 @@ todo.description = "barFoo" // Error: cannot reassign a readonly property
todo.completed = true // OK
```
-
관련된 문제들
\ No newline at end of file
+
관련된 문제들
diff --git a/questions/00008-medium-readonly-2/README.md b/questions/00008-medium-readonly-2/README.md
index b9bbaeca..7a066964 100644
--- a/questions/00008-medium-readonly-2/README.md
+++ b/questions/00008-medium-readonly-2/README.md
@@ -24,4 +24,4 @@ todo.description = "barFoo" // Error: cannot reassign a readonly property
todo.completed = true // OK
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00008-medium-readonly-2/README.zh-CN.md b/questions/00008-medium-readonly-2/README.zh-CN.md
index f343dccb..dcb1dd86 100644
--- a/questions/00008-medium-readonly-2/README.zh-CN.md
+++ b/questions/00008-medium-readonly-2/README.zh-CN.md
@@ -26,4 +26,4 @@ todo.description = "barFoo" // Error: cannot reassign a readonly property
todo.completed = true // OK
```
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/00009-medium-deep-readonly/README.ja.md b/questions/00009-medium-deep-readonly/README.ja.md
index 122fe6e7..e37de9da 100644
--- a/questions/00009-medium-deep-readonly/README.ja.md
+++ b/questions/00009-medium-deep-readonly/README.ja.md
@@ -26,4 +26,4 @@ type Expected = {
type Todo = DeepReadonly // should be same as `Expected`
```
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00009-medium-deep-readonly/README.ko.md b/questions/00009-medium-deep-readonly/README.ko.md
index ab73c070..2cc6ea50 100644
--- a/questions/00009-medium-deep-readonly/README.ko.md
+++ b/questions/00009-medium-deep-readonly/README.ko.md
@@ -26,4 +26,4 @@ type Expected = {
type Todo = DeepReadonly // should be same as `Expected`
```
-
관련된 문제들
+
관련된 문제들
diff --git a/questions/00009-medium-deep-readonly/README.md b/questions/00009-medium-deep-readonly/README.md
index 0e38696c..c73f40fa 100644
--- a/questions/00009-medium-deep-readonly/README.md
+++ b/questions/00009-medium-deep-readonly/README.md
@@ -26,4 +26,4 @@ type Expected = {
type Todo = DeepReadonly // should be same as `Expected`
```
-
Related Challenges
+
Related Challenges
diff --git a/questions/00009-medium-deep-readonly/README.zh-CN.md b/questions/00009-medium-deep-readonly/README.zh-CN.md
index 0892db24..8c00a00f 100644
--- a/questions/00009-medium-deep-readonly/README.zh-CN.md
+++ b/questions/00009-medium-deep-readonly/README.zh-CN.md
@@ -28,4 +28,4 @@ type Expected = {
type Todo = DeepReadonly // should be same as `Expected`
```
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/00010-medium-tuple-to-union/README.ja.md b/questions/00010-medium-tuple-to-union/README.ja.md
index 7b9d442d..4cd8237c 100644
--- a/questions/00010-medium-tuple-to-union/README.ja.md
+++ b/questions/00010-medium-tuple-to-union/README.ja.md
@@ -10,4 +10,4 @@ type Arr = ['1', '2', '3']
type Test = TupleToUnion // expected to be '1' | '2' | '3'
```
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00010-medium-tuple-to-union/README.ko.md b/questions/00010-medium-tuple-to-union/README.ko.md
index 743876ad..3c87f528 100644
--- a/questions/00010-medium-tuple-to-union/README.ko.md
+++ b/questions/00010-medium-tuple-to-union/README.ko.md
@@ -10,4 +10,4 @@ type Arr = ['1', '2', '3']
type Test = TupleToUnion // expected to be '1' | '2' | '3'
```
-
관련된 문제들
\ No newline at end of file
+
관련된 문제들
diff --git a/questions/00010-medium-tuple-to-union/README.md b/questions/00010-medium-tuple-to-union/README.md
index b24c6969..4adc45fd 100644
--- a/questions/00010-medium-tuple-to-union/README.md
+++ b/questions/00010-medium-tuple-to-union/README.md
@@ -10,4 +10,4 @@ type Arr = ['1', '2', '3']
type Test = TupleToUnion // expected to be '1' | '2' | '3'
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00010-medium-tuple-to-union/README.zh-CN.md b/questions/00010-medium-tuple-to-union/README.zh-CN.md
index 1a3f79b7..1bf8ca61 100644
--- a/questions/00010-medium-tuple-to-union/README.zh-CN.md
+++ b/questions/00010-medium-tuple-to-union/README.zh-CN.md
@@ -10,4 +10,4 @@ type Arr = ['1', '2', '3']
type Test = TupleToUnion // expected to be '1' | '2' | '3'
```
-
相关挑战
+
相关挑战
diff --git a/questions/00011-easy-tuple-to-object/README.ja.md b/questions/00011-easy-tuple-to-object/README.ja.md
index b90b1db9..47a482f8 100644
--- a/questions/00011-easy-tuple-to-object/README.ja.md
+++ b/questions/00011-easy-tuple-to-object/README.ja.md
@@ -10,4 +10,4 @@ const tuple = ['tesla', 'model 3', 'model X', 'model Y'] as const
type result = TupleToObject // expected { tesla: 'tesla', 'model 3': 'model 3', 'model X': 'model X', 'model Y': 'model Y'}
```
-
関連する課題
+
関連する課題
diff --git a/questions/00011-easy-tuple-to-object/README.ko.md b/questions/00011-easy-tuple-to-object/README.ko.md
index 31ed9b19..ce6a7c84 100644
--- a/questions/00011-easy-tuple-to-object/README.ko.md
+++ b/questions/00011-easy-tuple-to-object/README.ko.md
@@ -10,4 +10,4 @@ const tuple = ['tesla', 'model 3', 'model X', 'model Y'] as const
type result = TupleToObject // expected { tesla: 'tesla', 'model 3': 'model 3', 'model X': 'model X', 'model Y': 'model Y'}
```
-
관련된 문제들
\ No newline at end of file
+
관련된 문제들
diff --git a/questions/00011-easy-tuple-to-object/README.md b/questions/00011-easy-tuple-to-object/README.md
index 72abf49e..ddb8b551 100644
--- a/questions/00011-easy-tuple-to-object/README.md
+++ b/questions/00011-easy-tuple-to-object/README.md
@@ -10,4 +10,4 @@ const tuple = ['tesla', 'model 3', 'model X', 'model Y'] as const
type result = TupleToObject // expected { tesla: 'tesla', 'model 3': 'model 3', 'model X': 'model X', 'model Y': 'model Y'}
```
-
Related Challenges
+
Related Challenges
diff --git a/questions/00011-easy-tuple-to-object/README.zh-CN.md b/questions/00011-easy-tuple-to-object/README.zh-CN.md
index 6b380fbd..a5d404fc 100644
--- a/questions/00011-easy-tuple-to-object/README.zh-CN.md
+++ b/questions/00011-easy-tuple-to-object/README.zh-CN.md
@@ -12,4 +12,4 @@ const tuple = ['tesla', 'model 3', 'model X', 'model Y'] as const
type result = TupleToObject // expected { tesla: 'tesla', 'model 3': 'model 3', 'model X': 'model X', 'model Y': 'model Y'}
```
-
相关挑战
+
相关挑战
diff --git a/questions/00014-easy-first/README.ja.md b/questions/00014-easy-first/README.ja.md
index f2fe5256..46b0f7d4 100644
--- a/questions/00014-easy-first/README.ja.md
+++ b/questions/00014-easy-first/README.ja.md
@@ -12,4 +12,4 @@ type head1 = First // expected to be 'a'
type head2 = First // expected to be 3
```
-
関連する課題
+
関連する課題
diff --git a/questions/00014-easy-first/README.ko.md b/questions/00014-easy-first/README.ko.md
index bc4d2145..9879e9dd 100644
--- a/questions/00014-easy-first/README.ko.md
+++ b/questions/00014-easy-first/README.ko.md
@@ -12,4 +12,4 @@ type head1 = First // expected to be 'a'
type head2 = First // expected to be 3
```
-
관련된 문제들
\ No newline at end of file
+
관련된 문제들
diff --git a/questions/00014-easy-first/README.md b/questions/00014-easy-first/README.md
index 3da6744d..3514ba99 100644
--- a/questions/00014-easy-first/README.md
+++ b/questions/00014-easy-first/README.md
@@ -13,4 +13,4 @@ type head1 = First // expected to be 'a'
type head2 = First // expected to be 3
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00014-easy-first/README.zh-CN.md b/questions/00014-easy-first/README.zh-CN.md
index 00d5940a..b716300c 100644
--- a/questions/00014-easy-first/README.zh-CN.md
+++ b/questions/00014-easy-first/README.zh-CN.md
@@ -14,4 +14,4 @@ type head1 = First // expected to be 'a'
type head2 = First // expected to be 3
```
-
相关挑战
+
相关挑战
diff --git a/questions/00015-medium-last/README.ja.md b/questions/00015-medium-last/README.ja.md
index af18cb55..7d423565 100644
--- a/questions/00015-medium-last/README.ja.md
+++ b/questions/00015-medium-last/README.ja.md
@@ -14,4 +14,4 @@ type tail1 = Last // expected to be 'c'
type tail2 = Last // expected to be 1
```
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00015-medium-last/README.md b/questions/00015-medium-last/README.md
index 0abf6743..d6bb8091 100644
--- a/questions/00015-medium-last/README.md
+++ b/questions/00015-medium-last/README.md
@@ -14,4 +14,4 @@ type tail1 = Last // expected to be 'c'
type tail2 = Last // expected to be 1
```
-
Related Challenges
+
Related Challenges
diff --git a/questions/00015-medium-last/README.zh-CN.md b/questions/00015-medium-last/README.zh-CN.md
index 4462e101..7db5968a 100644
--- a/questions/00015-medium-last/README.zh-CN.md
+++ b/questions/00015-medium-last/README.zh-CN.md
@@ -16,4 +16,4 @@ type tail1 = Last // expected to be 'c'
type tail2 = Last // expected to be 1
```
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/00016-medium-pop/README.ja.md b/questions/00016-medium-pop/README.ja.md
index 3adf829d..b85552ee 100644
--- a/questions/00016-medium-pop/README.ja.md
+++ b/questions/00016-medium-pop/README.ja.md
@@ -16,4 +16,4 @@ type re2 = Pop // expected to be [3, 2]
**おまけ**: 同様に `Shift`、 `Push`、 `Unshift` も実装できますか?
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00016-medium-pop/README.md b/questions/00016-medium-pop/README.md
index 363bbc66..a6001bbe 100644
--- a/questions/00016-medium-pop/README.md
+++ b/questions/00016-medium-pop/README.md
@@ -16,4 +16,4 @@ type re2 = Pop // expected to be [3, 2]
**Extra**: Similarly, can you implement `Shift`, `Push` and `Unshift` as well?
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00016-medium-pop/README.zh-CN.md b/questions/00016-medium-pop/README.zh-CN.md
index 05d41bfc..0bb672a8 100644
--- a/questions/00016-medium-pop/README.zh-CN.md
+++ b/questions/00016-medium-pop/README.zh-CN.md
@@ -18,4 +18,4 @@ type re2 = Pop // expected to be [3, 2]
**额外**:同样,您也可以实现`Shift`,`Push`和`Unshift`吗?
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/00017-hard-currying-1/README.ja.md b/questions/00017-hard-currying-1/README.ja.md
index 0ce15550..55df3592 100644
--- a/questions/00017-hard-currying-1/README.ja.md
+++ b/questions/00017-hard-currying-1/README.ja.md
@@ -18,4 +18,4 @@ const five = curriedAdd(2)(3)
この課題では、カリー化された関数は一度に 1 つの引数しか受け付けません。すべての引数が代入されたら、その結果を返す必要があります。
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00017-hard-currying-1/README.md b/questions/00017-hard-currying-1/README.md
index 8a6286fd..4dfd657b 100644
--- a/questions/00017-hard-currying-1/README.md
+++ b/questions/00017-hard-currying-1/README.md
@@ -18,4 +18,4 @@ The function passed to `Currying` may have multiple arguments, you need to corre
In this challenge, the curried function only accept one argument at a time. Once all the argument is assigned, it should return its result.
-
Related Challenges
+
Related Challenges
diff --git a/questions/00017-hard-currying-1/README.zh-CN.md b/questions/00017-hard-currying-1/README.zh-CN.md
index ad48f4b9..144b50b9 100644
--- a/questions/00017-hard-currying-1/README.zh-CN.md
+++ b/questions/00017-hard-currying-1/README.zh-CN.md
@@ -20,4 +20,4 @@ const five = curriedAdd(2)(3)
在此挑战中,curried函数一次仅接受一个参数。分配完所有参数后,它应返回其结果。
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/00057-hard-get-required/README.ja.md b/questions/00057-hard-get-required/README.ja.md
index cc057b29..fcfe9728 100644
--- a/questions/00057-hard-get-required/README.ja.md
+++ b/questions/00057-hard-get-required/README.ja.md
@@ -8,4 +8,4 @@
type I = GetRequired<{ foo: number, bar?: string }> // expected to be { foo: number }
```
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00057-hard-get-required/README.md b/questions/00057-hard-get-required/README.md
index 42b81abb..35aa2d64 100644
--- a/questions/00057-hard-get-required/README.md
+++ b/questions/00057-hard-get-required/README.md
@@ -9,4 +9,4 @@ type I = GetRequired<{ foo: number, bar?: string }> // expected to be { foo: num
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00057-hard-get-required/README.zh-CN.md b/questions/00057-hard-get-required/README.zh-CN.md
index fe04d640..0aa757ac 100644
--- a/questions/00057-hard-get-required/README.zh-CN.md
+++ b/questions/00057-hard-get-required/README.zh-CN.md
@@ -10,4 +10,4 @@
type I = GetRequired<{ foo: number, bar?: string }> // expected to be { foo: number }
```
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/00059-hard-get-optional/README.ja.md b/questions/00059-hard-get-optional/README.ja.md
index fcc5f2fd..f3f3bc93 100644
--- a/questions/00059-hard-get-optional/README.ja.md
+++ b/questions/00059-hard-get-optional/README.ja.md
@@ -8,4 +8,4 @@
type I = GetOptional<{ foo: number, bar?: string }> // expected to be { bar?: string }
```
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00059-hard-get-optional/README.md b/questions/00059-hard-get-optional/README.md
index f85e15d5..6c8dbdc0 100644
--- a/questions/00059-hard-get-optional/README.md
+++ b/questions/00059-hard-get-optional/README.md
@@ -9,4 +9,4 @@ type I = GetOptional<{ foo: number, bar?: string }> // expected to be { bar?: st
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00059-hard-get-optional/README.zh-CN.md b/questions/00059-hard-get-optional/README.zh-CN.md
index 6af7301d..b14bafb2 100644
--- a/questions/00059-hard-get-optional/README.zh-CN.md
+++ b/questions/00059-hard-get-optional/README.zh-CN.md
@@ -10,4 +10,4 @@
type I = GetOptional<{ foo: number, bar?: string }> // expected to be { bar?: string }
```
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/00089-hard-required-keys/README.ja.md b/questions/00089-hard-required-keys/README.ja.md
index 84b06ce2..5b350c33 100644
--- a/questions/00089-hard-required-keys/README.ja.md
+++ b/questions/00089-hard-required-keys/README.ja.md
@@ -9,4 +9,4 @@ type Result = RequiredKeys<{ foo: number; bar?: string }>;
// expected to be “foo”
```
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00089-hard-required-keys/README.md b/questions/00089-hard-required-keys/README.md
index 587181e7..9fb24ed7 100644
--- a/questions/00089-hard-required-keys/README.md
+++ b/questions/00089-hard-required-keys/README.md
@@ -10,4 +10,4 @@ type Result = RequiredKeys<{ foo: number; bar?: string }>;
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00089-hard-required-keys/README.zh-CN.md b/questions/00089-hard-required-keys/README.zh-CN.md
index 74e0e7ba..ad2b5f21 100644
--- a/questions/00089-hard-required-keys/README.zh-CN.md
+++ b/questions/00089-hard-required-keys/README.zh-CN.md
@@ -11,4 +11,4 @@ type Result = RequiredKeys<{ foo: number; bar?: string }>;
// expected to be “foo”
```
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/00090-hard-optional-keys/README.ja.md b/questions/00090-hard-optional-keys/README.ja.md
index 56e2181d..b295f15b 100644
--- a/questions/00090-hard-optional-keys/README.ja.md
+++ b/questions/00090-hard-optional-keys/README.ja.md
@@ -2,4 +2,4 @@
オプショナルなキーの Union を抽出する高度なユーティリティ型 `OptionalKeys` を実装してください。
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00090-hard-optional-keys/README.md b/questions/00090-hard-optional-keys/README.md
index 554ba52b..c887d5a8 100644
--- a/questions/00090-hard-optional-keys/README.md
+++ b/questions/00090-hard-optional-keys/README.md
@@ -3,4 +3,4 @@
Implement the advanced util type `OptionalKeys`, which picks all the optional keys into a union.
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00090-hard-optional-keys/README.zh-CN.md b/questions/00090-hard-optional-keys/README.zh-CN.md
index 2338b01e..bdd25195 100644
--- a/questions/00090-hard-optional-keys/README.zh-CN.md
+++ b/questions/00090-hard-optional-keys/README.zh-CN.md
@@ -4,4 +4,4 @@
实现高级util类型`OptionalKeys`,该类型将所有可选键合并为一个并集。
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/00106-medium-trimleft/README.ja.md b/questions/00106-medium-trimleft/README.ja.md
index 125b069c..44af1e2f 100644
--- a/questions/00106-medium-trimleft/README.ja.md
+++ b/questions/00106-medium-trimleft/README.ja.md
@@ -9,4 +9,4 @@ type trimed = TrimLeft<' Hello World '> // expected to be 'Hello World '
```
-
関連する課題
+
関連する課題
diff --git a/questions/00106-medium-trimleft/README.md b/questions/00106-medium-trimleft/README.md
index 4be41dd4..a4254321 100644
--- a/questions/00106-medium-trimleft/README.md
+++ b/questions/00106-medium-trimleft/README.md
@@ -9,4 +9,4 @@ type trimed = TrimLeft<' Hello World '> // expected to be 'Hello World '
```
-
Related Challenges
+
Related Challenges
diff --git a/questions/00106-medium-trimleft/README.zh-CN.md b/questions/00106-medium-trimleft/README.zh-CN.md
index 7d122438..357a9427 100644
--- a/questions/00106-medium-trimleft/README.zh-CN.md
+++ b/questions/00106-medium-trimleft/README.zh-CN.md
@@ -8,4 +8,4 @@
type trimed = TrimLeft<' Hello World '> // 应推导出 'Hello World '
```
-
相关挑战
+
相关挑战
diff --git a/questions/00108-medium-trim/README.ja.md b/questions/00108-medium-trim/README.ja.md
index 2418106f..15ae02e9 100644
--- a/questions/00108-medium-trim/README.ja.md
+++ b/questions/00108-medium-trim/README.ja.md
@@ -9,4 +9,4 @@ type trimed = Trim<' Hello World '> // expected to be 'Hello World'
```
-
関連する課題
+
関連する課題
diff --git a/questions/00108-medium-trim/README.md b/questions/00108-medium-trim/README.md
index 49e4b66d..616c41e9 100644
--- a/questions/00108-medium-trim/README.md
+++ b/questions/00108-medium-trim/README.md
@@ -9,4 +9,4 @@ type trimmed = Trim<' Hello World '> // expected to be 'Hello World'
```
-
Related Challenges
+
Related Challenges
diff --git a/questions/00108-medium-trim/README.zh-CN.md b/questions/00108-medium-trim/README.zh-CN.md
index 88c99e15..1698be34 100644
--- a/questions/00108-medium-trim/README.zh-CN.md
+++ b/questions/00108-medium-trim/README.zh-CN.md
@@ -9,5 +9,5 @@ type trimed = Trim<' Hello World '> // expected to be 'Hello World'
```
-
相关挑战
+
相关挑战
diff --git a/questions/00114-hard-camelcase/README.ja.md b/questions/00114-hard-camelcase/README.ja.md
index 6884d71a..c3405b8c 100644
--- a/questions/00114-hard-camelcase/README.ja.md
+++ b/questions/00114-hard-camelcase/README.ja.md
@@ -10,4 +10,4 @@ type camelCase2 = CamelCase<'HELLO_WORLD_WITH_TYPES'> // expected to be same as
```
-
関連する課題
+
関連する課題
diff --git a/questions/00114-hard-camelcase/README.md b/questions/00114-hard-camelcase/README.md
index 2621c5d4..17f8ae2e 100644
--- a/questions/00114-hard-camelcase/README.md
+++ b/questions/00114-hard-camelcase/README.md
@@ -10,4 +10,4 @@ type camelCase2 = CamelCase<'HELLO_WORLD_WITH_TYPES'> // expected to be same as
```
-
Related Challenges
+
Related Challenges
diff --git a/questions/00213-hard-vue-basic-props/README.ja.md b/questions/00213-hard-vue-basic-props/README.ja.md
index 7d9896b0..2f38b876 100644
--- a/questions/00213-hard-vue-basic-props/README.ja.md
+++ b/questions/00213-hard-vue-basic-props/README.ja.md
@@ -41,4 +41,4 @@ type Props = { foo: boolean | number | string }
>Vue の `required`, `default`, そして 配列の props はこの問題において考慮されておりません.
-
関連する課題
\ No newline at end of file
+
関連する課題
diff --git a/questions/00213-hard-vue-basic-props/README.md b/questions/00213-hard-vue-basic-props/README.md
index e2daf6e8..0f8a9566 100644
--- a/questions/00213-hard-vue-basic-props/README.md
+++ b/questions/00213-hard-vue-basic-props/README.md
@@ -39,4 +39,4 @@ For more specified cases, check out the Test Cases section.
> `required`, `default`, and array props in Vue are not considered in this challenge.
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00223-hard-isany/README.ja.md b/questions/00223-hard-isany/README.ja.md
index 1b2535c8..61eb5fff 100644
--- a/questions/00223-hard-isany/README.ja.md
+++ b/questions/00223-hard-isany/README.ja.md
@@ -5,4 +5,4 @@
そこで、型`T`を受け取るユーティリティ型`IsAny`を書いてみましょう。`T`が`any`型であれば`true`を返し、そうでなければ`false`を返します。
-
関連する課題
+
関連する課題
diff --git a/questions/00223-hard-isany/README.md b/questions/00223-hard-isany/README.md
index 3a553195..12cbec72 100644
--- a/questions/00223-hard-isany/README.md
+++ b/questions/00223-hard-isany/README.md
@@ -5,4 +5,4 @@ Sometimes it's useful to detect if you have a value with `any` type. This is esp
So, let's write a utility type `IsAny`, which takes input type `T`. If `T` is `any`, return `true`, otherwise, return `false`.
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00462-extreme-currying-2/README.md b/questions/00462-extreme-currying-2/README.md
index 6b2337d3..d4d43e52 100644
--- a/questions/00462-extreme-currying-2/README.md
+++ b/questions/00462-extreme-currying-2/README.md
@@ -29,4 +29,4 @@ const eight = curriedAdd(2)(3)(4)
In this challenge, `DynamicParamsCurrying` may take a function with zero to multiple arguments, you need to correctly type it. The returned function may accept at least one argument. When all the arguments as satisfied, it should yield the return type of the original function correctly.
-
Related Challenges
+
Related Challenges
diff --git a/questions/00462-extreme-currying-2/README.zh-CN.md b/questions/00462-extreme-currying-2/README.zh-CN.md
index 390de252..a947433d 100644
--- a/questions/00462-extreme-currying-2/README.zh-CN.md
+++ b/questions/00462-extreme-currying-2/README.zh-CN.md
@@ -31,4 +31,4 @@ const eight = curriedAdd(2)(3)(4)
在此挑战中,curriedAdd函数每次可接受最少一个参数,但是所有参数个数总和及类型与原函数相同。分配完所有参数后,它应返回其结果。
-
相关挑战
+
相关挑战
diff --git a/questions/00472-hard-tuple-to-enum-object/README.ja.md b/questions/00472-hard-tuple-to-enum-object/README.ja.md
index 47283b2f..3fdbd374 100644
--- a/questions/00472-hard-tuple-to-enum-object/README.ja.md
+++ b/questions/00472-hard-tuple-to-enum-object/README.ja.md
@@ -26,4 +26,4 @@ Enum<["macOS", "Windows", "Linux"], true>
// -> { readonly MacOS: 0, readonly Windows: 1, readonly Linux: 2 }
```
-
関連する課題
+
関連する課題
diff --git a/questions/00472-hard-tuple-to-enum-object/README.md b/questions/00472-hard-tuple-to-enum-object/README.md
index ec2b4ee2..f59085ba 100644
--- a/questions/00472-hard-tuple-to-enum-object/README.md
+++ b/questions/00472-hard-tuple-to-enum-object/README.md
@@ -22,4 +22,4 @@ Enum<["macOS", "Windows", "Linux"], true>
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00517-extreme-multiply/README.md b/questions/00517-extreme-multiply/README.md
index f9a61a27..18abf87f 100644
--- a/questions/00517-extreme-multiply/README.md
+++ b/questions/00517-extreme-multiply/README.md
@@ -16,4 +16,4 @@ type T5 = Multiply<'43423', 321543n> // '13962361689'
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00533-easy-concat/README.ja.md b/questions/00533-easy-concat/README.ja.md
index 15e9146e..b7041ab3 100644
--- a/questions/00533-easy-concat/README.ja.md
+++ b/questions/00533-easy-concat/README.ja.md
@@ -8,4 +8,4 @@ JavaScript の`Array.concat`関数を型システムに実装します。この
type Result = Concat<[1], [2]>; // expected to be [1, 2]
```
-
関連する課題
+
関連する課題
diff --git a/questions/00533-easy-concat/README.ko.md b/questions/00533-easy-concat/README.ko.md
index fcf41f15..cff8b72d 100644
--- a/questions/00533-easy-concat/README.ko.md
+++ b/questions/00533-easy-concat/README.ko.md
@@ -9,4 +9,4 @@ type Result = Concat<[1], [2]> // expected to be [1, 2]
```
-
관련된 문제들
+
관련된 문제들
diff --git a/questions/00533-easy-concat/README.md b/questions/00533-easy-concat/README.md
index a94dbf97..7adc8ef2 100644
--- a/questions/00533-easy-concat/README.md
+++ b/questions/00533-easy-concat/README.md
@@ -9,4 +9,4 @@ type Result = Concat<[1], [2]> // expected to be [1, 2]
```
-
Related Challenges
+
Related Challenges
diff --git a/questions/00533-easy-concat/README.zh-CN.md b/questions/00533-easy-concat/README.zh-CN.md
index 8d5757a9..fea46730 100644
--- a/questions/00533-easy-concat/README.zh-CN.md
+++ b/questions/00533-easy-concat/README.zh-CN.md
@@ -10,4 +10,4 @@ type Result = Concat<[1], [2]> // expected to be [1, 2]
-
相关挑战
+
相关挑战
diff --git a/questions/00545-hard-printf/README.ja.md b/questions/00545-hard-printf/README.ja.md
index 416a1a14..08e38104 100644
--- a/questions/00545-hard-printf/README.ja.md
+++ b/questions/00545-hard-printf/README.ja.md
@@ -1,4 +1,4 @@
-printf

by null @BestMaster-YS
+printf

by null @Bestmain-YS
汎用的な`Format`を実装します。
diff --git a/questions/00545-hard-printf/README.md b/questions/00545-hard-printf/README.md
index ce6faec3..eb23e183 100644
--- a/questions/00545-hard-printf/README.md
+++ b/questions/00545-hard-printf/README.md
@@ -1,4 +1,4 @@
-printf

by null @BestMaster-YS
+printf

by null @Bestmain-YS
Implement `Format` generic.
@@ -12,4 +12,4 @@ type FormatCase4 = Format<"sd%abc"> // FormatCase4 : string
```
-
\ No newline at end of file
+
diff --git a/questions/00545-hard-printf/info.yml b/questions/00545-hard-printf/info.yml
index 474c5e07..b35cdff7 100644
--- a/questions/00545-hard-printf/info.yml
+++ b/questions/00545-hard-printf/info.yml
@@ -2,5 +2,5 @@ difficulty: hard
title: printf
tags: template-literal
author:
- github: BestMaster-YS
+ github: Bestmain-YS
name: null
diff --git a/questions/00610-medium-camelcase/README.md b/questions/00610-medium-camelcase/README.md
index 0f9c5fb5..4b83888f 100644
--- a/questions/00610-medium-camelcase/README.md
+++ b/questions/00610-medium-camelcase/README.md
@@ -3,4 +3,4 @@
`for-bar-baz` -> `forBarBaz`
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00612-medium-kebabcase/README.md b/questions/00612-medium-kebabcase/README.md
index 80dffb57..9353d235 100644
--- a/questions/00612-medium-kebabcase/README.md
+++ b/questions/00612-medium-kebabcase/README.md
@@ -3,4 +3,4 @@
`FooBarBaz` -> `foo-bar-baz`
-
Related Challenges
+
Related Challenges
diff --git a/questions/00651-hard-length-of-string-2/README.ja.md b/questions/00651-hard-length-of-string-2/README.ja.md
index a5b482da..adbacb66 100644
--- a/questions/00651-hard-length-of-string-2/README.ja.md
+++ b/questions/00651-hard-length-of-string-2/README.ja.md
@@ -8,4 +8,4 @@ type T0 = LengthOfString<'foo'>; // 3
この課題で実装する型は、数百文字の長さの文字列をサポートしなければなりません(通常の再帰的な文字列長の計算は、TS の再帰的な関数呼び出しの深さによって制限されています、つまり、45 文字程度までの文字列をサポートしています)。
-
関連する課題
+
関連する課題
diff --git a/questions/00651-hard-length-of-string-2/README.md b/questions/00651-hard-length-of-string-2/README.md
index 9115d9e4..7acd7e56 100644
--- a/questions/00651-hard-length-of-string-2/README.md
+++ b/questions/00651-hard-length-of-string-2/README.md
@@ -9,4 +9,4 @@ type T0 = LengthOfString<"foo"> // 3
The type must support strings several hundred characters long (the usual recursive calculation of the string length is limited by the depth of recursive function calls in TS, that is, it supports strings up to about 45 characters long).
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/00730-hard-union-to-tuple/README.md b/questions/00730-hard-union-to-tuple/README.md
index 52ea719c..4189cf4d 100644
--- a/questions/00730-hard-union-to-tuple/README.md
+++ b/questions/00730-hard-union-to-tuple/README.md
@@ -30,4 +30,4 @@ Equal, UnionToTuple<'a'>> // will always b
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/01042-medium-isnever/README.md b/questions/01042-medium-isnever/README.md
index b09ec7cf..392e0953 100644
--- a/questions/01042-medium-isnever/README.md
+++ b/questions/01042-medium-isnever/README.md
@@ -14,4 +14,4 @@ type E = IsNever // expected to be false
```
-
Related Challenges
+
Related Challenges
diff --git a/questions/01097-medium-isunion/README.md b/questions/01097-medium-isunion/README.md
index 8567d177..0f9831b0 100644
--- a/questions/01097-medium-isunion/README.md
+++ b/questions/01097-medium-isunion/README.md
@@ -11,4 +11,4 @@ For example:
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/02059-hard-drop-string/README.md b/questions/02059-hard-drop-string/README.md
index 7104513e..47022d06 100644
--- a/questions/02059-hard-drop-string/README.md
+++ b/questions/02059-hard-drop-string/README.md
@@ -9,4 +9,4 @@ type Butterfly = DropString<'foobar!', 'fb'> // 'ooar!'
```
-
Related Challenges
+
Related Challenges
diff --git a/questions/02070-medium-drop-char/README.md b/questions/02070-medium-drop-char/README.md
index 882aed11..4d8e2f15 100644
--- a/questions/02070-medium-drop-char/README.md
+++ b/questions/02070-medium-drop-char/README.md
@@ -9,4 +9,4 @@ type Butterfly = DropChar<' b u t t e r f l y ! ', ' '> // 'butterfly!'
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/02595-medium-pickbytype/README.md b/questions/02595-medium-pickbytype/README.md
index d36da8a6..0dc830b5 100644
--- a/questions/02595-medium-pickbytype/README.md
+++ b/questions/02595-medium-pickbytype/README.md
@@ -14,4 +14,4 @@ type OnlyBoolean = PickByType<{
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/02688-medium-startswith/README.md b/questions/02688-medium-startswith/README.md
index 74c9f27f..27c07ae7 100644
--- a/questions/02688-medium-startswith/README.md
+++ b/questions/02688-medium-startswith/README.md
@@ -11,4 +11,4 @@ type c = StartsWith<'abc', 'abcd'> // expected to be false
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/02693-medium-endswith/README.md b/questions/02693-medium-endswith/README.md
index c2381614..3132a563 100644
--- a/questions/02693-medium-endswith/README.md
+++ b/questions/02693-medium-endswith/README.md
@@ -3,4 +3,4 @@
Implement `EndsWith` which takes two exact string types and returns whether `T` ends with `U`
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/02852-medium-omitbytype/README.md b/questions/02852-medium-omitbytype/README.md
index ba03456d..3e1545b4 100644
--- a/questions/02852-medium-omitbytype/README.md
+++ b/questions/02852-medium-omitbytype/README.md
@@ -14,4 +14,4 @@ type OmitBoolean = OmitByType<{
```
-
Related Challenges
+
Related Challenges
diff --git a/questions/02949-hard-objectfromentries/README.md b/questions/02949-hard-objectfromentries/README.md
index 43ee14d5..386e9a9c 100644
--- a/questions/02949-hard-objectfromentries/README.md
+++ b/questions/02949-hard-objectfromentries/README.md
@@ -17,4 +17,4 @@ type result = ObjectFromEntries // expected to be Model
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/03057-easy-push/README.ko.md b/questions/03057-easy-push/README.ko.md
index 62069868..60477224 100644
--- a/questions/03057-easy-push/README.ko.md
+++ b/questions/03057-easy-push/README.ko.md
@@ -9,4 +9,4 @@ type Result = Push<[1, 2], '3'> // [1, 2, '3']
```
-
관련된 문제들
\ No newline at end of file
+
관련된 문제들
diff --git a/questions/03057-easy-push/README.md b/questions/03057-easy-push/README.md
index 428f9b47..1852ac65 100644
--- a/questions/03057-easy-push/README.md
+++ b/questions/03057-easy-push/README.md
@@ -9,4 +9,4 @@ type Result = Push<[1, 2], '3'> // [1, 2, '3']
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/03057-easy-push/README.zh-CN.md b/questions/03057-easy-push/README.zh-CN.md
index 0ebe40cf..62197fd2 100644
--- a/questions/03057-easy-push/README.zh-CN.md
+++ b/questions/03057-easy-push/README.zh-CN.md
@@ -9,4 +9,4 @@ type Result = Push<[1, 2], '3'> // [1, 2, '3']
```
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/03060-easy-unshift/README.ko.md b/questions/03060-easy-unshift/README.ko.md
index 4dfd4f5f..72d8dcae 100644
--- a/questions/03060-easy-unshift/README.ko.md
+++ b/questions/03060-easy-unshift/README.ko.md
@@ -9,4 +9,4 @@ type Result = Unshift<[1, 2], 0> // [0, 1, 2,]
```
-
관련된 문제들
\ No newline at end of file
+
관련된 문제들
diff --git a/questions/03060-easy-unshift/README.md b/questions/03060-easy-unshift/README.md
index eebb792d..8a47fc5d 100644
--- a/questions/03060-easy-unshift/README.md
+++ b/questions/03060-easy-unshift/README.md
@@ -9,4 +9,4 @@ type Result = Unshift<[1, 2], 0> // [0, 1, 2,]
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/03060-easy-unshift/README.zh-CN.md b/questions/03060-easy-unshift/README.zh-CN.md
index d1f2f448..4cd6174f 100644
--- a/questions/03060-easy-unshift/README.zh-CN.md
+++ b/questions/03060-easy-unshift/README.zh-CN.md
@@ -9,4 +9,4 @@ type Result = Unshift<[1, 2], 0> // [0, 1, 2,]
```
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/03062-medium-shift/README.md b/questions/03062-medium-shift/README.md
index a393a592..36585b9f 100644
--- a/questions/03062-medium-shift/README.md
+++ b/questions/03062-medium-shift/README.md
@@ -9,4 +9,4 @@ type Result = Shift<[3, 2, 1]> // [2, 1]
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/03188-medium-tuple-to-nested-object/README.md b/questions/03188-medium-tuple-to-nested-object/README.md
index ec3a9c0b..ba2062d7 100644
--- a/questions/03188-medium-tuple-to-nested-object/README.md
+++ b/questions/03188-medium-tuple-to-nested-object/README.md
@@ -9,4 +9,4 @@ type c = TupleToNestedObject<[], boolean> // boolean. if the tuple is empty, jus
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/03196-medium-flip-arguments/README.md b/questions/03196-medium-flip-arguments/README.md
index cb05ced0..2638ab0b 100644
--- a/questions/03196-medium-flip-arguments/README.md
+++ b/questions/03196-medium-flip-arguments/README.md
@@ -12,4 +12,4 @@ type Flipped = FlipArguments<(arg0: string, arg1: number, arg2: boolean) => void
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/03243-medium-flattendepth/README.md b/questions/03243-medium-flattendepth/README.md
index b2e65a6e..6d632493 100644
--- a/questions/03243-medium-flattendepth/README.md
+++ b/questions/03243-medium-flattendepth/README.md
@@ -12,4 +12,4 @@ type b = FlattenDepth<[1, 2, [3, 4], [[[5]]]]> // [1, 2, 3, 4, [[5]]]. Depth def
If the depth is provided, it's guaranteed to be positive integer.
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/04484-medium-istuple/README.md b/questions/04484-medium-istuple/README.md
index 95806319..8f8de773 100644
--- a/questions/04484-medium-istuple/README.md
+++ b/questions/04484-medium-istuple/README.md
@@ -11,4 +11,4 @@ type case3 = IsTuple // false
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/04803-medium-trim-right/README.md b/questions/04803-medium-trim-right/README.md
index 6bff705b..61d17406 100644
--- a/questions/04803-medium-trim-right/README.md
+++ b/questions/04803-medium-trim-right/README.md
@@ -9,4 +9,4 @@ type Trimed = TrimRight<' Hello World '> // expected to be ' Hello World'
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/questions/04803-medium-trim-right/README.zh-CN.md b/questions/04803-medium-trim-right/README.zh-CN.md
index 5bbc5157..e4a33a34 100644
--- a/questions/04803-medium-trim-right/README.zh-CN.md
+++ b/questions/04803-medium-trim-right/README.zh-CN.md
@@ -9,4 +9,4 @@
type Trimed = TrimLeft<' Hello World '> // 应推导出 ' Hello World'
```
-
相关挑战
\ No newline at end of file
+
相关挑战
diff --git a/questions/05181-hard-mutable-keys/README.md b/questions/05181-hard-mutable-keys/README.md
index 36539b5e..779c79fe 100644
--- a/questions/05181-hard-mutable-keys/README.md
+++ b/questions/05181-hard-mutable-keys/README.md
@@ -10,4 +10,4 @@ type Keys = MutableKeys<{ readonly foo: string; bar: number }>;
```
-
Related Challenges
\ No newline at end of file
+
Related Challenges
diff --git a/scripts/actions/issue-pr.ts b/scripts/actions/issue-pr.ts
index 9e6bdd0f..ed6bdb5c 100644
--- a/scripts/actions/issue-pr.ts
+++ b/scripts/actions/issue-pr.ts
@@ -143,7 +143,7 @@ const action: Action = async(github, context, core) => {
await PushCommit(github, {
owner: context.repo.owner,
repo: context.repo.repo,
- base: 'master',
+ base: 'main',
head: `pulls/${no}`,
changes: {
files,
@@ -185,7 +185,7 @@ const action: Action = async(github, context, core) => {
const { data: pr } = await github.rest.pulls.create({
owner: context.repo.owner,
repo: context.repo.repo,
- base: 'master',
+ base: 'main',
head: `pulls/${no}`,
title: `#${no} - ${info.title}`,
body: `This is an auto-generated PR that auto reflect on #${no}, please go to #${no} for discussion or making changes.\n\nCloses #${no}`,
diff --git a/scripts/build.ts b/scripts/build.ts
index 44a76cc2..8f83f0d1 100644
--- a/scripts/build.ts
+++ b/scripts/build.ts
@@ -11,7 +11,7 @@ export async function build() {
// redirect homepage to github repo
supportedLocales.filter(locale => locale !== defaultLocale).forEach((locale) => {
- redirects.push([`/${locale}`, `${REPO}/blob/master/README.${locale}.md`, 302])
+ redirects.push([`/${locale}`, `${REPO}/blob/main/README.${locale}.md`, 302])
})
supportedLocales.forEach((locale) => {
diff --git a/scripts/toUrl.ts b/scripts/toUrl.ts
index 64ad88bc..0422d69c 100644
--- a/scripts/toUrl.ts
+++ b/scripts/toUrl.ts
@@ -21,7 +21,7 @@ export function toSolutionsFull(no: number) {
}
export function toQuizREADME(quiz: Quiz, locale?: string, absolute = false) {
- const prefix = absolute ? `${REPO}/blob/master` : '.'
+ const prefix = absolute ? `${REPO}/blob/main` : '.'
return locale && locale !== defaultLocale && quiz.readme[locale]
? `${prefix}/questions/${quiz.path}/README.${locale}.md`
: `${prefix}/questions/${quiz.path}/README.md`
@@ -29,7 +29,7 @@ export function toQuizREADME(quiz: Quiz, locale?: string, absolute = false) {
export function toRawREADME(quiz: Quiz, locale?: string) {
const provider = 'https://cdn.jsdelivr.net/gh/type-challenges/type-challenges'
- // const provider = 'https://raw.githubusercontent.com/type-challenges/type-challenges/master'
+ // const provider = 'https://raw.githubusercontent.com/type-challenges/type-challenges/main'
return locale && locale !== defaultLocale && quiz.readme[locale]
? `${provider}/questions/${quiz.path}/README.${locale}.md`
: `${provider}/questions/${quiz.path}/README.md`