Code Duplication    Length = 10-10 lines in 3 locations

src/PhpSpreadsheet/Calculation/DateTime.php 3 locations

@@ 399-408 (lines=10) @@
396
        $minute = (int) $minute;
397
        $second = (int) $second;
398
399
        if ($second < 0) {
400
            $minute += floor($second / 60);
401
            $second = 60 - abs($second % 60);
402
            if ($second == 60) {
403
                $second = 0;
404
            }
405
        } elseif ($second >= 60) {
406
            $minute += floor($second / 60);
407
            $second = $second % 60;
408
        }
409
        if ($minute < 0) {
410
            $hour += floor($minute / 60);
411
            $minute = 60 - abs($minute % 60);
@@ 409-418 (lines=10) @@
406
            $minute += floor($second / 60);
407
            $second = $second % 60;
408
        }
409
        if ($minute < 0) {
410
            $hour += floor($minute / 60);
411
            $minute = 60 - abs($minute % 60);
412
            if ($minute == 60) {
413
                $minute = 0;
414
            }
415
        } elseif ($minute >= 60) {
416
            $hour += floor($minute / 60);
417
            $minute = $minute % 60;
418
        }
419
420
        if ($hour > 23) {
421
            $hour = $hour % 24;
@@ 440-449 (lines=10) @@
437
                return (int) \PhpOffice\PhpSpreadsheet\Shared\Date::excelToTimestamp(\PhpOffice\PhpSpreadsheet\Shared\Date::formattedPHPToExcel(1970, 1, 1, $hour, $minute, $second)); // -2147468400; //    -2147472000 + 3600
438
            case Functions::RETURNDATE_PHP_OBJECT:
439
                $dayAdjust = 0;
440
                if ($hour < 0) {
441
                    $dayAdjust = floor($hour / 24);
442
                    $hour = 24 - abs($hour % 24);
443
                    if ($hour == 24) {
444
                        $hour = 0;
445
                    }
446
                } elseif ($hour >= 24) {
447
                    $dayAdjust = floor($hour / 24);
448
                    $hour = $hour % 24;
449
                }
450
                $phpDateObject = new \DateTime('1900-01-01 ' . $hour . ':' . $minute . ':' . $second);
451
                if ($dayAdjust != 0) {
452
                    $phpDateObject->modify($dayAdjust . ' days');