Checking that no-one is using this disk right now ... OK

Disk <removed>: 50 MiB, 52428800 bytes, 102400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / <removed> bytes

>>> Script header accepted.
>>> Script header accepted.
>>> Script header accepted.
>>> Created a new <removed>.
<removed>1: Created a new <removed>.
<removed>2: Created a new <removed>.
<removed>3: Created a new <removed>.
<removed>4: Created a new <removed>.
<removed>5: Done.

New situation:
Disklabel type: gpt
Disk identifier: <removed>

Device             Start    End Sectors Size Type
<removed>1   8192  14335    6144   3M Linux filesystem
<removed>2   2048   8191    6144   3M Linux filesystem
<removed>3  20480 102366   81887  40M Linux filesystem
<removed>4  14336  20479    6144   3M Linux filesystem

Partition table entries are not in disk order.

The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
Disk <removed>: 50 MiB, 52428800 bytes, 102400 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / <removed> bytes
Disklabel type: gpt
Disk identifier: <removed>

Device             Start    End Sectors Size Type
<removed>1   2048   8191    6144   3M Linux filesystem
<removed>2   8192  14335    6144   3M Linux filesystem
<removed>3  14336  20479    6144   3M Linux filesystem
<removed>4  20480 102366   81887  40M Linux filesystem
