14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync#!/usr/perl5/bin/perl
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsyncBEGIN {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 3) ne "barbazbop") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 3) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 3));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 3) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "barbazbop");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 300) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 300) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 300));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 300) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", -10) ne "obarbazbop") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", -10) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", -10));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", -10) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "obarbazbop");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 0) ne "foobarbazbop") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 0) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 0));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 0) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "foobarbazbop");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 1) ne "oobarbazbop") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 1) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 1));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 1) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "oobarbazbop");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 11) ne "p") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 11) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 11));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 11) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "p");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 12) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 12) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 12));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 12) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 13) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 13) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 13));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 13) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 8, 20) ne "zbop") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 8, 20) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 8, 20));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 8, 20) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "zbop");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 4, 4) ne "arba") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 4, 4) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 4, 4));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 4, 4) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "arba");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 5, 8) ne "rbazbop") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 5, 8) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 5, 8));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 5, 8) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "rbazbop");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 5, 9) ne "rbazbop") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 5, 9) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 5, 9));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 5, 9) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "rbazbop");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 400, 20) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 400, 20) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 400, 20));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 400, 20) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 400, 0) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 400, 0) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 400, 0));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 400, 0) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 400, -1) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 400, -1) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 400, -1));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 400, -1) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 3, 0) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 3, 0) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 3, 0));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 3, 0) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 3, -1) ne "barbazbo") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 3, -1) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 3, -1));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 3, -1) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "barbazbo");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 3, -4) ne "barba") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 3, -4) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 3, -4));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 3, -4) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "barba");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 3, -20) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 3, -20) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 3, -20));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 3, -20) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", -10, -5) ne "obarb") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", -10, -5) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", -10, -5));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", -10, -5) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "obarb");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", 0, 400) ne "foobarbazbop") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", 0, 400) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", 0, 400));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", 0, 400) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "foobarbazbop");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", -1, 400) ne "p") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", -1, 400) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", -1, 400));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", -1, 400) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "p");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", -1, 0) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", -1, 0) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", -1, 0));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", -1, 0) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", -1, -1) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", -1, -1) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", -1, -1));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", -1, -1) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", -24, 24) ne "foobarbazbop") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", -24, 24) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", -24, 24));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", -24, 24) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "foobarbazbop");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", -24, 12) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", -24, 12) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", -24, 12));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", -24, 12) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", -24, 13) ne "f") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", -24, 13) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", -24, 13));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", -24, 13) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "f");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", -12, 12) ne "foobarbazbop") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", -12, 12) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", -12, 12));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", -12, 12) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "foobarbazbop");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("foobarbazbop", -12, 11) ne "foobarbazbo") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"foobarbazbop\", -12, 11) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("foobarbazbop", -12, 11));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"foobarbazbop\", -12, 11) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "foobarbazbo");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("CRAIG: Positioned them, I don't know... I'm fairly wide guy.", 100, 10) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"CRAIG: Positioned them, I don't know... I'm fairly wide guy.\", 100, 10) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("CRAIG: Positioned them, I don't know... I'm fairly wide guy.", 100, 10));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"CRAIG: Positioned them, I don't know... I'm fairly wide guy.\", 100, 10) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync if (substr("CRAIG: Positioned them, I don't know... I'm fairly wide guy.", 100) ne "") {
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf("perl => substr(\"CRAIG: Positioned them, I don't know... I'm fairly wide guy.\", 100) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync substr("CRAIG: Positioned them, I don't know... I'm fairly wide guy.", 100));
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync printf(" D => substr(\"CRAIG: Positioned them, I don't know... I'm fairly wide guy.\", 100) = \"%s\"\n",
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync "");
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync $failed++;
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync }
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync exit($failed);
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync}
14ea49401f3c8c61422aefbda43809e275f60c6cvboxsync