public function transpose() : self
{
$literal = [];
for ($i = 0, $columns = $this->getColumnCount(); $i < $columns; $i++) {
$literal[] = [];
for ($j = 0, $rows = $this->getRowCount(); $j < $rows; $j++) {
$literal[$i][] = $this->get($j, $i);
}
}
return new static($literal);
}