#if 0
level 1

4 delete	middle block	nopad
1 delete	middle block	pad
1 delete	last block	nopad
1 delete	last block	pad
1 insert	middle block	nopad
1 insert	middle block	equalpad
1 insert	middle block	smallpad
1 insert	middle block	smallpad+1
1 insert	middle block	biggerpad
1 insert	last block	X
1 set	middle block	smaller	nopad
1 set	middle block	smaller	pad
1 set	last block	smaller	nopad
1 set	last block	smaller	pad
1 set	middle block	bigger	nopad
1 set	middle block	bigger	equalpad
1 set	middle block	bigger	smallpad
1 set	middle block	bigger	smallpad+1
1 set	middle block	bigger	biggerpad
1 set	last block	bigger	nopad
1 set	middle block	equal	X
2 set	last block	equal	X

level 2

FLAC__bool FLAC__metadata_chain_write()

1	newsize==oldsize
	newsize>oldsize
b		no use_padding
c		use_padding, last block is not padding
g		use_padding, last block is padding of insufficient length
h		use_padding, last block is padding, but padding header straddles border (can't do it)
j		use_padding, last block is padding of exact sufficient length (padding totally consumed)
i		use_padding, last block is padding of abundant length (padding is reduced)
	newsize<oldsize
a		no use_padding
d		use_padding, last block is not padding, delta is < 4
e		use_padding, last block is not padding, delta is >= 4
f		use_padding, last block is padding

void FLAC__metadata_chain_merge_padding(FLAC__Metadata_Chain *chain);
void FLAC__metadata_chain_sort_padding(FLAC__Metadata_Chain *chain);

S:34	A:1234
a:shrink A->30	write nopad
S:34	A:30
b:grow A->32	write nopad
S:34	A:32
c:grow A->40	write pad
S:34	A:40
d:shrink A->37	write pad
S:34	A:37
e:shrink A->33	write pad
S:34	A:33	P:0
f:shrink A->20	write pad
S:34	A:20	P:13
g:grow A->40	write pad
S:34	A:40	P:13
h:grow A->54	write pad
S:34	A:54	P:13
i:grow A->60	write pad
S:34	A:60	P:7
j:grow A->71	write pad
S:34	A:71
#endif
