1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-07-17 01:42:45 +02:00

stop using snapshots

This commit is contained in:
CI
2020-10-06 09:23:09 +11:00
committed by Jesse Duffield
parent ae352a5d8c
commit a9049b4a82
282 changed files with 575 additions and 533 deletions

7
.gitignore vendored
View File

@ -26,5 +26,8 @@ lazygit
!.github/
test/git_server/data
test/integration_test/
test/integration_test_config/
test/integration/*/actual/
test/integration/*/used_config/
# these sample hooks waste too space space
test/integration/*/expected/.git_keep/hooks/
!.git_keep/

View File

@ -76,7 +76,7 @@ func CopyFile(src, dst string) (err error) {
}
// CopyDir recursively copies a directory tree, attempting to preserve permissions.
// Source directory must exist, destination directory must *not* exist.
// Source directory must exist. If destination already exists we'll clobber it.
// Symlinks are ignored and skipped.
func CopyDir(src string, dst string) (err error) {
src = filepath.Clean(src)
@ -95,7 +95,10 @@ func CopyDir(src string, dst string) (err error) {
return
}
if err == nil {
return fmt.Errorf("destination already exists")
// it exists so let's remove it
if err := os.RemoveAll(dst); err != nil {
return err
}
}
err = os.MkdirAll(dst, si.Mode())

View File

@ -81,13 +81,45 @@ func tests() []integrationTest {
}
}
func generateSnapshot(t *testing.T, actualDir string) string {
func generateSnapshot(t *testing.T, dir string) string {
osCommand := oscommands.NewDummyOSCommand()
cmd := fmt.Sprintf(`bash -c "cd %s && git status; cat ./*; git log --pretty=%%B -p"`, actualDir)
// need to copy from current directory to
_, err := os.Stat(filepath.Join(dir, ".git"))
if err != nil {
return "git directory not found"
}
snapshot := ""
statusCmd := fmt.Sprintf(`git -C %s status`, dir)
statusCmdOutput, err := osCommand.RunCommandWithOutput(statusCmd)
assert.NoError(t, err)
snapshot += statusCmdOutput + "\n"
logCmd := fmt.Sprintf(`git -C %s log --pretty=%%B -p -1`, dir)
logCmdOutput, err := osCommand.RunCommandWithOutput(logCmd)
assert.NoError(t, err)
snapshot += logCmdOutput + "\n"
err = filepath.Walk(dir, func(path string, f os.FileInfo, err error) error {
assert.NoError(t, err)
if f.IsDir() {
if f.Name() == ".git" {
return filepath.SkipDir
}
return nil
}
bytes, err := ioutil.ReadFile(path)
assert.NoError(t, err)
snapshot += string(bytes) + "\n"
return nil
})
snapshot, err := osCommand.RunCommandWithOutput(cmd)
assert.NoError(t, err)
return snapshot
@ -160,23 +192,46 @@ func Test(t *testing.T) {
testPath := filepath.Join(rootDir, "test", "integration", test.name)
actualDir := filepath.Join(testPath, "actual")
expectedDir := filepath.Join(testPath, "expected")
t.Logf("testPath: %s, actualDir: %s, expectedDir: %s", testPath, actualDir, expectedDir)
findOrCreateDir(testPath)
prepareIntegrationTestDir(testPath)
prepareIntegrationTestDir(actualDir)
err := createFixture(rootDir, test.fixture, actualDir)
assert.NoError(t, err)
runLazygit(t, testPath, rootDir, record, speed)
actual := generateSnapshot(t, actualDir)
if updateSnapshots {
err = oscommands.CopyDir(actualDir, expectedDir)
assert.NoError(t, err)
}
expected := generateSnapshot(t, expectedDir)
actual := generateSnapshot(t, actualDir)
expected := ""
func() {
// git refuses to track .git folders in subdirectories so we need to rename it
// to git_keep after running a test
defer func() {
err = os.Rename(
filepath.Join(expectedDir, ".git"),
filepath.Join(expectedDir, ".git_keep"),
)
assert.NoError(t, err)
}()
// ignoring this error because we might not have a .git_keep file here yet.
_ = os.Rename(
filepath.Join(expectedDir, ".git_keep"),
filepath.Join(expectedDir, ".git"),
)
expected = generateSnapshot(t, expectedDir)
}()
if expected == actual {
t.Logf("%s: success at speed %d\n", test.name, speed)
@ -268,7 +323,7 @@ func runLazygit(t *testing.T, testPath string, rootDir string, record bool, spee
}
// if we're on CI we'll need to use a PTY. We can work that out by seeing if the 'TERM' env is defined.
if runInParallel() {
if runInPTY() {
cmd.Env = append(cmd.Env, "TERM=xterm")
f, err := pty.StartWithSize(cmd, &pty.Winsize{Rows: 100, Cols: 100})
@ -286,17 +341,19 @@ func runLazygit(t *testing.T, testPath string, rootDir string, record bool, spee
}
func runInParallel() bool {
return os.Getenv("PARALLEL") != "" || os.Getenv("TERM") == ""
return os.Getenv("PARALLEL") != ""
}
func prepareIntegrationTestDir(testPath string) {
path := filepath.Join(testPath, "actual")
func runInPTY() bool {
return runInParallel() || os.Getenv("TERM") == ""
}
func prepareIntegrationTestDir(actualDir string) {
// remove contents of integration test directory
dir, err := ioutil.ReadDir(path)
dir, err := ioutil.ReadDir(actualDir)
if err != nil {
if os.IsNotExist(err) {
err = os.Mkdir(path, 0777)
err = os.Mkdir(actualDir, 0777)
if err != nil {
panic(err)
}
@ -305,6 +362,6 @@ func prepareIntegrationTestDir(testPath string) {
}
}
for _, d := range dir {
os.RemoveAll(filepath.Join(path, d.Name()))
os.RemoveAll(filepath.Join(actualDir, d.Name()))
}
}

View File

@ -0,0 +1 @@
my commit

View File

@ -0,0 +1 @@
ref: refs/heads/master

View File

@ -0,0 +1,10 @@
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[user]
email = CI@example.com
name = CI

View File

@ -0,0 +1 @@
Unnamed repository; edit this file 'description' to name the repository.

Binary file not shown.

View File

@ -0,0 +1,7 @@
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
.DS_Store

View File

@ -0,0 +1,5 @@
0000000000000000000000000000000000000000 f4473317f8385f84b8054f3e9e9895870aa339bb CI <CI@example.com> 1601981250 +1100 commit (initial): myfile1
f4473317f8385f84b8054f3e9e9895870aa339bb 60100545975af038486a0265a786b78c090faa4c CI <CI@example.com> 1601981250 +1100 commit: myfile2
60100545975af038486a0265a786b78c090faa4c 7c8c3a30f773b8d25cf9b5f5eccfe1b4cf823069 CI <CI@example.com> 1601981250 +1100 commit: myfile3
7c8c3a30f773b8d25cf9b5f5eccfe1b4cf823069 dcb4d7ccb176a17a6ddc2e1a402a28f055947393 CI <CI@example.com> 1601981250 +1100 commit: myfile4
dcb4d7ccb176a17a6ddc2e1a402a28f055947393 459260de735f85c64517eef30e6a2d2236f3f920 CI <CI@example.com> 1601981254 +1100 commit: my commit

View File

@ -0,0 +1,5 @@
0000000000000000000000000000000000000000 f4473317f8385f84b8054f3e9e9895870aa339bb CI <CI@example.com> 1601981250 +1100 commit (initial): myfile1
f4473317f8385f84b8054f3e9e9895870aa339bb 60100545975af038486a0265a786b78c090faa4c CI <CI@example.com> 1601981250 +1100 commit: myfile2
60100545975af038486a0265a786b78c090faa4c 7c8c3a30f773b8d25cf9b5f5eccfe1b4cf823069 CI <CI@example.com> 1601981250 +1100 commit: myfile3
7c8c3a30f773b8d25cf9b5f5eccfe1b4cf823069 dcb4d7ccb176a17a6ddc2e1a402a28f055947393 CI <CI@example.com> 1601981250 +1100 commit: myfile4
dcb4d7ccb176a17a6ddc2e1a402a28f055947393 459260de735f85c64517eef30e6a2d2236f3f920 CI <CI@example.com> 1601981254 +1100 commit: my commit

View File

@ -0,0 +1,2 @@
x��M
�0@a�9E���d�7 "t�c$� �-%������[�imm�ٟ�.bK"�%��<�(G��Z#��b�����c4[��խz��0i�4��!x%a��!'(��k5���n��^��.�Ҷ�\���,F@���3"�9�1��On�W��8�v�9w

View File

@ -0,0 +1,2 @@
x��M
�0F]�� 2��M@D��ǘN3X0��z{sW<�O�Z�f1�S;J�Ì� E\�;���*/��@hv8H�+��|�W� ��S`G�"�'�s"� �����=�Î���ӽ|���r���,�H&�3��鴟j�O�ԯ������9�

View File

@ -0,0 +1 @@
459260de735f85c64517eef30e6a2d2236f3f920

View File

@ -0,0 +1 @@
test1

View File

@ -0,0 +1 @@
test2

View File

@ -0,0 +1 @@
test3

View File

@ -0,0 +1 @@
test4

View File

@ -0,0 +1 @@
test5

View File

@ -1,57 +0,0 @@
On branch master
nothing to commit, working tree clean
test1
test2
test3
test4
test5
my commit
diff --git a/myfile5 b/myfile5
new file mode 100644
index 0000000..4f346f1
--- /dev/null
+++ b/myfile5
@@ -0,0 +1 @@
+test5
myfile4
diff --git a/myfile4 b/myfile4
new file mode 100644
index 0000000..d234c5e
--- /dev/null
+++ b/myfile4
@@ -0,0 +1 @@
+test4
myfile3
diff --git a/myfile3 b/myfile3
new file mode 100644
index 0000000..df6b0d2
--- /dev/null
+++ b/myfile3
@@ -0,0 +1 @@
+test3
myfile2
diff --git a/myfile2 b/myfile2
new file mode 100644
index 0000000..180cf83
--- /dev/null
+++ b/myfile2
@@ -0,0 +1 @@
+test2
myfile1
diff --git a/myfile1 b/myfile1
new file mode 100644
index 0000000..a5bce3f
--- /dev/null
+++ b/myfile1
@@ -0,0 +1 @@
+test1

View File

@ -0,0 +1,20 @@
Merge branch 'base_branch' into other_branch
# Conflicts:
# file
#
# It looks like you may be committing a merge.
# If this is not correct, please remove the file
# /Users/jesseduffieldduffield/go/src/github.com/jesseduffield/lazygit/test/integration/mergeConflicts/actual/.git/MERGE_HEAD
# and try again.
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# On branch other_branch
# All conflicts fixed but you are still merging.
#
# Changes to be committed:
# modified: file
#

View File

@ -0,0 +1 @@
ref: refs/heads/other_branch

View File

@ -0,0 +1 @@
659aa732ccda1aaa1cd6564fdb93bf0445b5115a

View File

@ -0,0 +1,10 @@
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[user]
email = CI@example.com
name = CI

View File

@ -0,0 +1 @@
Unnamed repository; edit this file 'description' to name the repository.

View File

@ -0,0 +1,7 @@
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
.DS_Store

View File

@ -0,0 +1,34 @@
0000000000000000000000000000000000000000 705e4e70fae7dd1ea607b6ad0727bed681fa3de1 CI <CI@example.com> 1601981290 +1100 commit (initial): first commit
705e4e70fae7dd1ea607b6ad0727bed681fa3de1 705e4e70fae7dd1ea607b6ad0727bed681fa3de1 CI <CI@example.com> 1601981290 +1100 checkout: moving from master to feature/cherry-picking
705e4e70fae7dd1ea607b6ad0727bed681fa3de1 02caf2708fbff792572b0c30efaeddd214525c94 CI <CI@example.com> 1601981290 +1100 commit: first commit freshman year
02caf2708fbff792572b0c30efaeddd214525c94 f5794ed7a2233f8a01fea032de77d2bc6a02aaec CI <CI@example.com> 1601981290 +1100 commit: second commit subway eat fresh
f5794ed7a2233f8a01fea032de77d2bc6a02aaec 4d81feb29b83b1a26754d0f480427a13dce491f4 CI <CI@example.com> 1601981290 +1100 commit: third commit fresh
4d81feb29b83b1a26754d0f480427a13dce491f4 4e3f39dbce8ac07b560685d22d761138954a864a CI <CI@example.com> 1601981290 +1100 commit: fourth commit cool
4e3f39dbce8ac07b560685d22d761138954a864a 223a2caff009cc142bfa9b5889963a75c8004e8a CI <CI@example.com> 1601981290 +1100 commit: fifth commit nice
223a2caff009cc142bfa9b5889963a75c8004e8a b26567e4fd73c518dd6531825d81a389fa49fe03 CI <CI@example.com> 1601981290 +1100 commit: sixth commit haha
b26567e4fd73c518dd6531825d81a389fa49fe03 bfe07eeabbfcde2e7d6856918dd494c703864b20 CI <CI@example.com> 1601981290 +1100 commit: seventh commit yeah
bfe07eeabbfcde2e7d6856918dd494c703864b20 1bbb146d9ce5c8ae1d34b7bc63fe7288adc0c26b CI <CI@example.com> 1601981290 +1100 commit: eighth commit woo
1bbb146d9ce5c8ae1d34b7bc63fe7288adc0c26b 1bbb146d9ce5c8ae1d34b7bc63fe7288adc0c26b CI <CI@example.com> 1601981290 +1100 checkout: moving from feature/cherry-picking to develop
1bbb146d9ce5c8ae1d34b7bc63fe7288adc0c26b 27bff1745d1ab39754071c9b225971867ea2a8a8 CI <CI@example.com> 1601981290 +1100 commit: first commit on develop
27bff1745d1ab39754071c9b225971867ea2a8a8 705e4e70fae7dd1ea607b6ad0727bed681fa3de1 CI <CI@example.com> 1601981290 +1100 checkout: moving from develop to master
705e4e70fae7dd1ea607b6ad0727bed681fa3de1 07392b739784503a325278fedf5251ecb7c3bca9 CI <CI@example.com> 1601981290 +1100 commit: first commit on master
07392b739784503a325278fedf5251ecb7c3bca9 27bff1745d1ab39754071c9b225971867ea2a8a8 CI <CI@example.com> 1601981290 +1100 checkout: moving from master to develop
27bff1745d1ab39754071c9b225971867ea2a8a8 6573f823441ea560245f56e735d7cbc972607341 CI <CI@example.com> 1601981290 +1100 commit: second commit on develop
6573f823441ea560245f56e735d7cbc972607341 07392b739784503a325278fedf5251ecb7c3bca9 CI <CI@example.com> 1601981290 +1100 checkout: moving from develop to master
07392b739784503a325278fedf5251ecb7c3bca9 a2c097a7f46ce0bc1f1e5a17b280a574f34d4a21 CI <CI@example.com> 1601981290 +1100 commit: second commit on master
a2c097a7f46ce0bc1f1e5a17b280a574f34d4a21 6573f823441ea560245f56e735d7cbc972607341 CI <CI@example.com> 1601981290 +1100 checkout: moving from master to develop
6573f823441ea560245f56e735d7cbc972607341 de8c7134958792e1bff9b33cca090287def37f7e CI <CI@example.com> 1601981290 +1100 commit: third commit on develop
de8c7134958792e1bff9b33cca090287def37f7e a2c097a7f46ce0bc1f1e5a17b280a574f34d4a21 CI <CI@example.com> 1601981290 +1100 checkout: moving from develop to master
a2c097a7f46ce0bc1f1e5a17b280a574f34d4a21 d09f332ddbdbb1d516ca99da33b23f987e4c13c3 CI <CI@example.com> 1601981290 +1100 commit: third commit on master
d09f332ddbdbb1d516ca99da33b23f987e4c13c3 de8c7134958792e1bff9b33cca090287def37f7e CI <CI@example.com> 1601981290 +1100 checkout: moving from master to develop
de8c7134958792e1bff9b33cca090287def37f7e 149c4365ab13dfb2ef4dd1e2c1eec0f3b6be2ed9 CI <CI@example.com> 1601981290 +1100 commit: fourth commit on develop
149c4365ab13dfb2ef4dd1e2c1eec0f3b6be2ed9 d09f332ddbdbb1d516ca99da33b23f987e4c13c3 CI <CI@example.com> 1601981290 +1100 checkout: moving from develop to master
d09f332ddbdbb1d516ca99da33b23f987e4c13c3 e217a1e8fe2e038fdc59202dee120f081ecf458f CI <CI@example.com> 1601981290 +1100 commit: fourth commit on master
e217a1e8fe2e038fdc59202dee120f081ecf458f e217a1e8fe2e038fdc59202dee120f081ecf458f CI <CI@example.com> 1601981290 +1100 checkout: moving from master to base_branch
e217a1e8fe2e038fdc59202dee120f081ecf458f 8580d8908b1bfc6d71971e73812effa15c68ecf3 CI <CI@example.com> 1601981290 +1100 commit: file
8580d8908b1bfc6d71971e73812effa15c68ecf3 8580d8908b1bfc6d71971e73812effa15c68ecf3 CI <CI@example.com> 1601981290 +1100 checkout: moving from base_branch to other_branch
8580d8908b1bfc6d71971e73812effa15c68ecf3 8580d8908b1bfc6d71971e73812effa15c68ecf3 CI <CI@example.com> 1601981290 +1100 checkout: moving from other_branch to base_branch
8580d8908b1bfc6d71971e73812effa15c68ecf3 4a5f9db9c8d46ac099de054e42e17a157ee3909b CI <CI@example.com> 1601981290 +1100 commit: file changed
4a5f9db9c8d46ac099de054e42e17a157ee3909b 8580d8908b1bfc6d71971e73812effa15c68ecf3 CI <CI@example.com> 1601981290 +1100 checkout: moving from base_branch to other_branch
8580d8908b1bfc6d71971e73812effa15c68ecf3 659aa732ccda1aaa1cd6564fdb93bf0445b5115a CI <CI@example.com> 1601981293 +1100 commit: asd
659aa732ccda1aaa1cd6564fdb93bf0445b5115a ed21fe1044b8600683ec6c2abbf86195a4d55461 CI <CI@example.com> 1601981298 +1100 commit (merge): Merge branch 'base_branch' into other_branch

View File

@ -0,0 +1,3 @@
0000000000000000000000000000000000000000 e217a1e8fe2e038fdc59202dee120f081ecf458f CI <CI@example.com> 1601981290 +1100 branch: Created from HEAD
e217a1e8fe2e038fdc59202dee120f081ecf458f 8580d8908b1bfc6d71971e73812effa15c68ecf3 CI <CI@example.com> 1601981290 +1100 commit: file
8580d8908b1bfc6d71971e73812effa15c68ecf3 4a5f9db9c8d46ac099de054e42e17a157ee3909b CI <CI@example.com> 1601981290 +1100 commit: file changed

View File

@ -0,0 +1,5 @@
0000000000000000000000000000000000000000 1bbb146d9ce5c8ae1d34b7bc63fe7288adc0c26b CI <CI@example.com> 1601981290 +1100 branch: Created from HEAD
1bbb146d9ce5c8ae1d34b7bc63fe7288adc0c26b 27bff1745d1ab39754071c9b225971867ea2a8a8 CI <CI@example.com> 1601981290 +1100 commit: first commit on develop
27bff1745d1ab39754071c9b225971867ea2a8a8 6573f823441ea560245f56e735d7cbc972607341 CI <CI@example.com> 1601981290 +1100 commit: second commit on develop
6573f823441ea560245f56e735d7cbc972607341 de8c7134958792e1bff9b33cca090287def37f7e CI <CI@example.com> 1601981290 +1100 commit: third commit on develop
de8c7134958792e1bff9b33cca090287def37f7e 149c4365ab13dfb2ef4dd1e2c1eec0f3b6be2ed9 CI <CI@example.com> 1601981290 +1100 commit: fourth commit on develop

View File

@ -0,0 +1,9 @@
0000000000000000000000000000000000000000 705e4e70fae7dd1ea607b6ad0727bed681fa3de1 CI <CI@example.com> 1601981290 +1100 branch: Created from HEAD
705e4e70fae7dd1ea607b6ad0727bed681fa3de1 02caf2708fbff792572b0c30efaeddd214525c94 CI <CI@example.com> 1601981290 +1100 commit: first commit freshman year
02caf2708fbff792572b0c30efaeddd214525c94 f5794ed7a2233f8a01fea032de77d2bc6a02aaec CI <CI@example.com> 1601981290 +1100 commit: second commit subway eat fresh
f5794ed7a2233f8a01fea032de77d2bc6a02aaec 4d81feb29b83b1a26754d0f480427a13dce491f4 CI <CI@example.com> 1601981290 +1100 commit: third commit fresh
4d81feb29b83b1a26754d0f480427a13dce491f4 4e3f39dbce8ac07b560685d22d761138954a864a CI <CI@example.com> 1601981290 +1100 commit: fourth commit cool
4e3f39dbce8ac07b560685d22d761138954a864a 223a2caff009cc142bfa9b5889963a75c8004e8a CI <CI@example.com> 1601981290 +1100 commit: fifth commit nice
223a2caff009cc142bfa9b5889963a75c8004e8a b26567e4fd73c518dd6531825d81a389fa49fe03 CI <CI@example.com> 1601981290 +1100 commit: sixth commit haha
b26567e4fd73c518dd6531825d81a389fa49fe03 bfe07eeabbfcde2e7d6856918dd494c703864b20 CI <CI@example.com> 1601981290 +1100 commit: seventh commit yeah
bfe07eeabbfcde2e7d6856918dd494c703864b20 1bbb146d9ce5c8ae1d34b7bc63fe7288adc0c26b CI <CI@example.com> 1601981290 +1100 commit: eighth commit woo

View File

@ -0,0 +1,5 @@
0000000000000000000000000000000000000000 705e4e70fae7dd1ea607b6ad0727bed681fa3de1 CI <CI@example.com> 1601981290 +1100 commit (initial): first commit
705e4e70fae7dd1ea607b6ad0727bed681fa3de1 07392b739784503a325278fedf5251ecb7c3bca9 CI <CI@example.com> 1601981290 +1100 commit: first commit on master
07392b739784503a325278fedf5251ecb7c3bca9 a2c097a7f46ce0bc1f1e5a17b280a574f34d4a21 CI <CI@example.com> 1601981290 +1100 commit: second commit on master
a2c097a7f46ce0bc1f1e5a17b280a574f34d4a21 d09f332ddbdbb1d516ca99da33b23f987e4c13c3 CI <CI@example.com> 1601981290 +1100 commit: third commit on master
d09f332ddbdbb1d516ca99da33b23f987e4c13c3 e217a1e8fe2e038fdc59202dee120f081ecf458f CI <CI@example.com> 1601981290 +1100 commit: fourth commit on master

View File

@ -0,0 +1,3 @@
0000000000000000000000000000000000000000 8580d8908b1bfc6d71971e73812effa15c68ecf3 CI <CI@example.com> 1601981290 +1100 branch: Created from HEAD
8580d8908b1bfc6d71971e73812effa15c68ecf3 659aa732ccda1aaa1cd6564fdb93bf0445b5115a CI <CI@example.com> 1601981293 +1100 commit: asd
659aa732ccda1aaa1cd6564fdb93bf0445b5115a ed21fe1044b8600683ec6c2abbf86195a4d55461 CI <CI@example.com> 1601981298 +1100 commit (merge): Merge branch 'base_branch' into other_branch

View File

@ -0,0 +1,3 @@
x���
�0=�+�.�nZ�D������
�J��o��:��ĵ�k#+ݮU�,bD�}o{p��u��\�Ь:��V�y>�����) ԱN{��$k� F_mY+M3�������

View File

@ -0,0 +1,5 @@
x��K
�0@]��d&M& �]��L�`M)=�/����ܖ��A�9�M�����9%�c��5Z
��UK�l�Z�&��
:��R�E����r _� &;<��Q�W����q��'.�CN�- F
�t@8!���S]�ԕ�os�����5�<�>'

View File

@ -0,0 +1,3 @@
x��K
�0@]��$��� �]��db �C�����>ރ'۲�
0�K;T��B�2�'b�T�Ԙ4��U�w$Tԙ=�6��m�h9c�

View File

@ -0,0 +1 @@
x��� �0C�v�L��\�j�V�W��=�������M<�i�f.���PU�M�HT��3T�`Q���9�"�^��h�d[������i+B��;�~�/ Y:/��<P�

View File

@ -0,0 +1,2 @@
x��K
�0@]��d&I���c���`�R�x| ^���=x�M�}Kt�VU�QU��%h��MX�y)I$�*�1��W��0�q��;!..��c����]��BT��8~m��B?�����iy詶��r"��D�f��Ԧ�橵�� � �o}��|+@�

View File

@ -0,0 +1,3 @@
x��A
�0Fa�9E��̌M3"BW=F������D���n���uY�����v� i�Z
%%X@�`��$i2�}?Y�Tbt[��n�11�B@W�%��P%e���.}�s��0��0>�M���%���sOl�b���D���T����{�9�

View File

@ -0,0 +1,2 @@
x��M
�0�]��d&i�@D���H�SLS�߀p��=��R�

View File

@ -0,0 +1,4 @@
x��K
�0@]��d&i~ "t�1&Ʉ
ƖEoo� �}�/ϭ];ht���@A��k�<���&$R��S��H�K�Ѩ�W�wH�Y�e�śl)�⬡�m �&��C��F��O�
����,on�Myn' �鈰'BTݦ�������� ~|�'�� >�

View File

@ -0,0 +1,4 @@
x��M
�0�a�9����@D��ǘ�Z0��߂p��>���ֵ��t�M4��%84�D�]�D��O�����6�\��M�XgL�C�> N�
�c
���.�bƚ���5F��]>\��\�Vo@)E� �L����8���\�em3�lO��:���-?/

View File

@ -0,0 +1 @@
x��� �0C����?�3�ƵV�=iO��=�������,�8tW��@h*��&R$j�*y��ʑs-ܜ��8v)��u㧱��V�H������"��

Some files were not shown because too many files have changed in this diff Show More