🎉 Exercism Research is now launched. Help Exercism, help science and have some fun at research.exercism.io 🎉

# dilmnqvovpnmlib's solution

## to Perfect Numbers in the C Track

Published at Apr 17 2021 · 0 comments
Instructions
Test suite
Solution

Determine if a number is perfect, abundant, or deficient based on Nicomachus' (60 - 120 CE) classification scheme for positive integers.

The Greek mathematician Nicomachus devised a classification scheme for positive integers, identifying each as belonging uniquely to the categories of perfect, abundant, or deficient based on their aliquot sum. The aliquot sum is defined as the sum of the factors of a number not including the number itself. For example, the aliquot sum of 15 is (1 + 3 + 5) = 9

• Perfect: aliquot sum = number
• 6 is a perfect number because (1 + 2 + 3) = 6
• 28 is a perfect number because (1 + 2 + 4 + 7 + 14) = 28
• Abundant: aliquot sum > number
• 12 is an abundant number because (1 + 2 + 3 + 4 + 6) = 16
• 24 is an abundant number because (1 + 2 + 3 + 4 + 6 + 8 + 12) = 36
• Deficient: aliquot sum < number
• 8 is a deficient number because (1 + 2 + 4) = 7
• Prime numbers are deficient

Implement a way to determine whether a given number is perfect. Depending on your language track, you may also need to implement a way to determine whether a given number is abundant or deficient.

## Getting Started

Make sure you have read the "Guides" section of the C track on the Exercism site. This covers the basic information on setting up the development environment expected by the exercises.

## Passing the Tests

Get the first test compiling, linking and passing by following the three rules of test-driven development.

The included makefile can be used to create and run the tests using the `test` task.

``````make test
``````

Create just the functions you need to satisfy any compiler errors and get the test to fail. Then write just enough code to get the test to pass. Once you've done that, move onto the next test.

As you progress through the tests, take the time to refactor your implementation for readability and expressiveness and then go on to the next test.

Try to use standard C99 facilities in preference to writing your own low-level algorithms or facilities by hand.

## Source

Taken from Chapter 2 of Functional Thinking by Neal Ford. http://shop.oreilly.com/product/0636920029687.do

## Submitting Incomplete Solutions

It's possible to submit an incomplete solution so you can see how others have completed the exercise.

### test_perfect_numbers.c

``````#include "vendor/unity.h"
#include "../src/perfect_numbers.h"

void setUp(void)
{
}

void tearDown(void)
{
}

static void test_smallest_perfect_number_is_classified_correctly(void)
{
TEST_ASSERT_EQUAL(PERFECT_NUMBER, classify_number(6));
}

static void test_medium_perfect_number_is_classified_correctly(void)
{
TEST_IGNORE();               // delete this line to run test
TEST_ASSERT_EQUAL(PERFECT_NUMBER, classify_number(28));
}

static void test_large_perfect_number_is_classified_correctly(void)
{
TEST_IGNORE();
TEST_ASSERT_EQUAL(PERFECT_NUMBER, classify_number(33550336));
}

static void test_smallest_abundant_number_is_classified_correctly(void)
{
TEST_IGNORE();
TEST_ASSERT_EQUAL(ABUNDANT_NUMBER, classify_number(12));
}

static void test_medium_abundant_number_is_classified_correctly(void)
{
TEST_IGNORE();
TEST_ASSERT_EQUAL(ABUNDANT_NUMBER, classify_number(30));
}

static void test_large_abundant_number_is_classified_correctly(void)
{
TEST_IGNORE();
TEST_ASSERT_EQUAL(ABUNDANT_NUMBER, classify_number(33550335));
}

static void test_smallest_prime_deficient_number_is_classified_correctly(void)
{
TEST_IGNORE();
TEST_ASSERT_EQUAL(DEFICIENT_NUMBER, classify_number(2));
}

static void
test_smallest_non_prime_deficient_number_is_classified_correctly(void)
{
TEST_IGNORE();
TEST_ASSERT_EQUAL(DEFICIENT_NUMBER, classify_number(4));
}

static void test_medium_deficient_number_is_classified_correctly(void)
{
TEST_IGNORE();
TEST_ASSERT_EQUAL(DEFICIENT_NUMBER, classify_number(32));
}

static void test_large_deficient_number_is_classified_correctly(void)
{
TEST_IGNORE();
TEST_ASSERT_EQUAL(DEFICIENT_NUMBER, classify_number(33550337));
}

static void test_edge_case_is_classified_correctly(void)
{
TEST_IGNORE();
TEST_ASSERT_EQUAL(DEFICIENT_NUMBER, classify_number(1));
}

static void test_zero_is_rejected(void)
{
TEST_IGNORE();
TEST_ASSERT_EQUAL(ERROR, classify_number(0));
}

static void test_negative_integer_is_rejected(void)
{
TEST_IGNORE();
TEST_ASSERT_EQUAL(ERROR, classify_number(-1));
}

int main(void)
{
UnityBegin("test/test_perfect_numbers.c");

RUN_TEST(test_smallest_perfect_number_is_classified_correctly);
RUN_TEST(test_medium_perfect_number_is_classified_correctly);
RUN_TEST(test_large_perfect_number_is_classified_correctly);
RUN_TEST(test_smallest_abundant_number_is_classified_correctly);
RUN_TEST(test_medium_abundant_number_is_classified_correctly);
RUN_TEST(test_large_abundant_number_is_classified_correctly);
RUN_TEST(test_smallest_prime_deficient_number_is_classified_correctly);
RUN_TEST(test_smallest_non_prime_deficient_number_is_classified_correctly);
RUN_TEST(test_medium_deficient_number_is_classified_correctly);
RUN_TEST(test_large_deficient_number_is_classified_correctly);
RUN_TEST(test_edge_case_is_classified_correctly);
RUN_TEST(test_zero_is_rejected);
RUN_TEST(test_negative_integer_is_rejected);

return UnityEnd();
}``````

### src/perfect_numbers.c

``````#include "perfect_numbers.h"

kind classify_number(int value) {
if (value <= 0) {
return ERROR;
}
int sum = 0;
for (int i = 1; i < value; ++i) {
if ( value % i == 0 ) {
sum += i;
}
}
if (sum == value) {
return PERFECT_NUMBER;
} else if (sum > value) {
return ABUNDANT_NUMBER;
} else if (sum < value) {
return DEFICIENT_NUMBER;
}
return ERROR;
}``````

### src/perfect_numbers.h

``````#ifndef PERFECT_NUMBERS_H
#define PERFECT_NUMBERS_H

typedef enum {
PERFECT_NUMBER = 1,
ABUNDANT_NUMBER = 2,
DEFICIENT_NUMBER = 3,
ERROR = -1
} kind;

kind classify_number(int value);

#endif``````

### test/test_perfect_numbers.c

``````#include "vendor/unity.h"
#include "../src/perfect_numbers.h"

void setUp(void)
{
}

void tearDown(void)
{
}

static void test_smallest_perfect_number_is_classified_correctly(void)
{
TEST_ASSERT_EQUAL(PERFECT_NUMBER, classify_number(6));
}

static void test_medium_perfect_number_is_classified_correctly(void)
{
// TEST_IGNORE();               // delete this line to run test
TEST_ASSERT_EQUAL(PERFECT_NUMBER, classify_number(28));
}

static void test_large_perfect_number_is_classified_correctly(void)
{
// TEST_IGNORE();
TEST_ASSERT_EQUAL(PERFECT_NUMBER, classify_number(33550336));
}

static void test_smallest_abundant_number_is_classified_correctly(void)
{
// TEST_IGNORE();
TEST_ASSERT_EQUAL(ABUNDANT_NUMBER, classify_number(12));
}

static void test_medium_abundant_number_is_classified_correctly(void)
{
// TEST_IGNORE();
TEST_ASSERT_EQUAL(ABUNDANT_NUMBER, classify_number(30));
}

static void test_large_abundant_number_is_classified_correctly(void)
{
// TEST_IGNORE();
TEST_ASSERT_EQUAL(ABUNDANT_NUMBER, classify_number(33550335));
}

static void test_smallest_prime_deficient_number_is_classified_correctly(void)
{
// TEST_IGNORE();
TEST_ASSERT_EQUAL(DEFICIENT_NUMBER, classify_number(2));
}

static void
test_smallest_non_prime_deficient_number_is_classified_correctly(void)
{
// TEST_IGNORE();
TEST_ASSERT_EQUAL(DEFICIENT_NUMBER, classify_number(4));
}

static void test_medium_deficient_number_is_classified_correctly(void)
{
// TEST_IGNORE();
TEST_ASSERT_EQUAL(DEFICIENT_NUMBER, classify_number(32));
}

static void test_large_deficient_number_is_classified_correctly(void)
{
// TEST_IGNORE();
TEST_ASSERT_EQUAL(DEFICIENT_NUMBER, classify_number(33550337));
}

static void test_edge_case_is_classified_correctly(void)
{
// TEST_IGNORE();
TEST_ASSERT_EQUAL(DEFICIENT_NUMBER, classify_number(1));
}

static void test_zero_is_rejected(void)
{
// TEST_IGNORE();
TEST_ASSERT_EQUAL(ERROR, classify_number(0));
}

static void test_negative_integer_is_rejected(void)
{
// TEST_IGNORE();
TEST_ASSERT_EQUAL(ERROR, classify_number(-1));
}

int main(void)
{
UnityBegin("test/test_perfect_numbers.c");

RUN_TEST(test_smallest_perfect_number_is_classified_correctly);
RUN_TEST(test_medium_perfect_number_is_classified_correctly);
RUN_TEST(test_large_perfect_number_is_classified_correctly);
RUN_TEST(test_smallest_abundant_number_is_classified_correctly);
RUN_TEST(test_medium_abundant_number_is_classified_correctly);
RUN_TEST(test_large_abundant_number_is_classified_correctly);
RUN_TEST(test_smallest_prime_deficient_number_is_classified_correctly);
RUN_TEST(test_smallest_non_prime_deficient_number_is_classified_correctly);
RUN_TEST(test_medium_deficient_number_is_classified_correctly);
RUN_TEST(test_large_deficient_number_is_classified_correctly);
RUN_TEST(test_edge_case_is_classified_correctly);
RUN_TEST(test_zero_is_rejected);
RUN_TEST(test_negative_integer_is_rejected);

return UnityEnd();
}``````

### tests.out

``````ELF>@@ø¯@8	@"!@@@øø888 D D  M M  M p¸ °M°M °M ððTTTDDPåtdÄ:Ä:Ä:ôôQåtdRåtd M M  M ``/lib64/ld-linux-x86-64.so.2GNUGNUjùñ\•?�¨¢à߯‹%4k C,‡ \$– 4"libc.so.6__stack_chk_failputcharlongjmp_setjmp__cxa_finalize__libc_start_mainGLIBC_2.4GLIBC_2.2.5_ITM_deregisterTMCloneTable__gmon_start___ITM_registerTMCloneTableii
Uui	_ M @¨M P P ØO àO èO ðO øO 	¸O ÀO ÈO ÐO HƒìH‹J H…ÀtÿÐHƒÄÃÿ5ÂI ÿ%ÄI @ÿ%ÂI héàÿÿÿÿ%ºI héÐÿÿÿÿ%²I héÀÿÿÿÿ%ªI hé°ÿÿÿÿ%ÂI f�1íI‰Ñ^H‰âHƒäðPTL�:.H�
Ã-H�=l,ÿvI ôDH�=™I UH�‘I H9øH‰åtH‹JI H…Àt
]ÿàf.„]Ã@f.„H�=YI H�5RI UH)þH‰åHÁþH‰ðHÁè?HÆHÑþtH‹I H…Àt]ÿàf„]Ã@f.„€=I u/Hƒ=çH UH‰åtH‹=êH è
ÿÿÿèHÿÿÿÆñH ]Ã€óÃfDUH‰å]éfÿÿÿUH‰å‰}ìƒ}ì¸ÿÿÿÿëaÇEøÇEüë‹Eì™÷}ü‰ЅÀu‹EüEøƒEü‹Eü;Eì|á‹Eø;Eìu¸ë#‹Eø;Eì~¸ë‹Eø;Eì}¸ë¸ÿÿÿÿ]ÃUH‰åHƒìH‰}øH‹Eø¶<tH‹Eø¶<~H‹Eø¶¾À‰ÇèüýÿÿënH‹Eø¶<
u¿\èåýÿÿ¿rèÛýÿÿëMH‹Eø¶<
u¿\èÄýÿÿ¿nèºýÿÿë,¿\è®ýÿÿ¿xè¤ýÿÿH‹Eø¶H¾À¾H‰Çè�ÉÃUH‰åHƒì H‰}èH‹EèH‰EøHƒ}øtëH‹EøH‰Çè1ÿÿÿHƒEøH‹Eø¶„Àuä�ÉÃUH‰åHƒì H‰}è‰uäH‹EèH‰EøHƒ}ø„ÃéœH‹Eø¶<tH‹Eø¶<~H‹Eø¶¾À‰ÇèÿüÿÿënH‹Eø¶<
u¿\èèüÿÿ¿rèÞüÿÿëMH‹Eø¶<
u¿\èÇüÿÿ¿nè½üÿÿë,¿\è±üÿÿ¿xè§üÿÿH‹Eø¶H¾À¾H‰ÇèHƒEøH‹Eø¶„ÀtH‹UøH‹EèH)ÂH‰Ð9Eä‡Bÿÿÿ�ÉÃUH‰åHƒìH‰}ø‰uô‹Eôƒà…À„«�}ô‘…�¿'è1üÿÿHƒ}ø~Hƒ}ø~
H‹Eø‰Çèüÿÿë_Hƒ}ø
u¿\èüÿÿ¿rèûûÿÿëBHƒ}ø
u¿\èèûÿÿ¿nèÞûÿÿë%¿\èÒûÿÿ¿xèÈûÿÿH‹Eø¾H‰ÇèD¿'è­ûÿÿëSH‹EøH‰ÇèJëE‹Eôƒà …ÀtH‹EøH‰Çèjë-¿0è{ûÿÿ¿xèqûÿÿ‹EôƒàÀ¾ÐH‹Eø‰ÖH‰Çèå�ÉÃUH‰åHƒì H‰}èH‹EèH‰EøHƒ}èy¿-è0ûÿÿH÷]øH‹EøH‰Çè�ÉÃUH‰åHƒì H‰}èHÇEøëH‹UøH‰ÐHÁàHÐHÀH‰EøH‹EèºH÷uøHƒø	wØH‹EèºH÷uøH‰ÁHºÍÌÌÌÌÌÌÌH‰ÈH÷âHÁêH‰ÐHÁàHÐHÀH)ÁH‰ʉЃÀ0¾À‰Çè™úÿÿH‹EøHºÍÌÌÌÌÌÌÌH÷âH‰ÐHÁèH‰EøHƒ}øu—�ÉÃUH‰åHƒì H‰}è‰ðˆEä¶EäˆEû¶Eû<vQÆEûëK¶EûƒèˆEû¾EûÁàH‹Uè‰ÁHÓêH‰Ѓà‰Eüƒ}ü	‹EüƒÀ0¾À‰Çèúÿÿë‹EüƒÀ7¾À‰Çèúÿÿ€}û¯�ÉÃUH‰åHƒì H‰}èH‰uà¸€H‰EøÇEôëDH‹EøH#EèH…Àt%H‹EøH#EàH…Àt¿1è³ùÿÿë¿0è§ùÿÿë
¿Xè›ùÿÿHÑmøƒEôƒ}ô~¶�ÉÃUH‰åHƒì`óE¬dH‹%(H‰Eø1ÀóE¬óE¼fïÀ.E¼v¿-èPùÿÿóM¼ó+WÁóE¼fïÀ.E¼zfïÀ.E¼uH�=«*è’ûÿÿékóE¼.E¼{H�=‘*èvûÿÿéOóM¼óÍ*TÁ.Ó*–Àƒð„ÀtH�=c*èDûÿÿéÇEÀÇEÈHÇEàHÇEèó–*.E¼†‘ó„*óEÔëóM¼ót*óYÁóE¼ƒmÈ
‹)*ó*Àó
U*ó^Á.E¼wÊëóMÔó@*óYÁóEԃmÈóE¼(ÈóYMԋè)ó*À.ÁwÊóE¼óYEÔóE¼é‹Á)ó*ÀóM¼.È†�óÛ)óEØëóE¼ó
Ë)ó^ÁóE¼ƒEÈ
‹„)ó*Àó
¬)óYÁóM¼.ÈwÆëóMØó“)óYÁóE؃EÈóE¼ó^E؋:)ó*È.ÁwÍóE¼ó^EØóE¼ëtóL)óEÜóE¼ó,À‰EÀó*EÀóM¼ó\È(ÁóE¼ë)‹UÀ‰ÐÁàÐÀ‰EÀóMÜó)óYÁóE܃mÈ‹Ä(9EÀ|ÌóE¼óYEÜóE¼óE¼óXÀó,ÀƒÀ‰ÂÁêÐÑø‰EċEăà…Àt ó*EÄó\E¼.µ(z
.¬(uƒmÄ‹EÀEċZ(9EÄ|
‹S(‰EăEÈƒ}È‹D(ºýÿÿÿ)Ð9EÈ|‹EÈ÷Øë	‹)(ƒè‰E̋EÌEÈë‹Mĺgfff‰È÷êÁú‰ÈÁø)ЉEămÌƒ}Ì~'‹Mĺgfff‰È÷êÁú‰ÈÁø)ÐÁàÐÀ)Á‰ʅÒt´ÇEÐëT‹Mĺgfff‰È÷êÁú‰ÈÁø)ÐÁàÐÀ)Á‰ʉЍH0‹EЍP‰UЉÊH˜ˆTà‹Mĺgfff‰È÷êÁú‰ÈÁø)ЉEă}Äu¦‹ẼÀ9EÐ|›ë*‹EÐ;EÌu
¿.è…õÿÿƒmÐ‹EÐH˜¶Dà¾À‰Çèmõÿÿƒ}ÐЃ}È„²¿eèSõÿÿƒ}Èy¿-èCõÿÿ÷]Èë
¿+è4õÿÿÇEÐëT‹MȺgfff‰È÷êÁú‰ÈÁø)ÐÁàÐÀ)Á‰ʉЍH0‹EЍP‰UЉÊH˜ˆTà‹MȺgfff‰È÷êÁú‰ÈÁø)ЉEȃ}Èu¦ƒ}Ð~ ëƒmÐ‹EÐH˜¶Dà¾À‰Çè±ôÿÿƒ}Ðâ�H‹EødH3%(tè¦ôÿÿÉÃUH‰åHƒìH‰}øH‰uðH‹EøH‰Çèïöÿÿ¿:ènôÿÿH‹EðH‰Çè
ùÿÿ¿:èXôÿÿH‹©> H‰ÇèÀöÿÿ¿:è?ôÿÿ�ÉÃUH‰åHƒìH‰}øH‹y> H‹UøH‰ÖH‰Çè†ÿÿÿH�=ë"è…öÿÿ¿:èôÿÿ�ÉÃUH‰åH‹Ž> H…ÀtH‹r> HƒÀH‰g> ëEH‹f> H…Àu'H‹:> H‹> H‰ÖH‰Çè\$ÿÿÿH�=„"è#öÿÿëH‹#> HƒÀH‰> HÇ> HÇ> ¿
èxóÿÿ�]ÃUH‰åHƒìH‰}øHƒ}øtrH�=D"èÍõÿÿH‹¯= H…ÀtNH�=³\$èµõÿÿH‹—= H‰Çè¦õÿÿH‹�= H…ÀtH�=œ\$èŽõÿÿH‹x= H‰ÇèõÿÿH�=ê!èsõÿÿH‹EøH‰Çègõÿÿ�ÉÃUH‰åHƒìH‰}øH‰uðH�=Æ!èHõÿÿHƒ}øt"¿'èÀòÿÿH‹EøH‰Çè+õÿÿ¿'èªòÿÿëH�=…!èõÿÿH�=�!èõÿÿHƒ}ðt"¿'èòÿÿH‹EðH‰Çèêôÿÿ¿'èiòÿÿëH�=D!èÒôÿÿ�ÉÃUH‰åHƒì H‰}øH‰uð‰UìH�=.!è°ôÿÿHƒ}øt'¿'è(òÿÿ‹UìH‹Eø‰ÖH‰ÇèÊôÿÿ¿'è
òÿÿëH�=è èvôÿÿH�=ó èjôÿÿHƒ}ðt'¿'èâñÿÿ‹UìH‹Eð‰ÖH‰Çè„ôÿÿ¿'èÇñÿÿëH�=¢ è0ôÿÿ�ÉÃUH‰åHƒì H‰}øH‰uðH‰UèH‰MàH‹EøH;Eðu¸ëiHƒ}øu+H‹EèH‰Çè>ýÿÿH�=c!èåóÿÿH‹EàH‰Çèíýÿÿ¸ë7Hƒ}ðu+H‹EèH‰ÇèýÿÿH�=Q!è³óÿÿH‹EàH‰Çè»ýÿÿ¸ë¸ÉÃUH‰åHƒì0H‰}øH‰uðH‰UèH‰MàL‰EØH‹�; H…À…“H‹‡; H…À…ƒH‹EðH3EèH#EøH…ÀtsH‹EØH‰Çè�üÿÿH�=²è4óÿÿH‹UðH‹EøH‰ÖH‰Çè±öÿÿH�=žèóÿÿH‹UèH‹EøH‰ÖH‰Çè’öÿÿH‹EàH‰Çè
ýÿÿHÇ; ¾H�=; è“ðÿÿ�ÉÃUH‰åHƒì0H‰}øH‰uðH‰UèH‰MàD‰EÜH‹Í: H…À…„H‹Å: H…ÀuxH‹EøH;EðtoH‹EàH‰ÇèÖûÿÿH�=ûè}òÿÿ‹UÜH‹Eø‰ÖH‰Çè�óÿÿH�=éè`òÿÿ‹UÜH‹Eð‰ÖH‰ÇèsóÿÿH‹EèH‰ÇèWüÿÿHÇQ: ¾H�=U: èàïÿÿ�ÉÃUH‰åHƒì@H‰}èH‰uà‰UÜH‰MÐL‰EÈD‰MØÇEüH‹: H…À…eH‹: H…À…UH‹EèH;Eàu‹E܃à…À…@H‹EèH;EàuÇEü‹E؃à…Àt8H‹EàH;Eè~‹E܃à…ÀtÇEüH‹EàH;Eè}O‹E܃à…ÀtEÇEüë<H‹UàH‹EèH9Âv‹E܃à…ÀtÇEüH‹UàH‹EèH9Âs‹E܃à…ÀtÇEüƒ}ü„¨H‹EÈH‰ÇènúÿÿH�=“èñÿÿ‹UØH‹Eà‰ÖH‰Çè(òÿÿ‹E܃à…ÀtH�=Œèîðÿÿ‹E܃à…ÀtH�=–èØðÿÿ‹E܃à…ÀtH�=˜èÂðÿÿ‹UØH‹Eè‰ÖH‰ÇèÕñÿÿH‹EÐH‰Çè¹úÿÿHÇ³8 ¾H�=·8 èBîÿÿ�ë�ÉÃUH‰åHƒì`H‰}ÈH‰uÀ‰U¼H‰M°L‰E¨D‰M¸‹E¼‰E܋E¸ƒà‰EàÇEäH‹`8 H…À…PH‹X8 H…À…@ƒ}¼u@H‹E¨H‰ÇèiùÿÿH�=NèðÿÿH‹E°H‰ÇèúÿÿHÇ8 ¾H�=8 è¡íÿÿH‹EÈH;EÀ„ïH‹M°H‹U¨H‹uÀH‹EÈH‰Çè•ûÿÿ…À„³HÇÈ7 ¾H�=Ì7 èWíÿÿ‹Eàƒøt1ƒøtSƒøumH‹EÈ¶H¾ÀH‰EèH‹EÀ¶H¾ÀH‰EðÇEäëmH‹EÈ·H¿ÀH‰EèH‹EÀ·H¿ÀH‰EðÇEäëFH‹EÈH‹H‰EèH‹EÀH‹H‰EðÇEäë'H‹EȋH˜H‰EèH‹EÀ‹H˜H‰EðÇEäÇEà�H‹EèH;Eð„Ï‹E¸ƒà …Àt8ƒ}àw2HÇEø‹EàÁàH‹Uø‰ÁHÓâH‰ÐHƒèH‰EøH‹EøH!EèH‹EøH!EðH‹E¨H‰Çèé÷ÿÿH�=vè�îÿÿ‹E¼+E܃è‰ÀH‰ÇèéðÿÿH�=ïèqîÿÿ‹U¸H‹Eè‰ÖH‰Çè„ïÿÿH�=ÝèTîÿÿ‹U¸H‹Eð‰ÖH‰ÇègïÿÿH‹E°H‰ÇèKøÿÿHÇE6 ¾H�=I6 èÔëÿÿƒ}u‹EäHEȋEäHEÀƒ}Üt‹E܍Pÿ‰U܅À…Rþÿÿë�ë�ÉÃUH‰åóEìóMèóUäóMèó1TÁ.7–Àƒð„ÀtLóMäóTÁ.–Àƒð„Àt+fïÀ.Eè—Àƒð‰ÂfïÀ.Eä—À1ЄÀt
¸é°óEè.Eè{óEä.Eä{
¸é�óEäó\EèóEüfïÀ.EüvóMüó{WÁóEüfïÀ.EìvóMìó\WÁóEìóEü.Eüz3óMüóLTÁ.RwóEü.Eì—Àƒð„Àt¸ë¸]ÃUH‰åHƒìPH‰}ØH‰uЉUÌH‰MÀL‰E¸D‰MȋẺEìH‹EØH‰EðH‹EÐH‰EøH‹“4 H…À…ˆH‹‹4 H…À…xƒ}ìu@H‹E¸H‰ÇèœõÿÿH�=�èCìÿÿH‹EÀH‰ÇèKöÿÿHÇE4 ¾H�=I4 èÔéÿÿH‹EØH;EÐ„'H‹MÀH‹U¸H‹uÐH‹EØH‰ÇèÈ÷ÿÿ…À„ñHÇû3 ¾H�=ÿ3 èŠéÿÿH‹EøóH‹EðóH‹Eðóó>óYÁ(Ëè½ýÿÿ…À…‘H‹E¸H‰ÇèÞôÿÿH�=kè…ëÿÿ‹EÌ+Eìƒè‰ÀH‰ÇèÞíÿÿH�=äèfëÿÿH‹Eð‹‰E´óE´èRïÿÿH�=ÐèGëÿÿH‹Eø‹‰E´óE´è3ïÿÿH‹EÀH‰Çè<õÿÿHÇ63 ¾H�=:3 èÅèÿÿƒ}ÈuHƒEðHƒEø‹Eì�Pÿ‰Uì…À…ÿÿÿë�ë�ÉÃUH‰åHƒì óEüóMøóUôH‰}èH‰uàH‹Ö2 H…À… H‹Î2 H…À…�óMôóEø‹Eü(Ñ(ȉEðóEðèœüÿÿ…ÀumH‹EàH‰ÇèÁóÿÿH�=æèhêÿÿ‹Eø‰EðóEðèWîÿÿH�=ÕèLêÿÿ‹Eô‰EðóEðè;îÿÿH‹EèH‰ÇèDôÿÿHÇ>2 ¾H�=B2 èÍçÿÿ�ÉÃUH‰åHƒìpóE¬H‰} H‰u˜‰U¨dH‹%(H‰Eø1ÀH�œH‰EÐH�¡H‰EØH�¨H‰EàH�£H‰Eè‹E¨ƒàH‰EÈHƒ}È”À¶ÀH‰E¸‹E¨Ñè‰ÀH‰EÀH‹¬1 H…À…²H‹¤1 H…À…¢ƒ}¨‡ö‹E¨H�…H�‹HcÐH�rHÐÿàóM¬ó¨TÁ.®–Àƒð„ÀtóE¬fïÉ.Áv¸ë¸H˜H‰E¸é óM¬óbTÁ.h–Àƒð„ÀtfïÀ.E¬v¸ë¸H˜H‰E¸ëaóE¬.E¬šÀ¶ÀH‰E¸ëLóM¬óTÁ.wóE¬.E¬z¸ë¸H˜H‰E¸ëHÇEÀH�dH‰EАH‹E¸H;EÈ„�H‹E˜H‰Çè™ñÿÿH�=¾è@èÿÿHƒ}ÈuH�=äè-èÿÿH‹EÀH‹DÅÐH‰ÇèèÿÿH�=™èèÿÿ‹E¬‰E”óE”èÿëÿÿH‹E H‰ÇèòÿÿHÇ0 ¾H�=0 è‘åÿÿ�H‹EødH3%(tè\åÿÿÉÃUH‰åHƒì0H‰}øH‰uðH‰UèH‰MàL‰EØD‰MÔH‹³/ H…À…NH‹«/ H…À…>‹Eԃà…ÀtLH‹EèH;Eð~!H‹UèH‹EðH)ÂH‰ÐH9Eø’À¶ÀH‰g/ ënH‹UðH‹EèH)ÂH‰ÐH9Eø’À¶ÀH‰F/ ëMH‹UèH‹EðH9Âv!H‹UèH‹EðH)ÂH‰ÐH9Eø’À¶ÀH‰/ ëH‹UðH‹EèH)ÂH‰ÐH9Eø’À¶ÀH‰÷. H‹ð. H…À„ŒH‹EØH‰ÇèðÿÿH�=Ôè¶æÿÿH‹Eø‹UԉÖH‰ÇèÉçÿÿH�=è™æÿÿ‹UÔH‹Eð‰ÖH‰Çè¬çÿÿH�=è|æÿÿ‹UÔH‹Eè‰ÖH‰Çè�çÿÿH‹EàH‰ÇèsðÿÿHÇm. ¾H�=q. èüãÿÿ�ÉÃUH‰åHƒì`H‰}ÈH‰uÀH‰U¸‰M´L‰E¨L‰M ‹E´‰E܋Eƒà‰EàÇEäH‹. H…À…H‹. H…À…üƒ}´u@H‹E H‰Çè&ïÿÿH�=èÍåÿÿH‹E¨H‰ÇèÕïÿÿHÇÏ- ¾H�=Ó- è^ãÿÿH‹EÀH;E¸„«H‹M¨H‹U H‹u¸H‹EÀH‰ÇèRñÿÿ…À„oHÇ…- ¾H�=‰- èãÿÿ‹Eàƒøt1ƒøtSƒøumH‹EÀ¶H¾ÀH‰EèH‹E¸¶H¾ÀH‰EðÇEäëmH‹EÀ·H¿ÀH‰EèH‹E¸·H¿ÀH‰EðÇEäëFH‹EÀH‹H‰EèH‹E¸H‹H‰EðÇEäë'H‹EÀ‹H˜H‰EèH‹E¸‹H˜H‰EðÇEäÇEà�‹Eƒà…ÀtLH‹EðH;Eè~!H‹UðH‹EèH)ÂH‰ÐH9EÈ’À¶ÀH‰›, ënH‹UèH‹EðH)ÂH‰ÐH9EÈ’À¶ÀH‰z, ëMH‹UðH‹EèH9Âv!H‹UðH‹EèH)ÂH‰ÐH9EÈ’À¶ÀH‰L, ëH‹UèH‹EðH)ÂH‰ÐH9EÈ’À¶ÀH‰+, H‹\$, H…À„æ‹Eƒà …Àt8ƒ}àw2HÇEø‹EàÁàH‹Uø‰ÁHÓâH‰ÐHƒèH‰EøH‹EøH!EèH‹EøH!EðH‹E H‰ÇèíÿÿH�=Æè¨ãÿÿH‹EȋuH‰Çè½äÿÿH�=sè�ãÿÿ‹E´+E܃è‰ÀH‰ÇèæåÿÿH�=ìènãÿÿH‹Eè‹uH‰ÇèƒäÿÿH�=ÜèSãÿÿH‹Eð‹uH‰ÇèhäÿÿH‹E¨H‰ÇèLíÿÿHÇF+ ¾H�=J+ èÕàÿÿƒ}u‹EäHEÀ‹EäHE¸ƒ}Üt‹E܍Pÿ‰U܅À…–ýÿÿë�ë�ÉÃUH‰åHƒì0H‰}èH‰uàH‰UØH‰MÐH‹ã* H…À…ãH‹Û* H…À…ÓHƒ}ètdHƒ}àt]ÇEüë0‹UüH‹EèHÐ¶‹MüH‹EàHÈ¶8ÂtHÇŠ* �ë=ƒEü‹UüH‹EèHÐ¶„Àu¿‹UüH‹EàHÐ¶„Àu®ëH‹EèH;EàtHÇJ* H‹C* H…ÀtHH‹EÐH‰ÇèfëÿÿH‹UàH‹EèH‰ÖH‰Çè¢ìÿÿH‹EØH‰ÇèìÿÿHÇ* ¾H�=* è—ßÿÿ�ÉÃUH‰åHƒì@H‰}èH‰uà‰UÜH‰MÐL‰EÈH‹Ò) H…À…ñH‹Ê) H…À…áHƒ}ètlHƒ}àteÇEüë0‹UüH‹EèHÐ¶‹MüH‹EàHÈ¶8ÂtHÇy) �ëGƒEü‹Eü;EÜs;‹UüH‹EèHÐ¶„Àu·‹UüH‹EàHÐ¶„Àu¦ëH‹EèH;EàtHÇ1) ë�H‹') H…ÀtKH‹EÈH‰ÇèJêÿÿ‹UÜH‹MàH‹EèH‰ÎH‰ÇèìÿÿH‹EÐH‰ÇèïêÿÿHÇé( ¾H�=í( èxÞÿÿ�ÉÃUH‰åHƒìPH‰}ØH‰uЉUÌH‰MÀL‰E¸D‰MÈÇEèÇEìHÇEðHÇEøH‹‘( H…À…äH‹‰( H…À…Ôƒ}Ìu@H‹E¸H‰ÇèšéÿÿH�=
èAàÿÿH‹EÀH‰ÇèIêÿÿHÇC( ¾H�=G( èÒÝÿÿH‹EØH;EÐ„ƒH‹MÀH‹U¸H‹uÐH‹EØH‰ÇèÆëÿÿ…ÀtHÇý' ¾H�=( èŒÝÿÿƒ}ÈtH‹EØH‰Eð‹EìH�ÅH‹EÐHÐH‹H‰Eøƒ}Èu‹EìH�ÅH‹EØHÐH‹H‰EðHƒ}ðtdHƒ}øt]ÇEèë0‹UèH‹EðHÐ¶‹MèH‹EøHÈ¶8ÂtHÇf' �ë=ƒEè‹UèH‹EðHÐ¶„Àu¿‹UèH‹EøHÐ¶„Àu®ëH‹EðH;EøtHÇ&' H‹' H…ÀtdH‹E¸H‰ÇèBèÿÿƒ}ÌvH�=ÉèãÞÿÿ‹EìH‰ÇèDáÿÿH‹UøH‹EðH‰ÖH‰ÇèaéÿÿH‹EÀH‰ÇèÍèÿÿHÇÇ& ¾H�=Ë& èVÜÿÿƒEì‹Eì;EÌ‚Èþÿÿë�ë�ÉÃUH‰åHƒìPH‰}ØH‰uЉỦMÈL‰EÀL‰M¸H‹EØH‰EðH‹EÐH‰Eø‹EȉEèH‹c& H…À…ÍH‹[& H…À…½ƒ}ètƒ}Ìu@H‹E¸H‰ÇèfçÿÿH�=Kè
ÞÿÿH‹EÀH‰ÇèèÿÿHÇ& ¾H�=& èžÛÿÿH‹EØH;EÐ„fH‹MÀH‹U¸H‹uÐH‹EØH‰Çè’éÿÿ…À„0HÇÅ% ¾H�=É% èTÛÿÿ‹ẺEìéêH‹Eð¶H‹Eø¶8Â„ÊH‹E¸H‰Çè»æÿÿH�=`
èbÝÿÿƒ}ÈvH�=6
è1Ýÿÿ‹EÌ+Eìƒè‰ÀH‰ÇèŠßÿÿH�=�	èÝÿÿH‹Eð¶¶À¾AH‰ÇèÞÿÿH�=x	èïÜÿÿH‹Eø¶¶À¾AH‰ÇèüÝÿÿH‹EÀH‰ÇèàæÿÿHÇÚ\$ ¾H�=Þ\$ èiÚÿÿHƒEðHƒEø‹Eì�Pÿ‰Uì…À…ÿÿÿƒ}uH‹EØH‰Eð‹Eè�Pÿ‰Uè…À…Ûþÿÿë�ë�ÉÃUH‰åH‰}ø‰ðˆEô¶Eôƒøtƒøt,ƒøu;H‹Eøˆ\$ H�þ# ë9H‹Eøf‰ñ# H�ê# ë%H‹EøH‰Ý# H�Ö# ëH‹Eø‰Ê# H�Ã# ]ÃUH‰åóEüóEüó«# H�¤# ]ÃUH‰åHƒìH‰}øH‰uðH‹ã# H…À…ÞH‹Û# H…À…ÎH‹ƒ# H‹UðH‰ÖH‰Çè�äÿÿH�=õè�ÛÿÿHƒ}ø„…¿:èÙÿÿH‹\# H…ÀtNH�=`
èbÛÿÿH‹D# H‰ÇèSÛÿÿH‹=# H…ÀtH�=I
è;ÛÿÿH‹%# H‰Çè,ÛÿÿH�=—è ÛÿÿH‹Eø¶< t
¿ è”ØÿÿH‹EøH‰ÇèÿÚÿÿHÇ
# ¾H�=# èœØÿÿ�ÉÃUH‰åHƒìH‰}øH‰uðH‹â" H…ÀuqH‹Þ" H…ÀueH‹Š" H‹UðH‰ÖH‰Çè—ãÿÿH�=è–ÚÿÿHƒ}øt ¿:èØÿÿ¿ èØÿÿH‹EøH‰ÇèoÚÿÿHÇ…" ¾H�=�" èØÿÿ�ÉÃUH‰åHƒìH‰}øH‰uðH‹" H‹UðH‰ÖH‰ÇèãÿÿH�=d	èÚÿÿHƒ}øt ¿:è–×ÿÿ¿ èŒ×ÿÿH‹EøH‰Çè÷Ùÿÿ¿
èv×ÿÿ�ÉÃUH‰åHƒì H‰}øH‰uð‰UìH‹EðH‰­! ‹EìH˜H‰¹! H‹º! HƒÀH‰¯! HÇŒ! HÇ‰! H�=º! è5×ÿÿ…ÀuèjH‹EøÿÐH�=Ÿ! è×ÿÿ…ÀuèVèëâÿÿ�ÉÃUH‰åH‰}øH‹EøH‰&! �]ÃUH‰åH‰}øH‹EøH‰! HÇ
! HÇ! HÇ! HÇ! HÇ! HÇ! HÇ! HÇÈ  HÇÅ  �]ÃUH‰å¿
èLÖÿÿH�=uè·Øÿÿ¿
è6ÖÿÿH‹§  H‰ÇèÒÚÿÿH�=hè’ØÿÿH‹”  H‰Çè·ÚÿÿH�=UèwØÿÿH‹�  H‰ÇèœÚÿÿH�=Jè\Øÿÿ¿
èÛÕÿÿH‹T  H…ÀuH�=˜è:ØÿÿëH�=’è,Øÿÿ¿
è«ÕÿÿH‹\$  ]ÃUH‰å�]ÃUH‰å�]ÃUH‰å¿èàÖÿÿH˜A¸¹ºH‰ƿèåÿÿ�]ÃUH‰å¿è°ÖÿÿH˜A¸¹ºH‰ƿè×äÿÿ�]ÃUH‰å¿ðÿè€ÖÿÿH˜A¸¹ºH‰ƿè§äÿÿ�]ÃUH‰å¿èPÖÿÿH˜A¸¹ ºH‰ƿèwäÿÿ�]ÃUH‰å¿è ÖÿÿH˜A¸¹&ºH‰ƿèGäÿÿ�]ÃUH‰å¿ÿïÿèðÕÿÿH˜A¸¹,ºH‰ƿèäÿÿ�]ÃUH‰å¿èÀÕÿÿH˜A¸¹2ºH‰ƿèçãÿÿ�]ÃUH‰å¿è�ÕÿÿH˜A¸¹9ºH‰ƿè·ãÿÿ�]ÃUH‰å¿ è`ÕÿÿH˜A¸¹?ºH‰ƿè‡ãÿÿ�]ÃUH‰å¿ðÿè0ÕÿÿH˜A¸¹EºH‰ƿèWãÿÿ�]ÃUH‰å¿èÕÿÿH˜A¸¹KºH‰ƿè'ãÿÿ�]ÃUH‰å¿èÐÔÿÿH˜A¸¹QºH‰ÆHÇÇÿÿÿÿèõâÿÿ�]ÃUH‰å¿ÿÿÿÿèžÔÿÿH˜A¸¹WºH‰ÆHÇÇÿÿÿÿèÃâÿÿ�]ÃUH‰åH�=è=üÿÿº^H�5,H�=iýÿÿè…ûÿÿº_H�5LH�=�ýÿÿèmûÿÿº`H�5lH�=™ýÿÿèUûÿÿºaH�5ŒH�=±ýÿÿè=ûÿÿºbH�5¬H�=Éýÿÿè%ûÿÿºcH�5ÌH�=áýÿÿè
ûÿÿºdH�5ìH�=ùýÿÿèõúÿÿºeH�5H�=þÿÿèÝúÿÿºfH�5DH�=)þÿÿèÅúÿÿºgH�5dH�=Aþÿÿè­úÿÿºhH�5„H�=Yþÿÿè•úÿÿºiH�5“H�=qþÿÿè}úÿÿºjH�5”H�=‹þÿÿèeúÿÿèyûÿÿ]ÐAWAVI‰×AUATL�%n UH�-n SA‰ýI‰öL)åHƒìHÁýèoÑÿÿH…ít 1Û„L‰úL‰öD‰ïAÿÜHƒÃH9ÝuêHƒÄ[]A\A]A^A_Ðf.„óÃHƒìHƒÄÃOKPASSFAILIGNORENULL.  Expected  Was  to be greater than  to be less than or equal to  Element  Byte  Memory Mismatch. Values Not Within Delta  You Asked Me To Compare Nothing, Which Was Pointless. Expected pointer to be NULL Actual pointer was NULLNot InfinityNegative InfinityNaNDeterminateInvalid Float TraitUnity Shorthand Support DisabledUnity Floating Point DisabledUnity Double Precision DisabledUnity 64-bit Support Disabled----------------------- Tests  Failures  Ignored Function  Argument 0naninf“çÿÿ“çÿÿÙçÿÿÙçÿÿèÿÿèÿÿ-èÿÿ-èÿÿINFO€–˜@B€ÿÿÿÿÿ€?ùP A?¬Å'7test/test_perfect_numbers.ctest_smallest_perfect_number_is_classified_correctlytest_medium_perfect_number_is_classified_correctlytest_large_perfect_number_is_classified_correctlytest_smallest_abundant_number_is_classified_correctlytest_medium_abundant_number_is_classified_correctlytest_large_abundant_number_is_classified_correctlytest_smallest_prime_deficient_number_is_classified_correctlytest_smallest_non_prime_deficient_number_is_classified_correctlytest_medium_deficient_number_is_classified_correctlytest_large_deficient_number_is_classified_correctlytest_edge_case_is_classified_correctlytest_zero_is_rejectedtest_negative_integer_is_rejected;ð=Ëÿÿ<lËÿÿd|Ëÿÿ†Ìÿÿ|ýÌÿÿœ£Íÿÿ¼ßÍÿÿÜÇÎÿÿü×ÏÿÿÐÿÿ<¹Ðÿÿ\3Ñÿÿ|¢Ñÿÿœ˜Öÿÿ¼ðÖÿÿÜ+×ÿÿü·×ÿÿ?Øÿÿ<ÔØÿÿ\vÙÿÿ|
ÚÿÿœÌÚÿÿ¼ÛÿÿÜ Ýÿÿü»ßÿÿíàÿÿ<Àâÿÿ\’ãÿÿ|âåÿÿœcçÿÿ¼ºêÿÿÜÈëÿÿüçìÿÿïÿÿ<5ñÿÿ\£ñÿÿ|ÂñÿÿœÃòÿÿ¼SóÿÿÜ¹óÿÿüCôÿÿYôÿÿ<Òôÿÿ\Šõÿÿ|‘õÿÿœ˜õÿÿ¼ÈõÿÿÜøõÿÿü(öÿÿXöÿÿ<ˆöÿÿ\¸öÿÿ|èöÿÿœ÷ÿÿ¼H÷ÿÿÜx÷ÿÿü¨÷ÿÿ	Ú÷ÿÿ<	øÿÿ\	\ùÿÿ|	ÌùÿÿÄ	zRx�hÉÿÿ+zRx�\$ØÈÿÿPFJw€?;*3\$"DÉÿÿ\ÊÿÿwA†C
r|YÊÿÿ¦A†C
¡œßÊÿÿ<A†C
w¼ûÊÿÿèA†C
ãÜÃËÿÿA†C
ü³Ìÿÿ8A†C
sËÌÿÿªA†C
¥<UÍÿÿzA†C
u\¯ÍÿÿoA†C
j|þÍÿÿöA†C
ñœÔÒÿÿXA†C
S¼Óÿÿ;A†C
vÜ'ÓÿÿŒA†C
‡ü“ÓÿÿˆA†C
ƒûÓÿÿ•A†C
�<pÔÿÿ¢A†C
�\òÔÿÿ”A†C
�|fÕÿÿÂA†C
½œÖÿÿ³A†C
®¼›Öÿÿ¡A†C
œÜØÿÿ›A†C
–ü—Úÿÿ2A†C
Î<\ÝÿÿÒA†C
Í\ÞÿÿPA†C
K|>àÿÿ�A†C
|œŸáÿÿWA†C
R¼ÖäÿÿA†C
	ÜÄåÿÿA†C
üÃæÿÿ7A†C
2ÚèÿÿA†C
<ÑêÿÿnA†C
i\ëÿÿA†C
Z|ëÿÿA†C
üœÿëÿÿ�A†C
‹¼oìÿÿfA†C
aÜµìÿÿŠA†C
…üíÿÿA†C
QíÿÿyA†C
t<níÿÿ¸A†C
³\îÿÿA†C
B|ííÿÿA†C
BœÔíÿÿ0A†C
k¼äíÿÿ0A†C
kÜôíÿÿ0A†C
küîÿÿ0A†C
kîÿÿ0A†C
k<\$îÿÿ0A†C
k\4îÿÿ0A†C
k|Dîÿÿ0A†C
kœTîÿÿ0A†C
k¼dîÿÿ0A†C
kÜtîÿÿ0A†C
kü„îÿÿ2A†C
m–îÿÿ2A†C
m<¨îÿÿOA†C
JD\ØïÿÿeB�BŽE �B(ŒH0†H8ƒM@r8A0A(B BBB¤ðÿÿ@À
”4 M ¨M õþÿo˜¨¸
° O `` À	ûÿÿoþÿÿopÿÿÿoðÿÿoXùÿÿo°M ö&P GCC: (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0,Jw,¾Á�(,«N0Ñº†§JwSSwœint¢	-gZJwœS‘\	sumS‘h
e(	iS‘lé�Ú§Á�(v¿8OHHCü
€kBkH{H¿VNÈ!·S'-²(·@þ){H	int
·Á-Î†ÞH>

ÞH@
Ë
Ý
ŒO�O\$G

\$\$
0~xØH³fÞ
Nøhñ
^	iø‰jÿ	k·
„ŽHd�OÅ“”
ªŠ”Ÿ
º\È0
Ê@êÊ
Ú}ØõjŽö·6û¾
üžýŽþ e
ÿ(
*0
A8
¿@
ÙH
ÉP
ãX
ô¢`
…
¨h
·p
Ù·t
qx
ìê€
Í	ø‚
f®ƒ
&¾ˆ
u%�
‘	-˜
˜	.
Ÿ	/¨
¦	0°
­	2C¸
Ä3·À
85ÄÄpš ¢ÿ¡¢L
¢¨º¦·qê\$¾Hj\$ÔHp©?ÔÉ@ÔAÔ+ù	‡¨Ê	ˆ¨”	‰¨3{06ñƒ¦þÖdðª'
\$Y!"å
\$—("A\$
BŒDèH‘U’8ž7
¦ñ¡ð)SMµÖ-°
ðÑñ¬J£/d§
‡@

\$·
Jñ»|
ïè
‰¿[
|Á+
ÀÃý
#Äý
òÆý
NÇý
‘
Éª
W
Êª(
À	Ëª0
¹Ìª8
ÖÍª@
ÎªH
ËÔÃP;Ø�+B
7ä	˜Bç™Bs
šB››B	�B.žBCŸB\ B+	@P +ÈH
¸G"	À4+îH
ÞS#	Ã4_\$	È4+%H
k%	Í4'î	Ô4c(È	Ù4+uH

eš
)u	à4+ŸH
�Ê*Ÿ	ë4+ÉH
¹®+É	5+óH
ãí,ó	 5+H

Ð-	85+GH
7Í
.G	H5ï	/%	R5È0ó	`5+›H
‹E1›	€5+ÅH6
µ�2Å	 5+ïH
ßw3ï	à5+	H
¹4		6q6î	6+X	H
H	K7X		 6¯8ó	06+—	H
‡	B	9—		B6+Á	H
±	­:Á		H6+ë	H
Û	];ë		`6›=	€6w>	°6ƒ?	à6�@	7+Y
H
I
AY
 7+ƒ
H
s
8Bƒ
87Cu	@7,DG	P7hEG	`7«Fu	p7Œ4i8Žni16�yi32�„i64’Ÿf•0^šñ
(P ¬6·–/¸œX&/yœ– ø&ý‘h¸ /œÄ ø ý‘h!€
}.Šœ Õ
\$‘h ý‘` ´	¾‘\!Wý.fœM"msgýý‘h R
ýµ‘`!Rí‡-�œŠ"msgíý‘h R
íµ‘`!N	Ë†,œÇ"msgËý‘h R
Ëµ‘`#›¶ùg,œù"num¶7‘lÿ\$#
œùù+nœA
"numœÅ‘h X	œY‘d!–Kâ)œ	 €Kù‘H 	Lù‘@ Mi‘¼ 	Ni‘¸"msgOý‘° MPµ‘¨ �Qˆ‘pS	‘`T	‘h
U^‘XV^‘\å!u
ü«'7œÄ €üù‘H 	ýÄ‘@ 	þi‘¼"msgÿý‘° Mµ‘¨ �ˆ‘¸%i^‘X%j^‘\«
ý‘`%actý‘hý!äÔŒ&œB €Ôý‘X 	Õý‘P Öi‘L"msg×ý‘@ MØµ‘¸%iÚ^‘l!Ã­~%œª €­ý‘X 	®ý‘P"msg¯ý‘H M°µ‘@%i²^‘l!W
5'"WœÅ 5µ‘¸ €6ù‘° 	7ù‘¨ 	8i‘¤"msg9ý‘˜ M:µ‘� ”
;²‘ �<ˆ‘
>^‘L?ñ‘Pï@ñ‘T&#S5Uº‘X*Vº‘`&u\$2’º‘h!]	¦ �œ> µ‘h €Å‘` 	Å‘X"msg	ý‘P M
µ‘H ”
²‘D!×8VPœÜ 	8Õ‘œ"msg9ý‘� M:µ‘ˆ ”
;V‘˜�=Ü‘@î>º‘¸„?º‘¨@º‘°ýìH!ü	%„ÒœV %Õ‘l €&Õ‘h 	'Õ‘d"msg(ý‘X M)µ‘P!v	õ±Óœ €õ‘H 	ö‘@ 	÷i‘¼"msgøý‘° Mùµ‘¨ �úˆ‘¸
ü^‘\|ý‘`ýþ‘hÕ'@î·2œe îÊ‘\ €îÊ‘X 	îÊ‘T(ðÊ‘l!Ùsä›œq €sù‘¸ 	tù‘° 	ui‘¬"msgvý‘  Mwµ‘˜ ”
x²‘¨ �yˆ‘
{^‘L|ñ‘Pï}ñ‘T&É—5’º‘X*“º‘`&�2¸º‘h!&EC¡œú Ã
EÅ‘X 	FÅ‘P Ü	Gü‘L"msgHý‘@ MIµ‘¸ ”
J²‘HàL·‘l!Œ0�³œd €0Å‘h 	1Å‘`"msg2ý‘X M3µ‘P ”
4²‘L!~ÎÂœÎ Å‘h €Å‘` 	Å‘X"msgý‘P Mµ‘H(¦ù·:”œ- €ùù‘h 	úù‘` Mûµ‘X"msgüý‘P)¾Ø˜¢œy €Øý‘h 	Ùý‘` Úi‘\)A½•œ¶ €½ý‘h 	½ý‘`)†¦{ˆœä"msg¦ý‘h*0	ŽïŒœ)”†´;œ, R
†µ‘h)ç[\Xœi ®[ý‘h R
[µ‘`!ÁföœÃ "Áå‘œ~È¾	¸7sÉ�	´7QÊ�	°7(ÍÚ‘¬&(
•å„‘°%nå„‘´{æ·‘¸Ðç·‘¼‚ç·‘@%bufèÃ‘P+X
Œ{ÉóÚ‘D+� üÚ‘H&�tÉ
Ú‘L\$ÓH!ýž÷oœ, žµ‘X (žµ‘P ª‘h%i¡„‘d!„}zœ‡ („µ‘X H„+‘T�†·‘l‡\$‘k!•qÓ
ªœÄ (qµ‘Xsª‘h!}b›
8œ ;bÅ‘X(dª‘h!r/‹	œ> (/Å‘h ”
/²‘d!Ú
	£èœŠ L	ý‘X 	i‘T%pchý‘h,á€g<œÄ-L€ý‘X.pch‚ý‘h/ºNÁ¦œ0pchNý‘håk\§N0Ñl¿8OHHCü
€kBkH{H¿VNÈ!·S'-²(·@þ){H	intÁ-É†ÙH>
H@
Ë
Ý
ŒO�O
G
\$~xØHŽHd�OÅ“?Š”J}ØõëŽö·6û¾
üžýŽþ e
ÿ(
*0
A8
¿@
ÙH
ÉP
ãX
ô#`
…
)h
·p
Ù·t
qüx
ìà€
Í	î‚
f/ƒ
&?ˆ
u%�
‘	-˜
˜	.
Ÿ	/¨
¦	0°
­	24¸
Ä3·À
85EÄpš #ÿ¡#L
¢)º¦·òk?HëUHp©?UÉ@UAU!ù	‡)Ê	ˆ)”	‰)çƒþÖdðª'
\$Y!"å
\$—("A\$
BŒDèH‘U’Á²
ÀÃ~
#Ä~
òÆ~
NÇ~
‘
ÉU
W
ÊU(
À	ËU0
¹ÌU8
ÖÍU@
ÎUH
ËÔ¾P;Ø!É¾ä	˜Éç™És
šÉ››É	�É.žÉCŸÉ\ É·
TwœZ·Ð2OœYTž22œ¸Nl22œ¬H<20œxB20œ\$<Ü10œã6¬10œq/|10œÓ)L10œ{#10œÎì00œ¼00œ8Œ00œ®\00œ¯U0œkN0œ%>I:;((
\$>:;I.?:;'I@—B:;I	4:;I
%:;II!I/\$>:;
:;I8:;	\$>
&II

:;I8:;<4:;I?<4:;I?<:;I'>I:;(>I:;:;!4G:;4:;I:;
:;I4:;I.?:;'I@–B.?:;'@—B :;I!.?:;'@–B":;I#.?:;'I@—B\$&%4:;I&'.:;'I@—B(.:;'I@–B).:;'@–B*.?:;'@–B+,.?:;'@–B-:;I.4:;I/.:;'@–B0:;I%:;II!I/\$>:;
:;I8:;	\$>
I&I

:;I8:;<4:;I?<4:;I?<>I:;(:;!>I:;(
.?:;'I@–B.:;'@–B.?:;'@—BrAû
srcperfect_numbers.cperfect_numbers.h	Jugvu‘ÉdJ‡ƒuƒuƒvYòû
test/vendor/usr/include/x86_64-linux-gnu/bits/usr/include/x86_64-linux-gnu/bits/types/usr/include/usr/lib/gcc/x86_64-linux-gnu/7/includeunity.csetjmp.h__sigset_t.hsetjmp.htypes.hstddef.hunity_internals.hlibio.hstdio.h	ÁÎ¼¬®n.®Ÿžt.®Ÿ	ž*ŸŸv<»„v
.»uX¬ö<儮[¬®1®Ÿ½®Ÿ¿ŸŸvfX¬f@åØ˟tvËvŸ½vŸ¿ŸŸžs.
ºv. Â*ŸŸ„@»„wŸL»A»…0H6F­u@v„M0Ÿƒh\$vò
f@ó“’Êʾ¿ oJJf<È䡠ŸN>þº„X®úºˆXôöºŽXuv	ò"Ê.�­.�®>vÊ.�å.�„	ɻZ.)®è°ž­Mh®‘Nf<t�=i0ŸGf'u09›f±0‚Ÿqm  hŸ\¡u09›fk0rlk򻟻Ÿå¢@»Y»Ÿ@K¼>¼ƒÚ#­® @»v¼¼»弻潼@ó»vŸ»¾¼»vŸ»¤,¼B/»vŸ¾¼»vŸ¤,¼<vžwv»»»xv»»»wY.­òô»»/»/»v¬ 6­ò¼ »»»»v¬ 	.×uòôž×žv žžužž”ÈžuÈžw »»ž»ž»ž»»f¬> .×g‘vòôh@Ûæ´#ååu1ååu2­­u3»»uu#Øžhƒ‘ƒ„»»/»»»¯hvDtfo.	<Æ !.0òòòž¬	¬
ž‚
JžJ¬‚.tY	.×gƒ„òôh@Ûæ±4»»/>»®hZqXo.	< 6×òõ\$»8»x¬
5tå,Ÿå®òô.òÖtXg[òžtXg2/2‚¬tXg1ƒ­#ػ»v¼¼ú»O¬3 —Xåòô  ö÷ÊöÚô»»»»»]¬% .×g‘vòôh@Ûæ´#ååu1ååu2­­u3»»uu#  ö÷ÊöÚôžhƒ‘ƒ„»»å»/»å»å»¯hv«tfo.	<ß 5wòõtv’ʭy 0Jþ
. °¼»/»e¬ 6¡òõtv’ʭy 0J‚þ
. qÈ ¼»Y»e¬ 	.×uuƒ„òõh@Û®¯h‡ƒh†tv’ʭy 0Jþ
. °¼»h»®/»®A 
<6 
.Ƀƒiòôfh@Ûæ±gZZ»»h»0»/»g»g»®YkXhd‚o.	<' .É1Ÿ“­”­”Ÿv3‘Éu.óòôY»®¡¼»弻潮 ½d¬ 2óº¼Y»vŸŸ¼v¬ 2óY»vŸŸ¼Ÿ@/­»!ZôYhô[Y@ƒ­@ƒ­­­­­­­®Z@KŸ»Ÿå»å»廟¼ڿ¡uÃJû
`Àà
0@”4 4Ä:¸< M ¨M °M  O P  P ñÿp°!7 P F¨M m@y M hñÿ˜ñÿ Ô4­Ù4¼à4Íë4Ù5ä 5ï85
ÿH5
R5`5+€59 57Kà5j6‡6“ 6	Ÿ06®B6ºH6Æ`6à 7ð87@7P7
4`7
Hp7\Á¦k°7{´7‹¸7›\X±´;Ë{ˆâ•˜¢+:”?2Q(P cñÿz\00¯Œ00â¼00ì00J10~L10±|10î¬10/Ü10d20˜<20¿l22Õž22ñÿ÷œDñÿ¨M °M  M 2Ä:E O [�4kÃ4x€6!�Jw�²g,ÂŒ&Ü‹	ô { P À4P "„Ò:/KÓ
ªd�³e”4{~%’®±ÓÉ¦ �â}.Šö£èg</y9}zMbâ)yP †ù+n”C¡º ÉÈ4ÖP ã 4ò@P øU0	 4e	ä›*	N00	÷oXQ ?	›
8@+P	à6 b	'"W€	P Œ	Ð2O‘	¦	.f³	7Á	°6Ò	P Þ	†,è	Í4÷	 
–/¸
ïŒ,
"	ÀH
‡-�T
ÎÂd
«'7€
VP˜
föcrtstuff.cderegister_tm_clones__do_global_dtors_auxcompleted.7698__do_global_dtors_aux_fini_array_entryframe_dummy__frame_dummy_init_array_entryunity.cUnityStrNullUnityStrSpacerUnityStrExpectedUnityStrWasUnityStrGtUnityStrLtUnityStrOrEqualUnityStrElementUnityStrByteUnityStrMemoryUnityStrDeltaUnityStrPointlessUnityStrNullPointerForExpectedUnityStrNullPointerForActualUnityStrNotUnityStrInfUnityStrNegInfUnityStrNaNUnityStrDetUnityStrInvalidFloatTraitUnityStrBreakerUnityStrResultsTestsUnityStrResultsFailuresUnityStrResultsIgnoredUnityStrDetail1NameUnityStrDetail2NameUnityPrintCharmax_scaled.3244min_scaled.3243sig_digits.3242UnityTestResultsBeginUnityTestResultsFailBeginUnityAddMsgIfSpecifiedUnityPrintExpectedAndActualStringsUnityPrintExpectedAndActualStringsLenUnityIsOneArrayNullUnityFloatsWithinUnityQuickComparetest_perfect_numbers.ctest_smallest_perfect_number_is_classified_correctlytest_medium_perfect_number_is_classified_correctlytest_large_perfect_number_is_classified_correctlytest_smallest_abundant_number_is_classified_correctlytest_medium_abundant_number_is_classified_correctlytest_large_abundant_number_is_classified_correctlytest_smallest_prime_deficient_number_is_classified_correctlytest_smallest_non_prime_deficient_number_is_classified_correctlytest_medium_deficient_number_is_classified_correctlytest_large_deficient_number_is_classified_correctlytest_edge_case_is_classified_correctlytest_zero_is_rejectedtest_negative_integer_is_rejected__FRAME_END____init_array_end_DYNAMIC__init_array_start__GNU_EH_FRAME_HDR_GLOBAL_OFFSET_TABLE___libc_csu_finiUnityStrPassUnityStrErrShorthandclassify_numberputchar@@GLIBC_2.2.5UnityFloatToPtrUnityAssertEqualStringLenUnityPrintNumberByStyle_ITM_deregisterTMCloneTableUnityStrOk_edataUnityAssertFloatsWithinUnitySetTestFileUnityPrintNumberUnsignedUnityAssertEqualNumberUnityAssertEqualString__stack_chk_fail@@GLIBC_2.4UnityAssertEqualFloatArrayUnityAssertNumbersWithinUnityDefaultTestRunUnityPrintLenUnityPrintUnityBegin__libc_start_main@@GLIBC_2.2.5UnityPrintNumberHex_setjmp@@GLIBC_2.2.5UnityAssertEqualMemory__data_startUnityNumToPtrUnityAssertGreaterOrLessOrEqualNumber__gmon_start__UnityStrFail__dso_handle_IO_stdin_usedUnitytearDown__libc_csu_initUnityAssertEqualIntArraysetUpUnityPrintMaskUnityPrintNumberUnityStrErrDoubleUnityAssertNumbersArrayWithin__bss_startmainlongjmp@@GLIBC_2.2.5UnityMessageUnityStrErr64UnityStrErrFloat__TMC_END__UnityFailUnityStrIgnore_ITM_registerTMCloneTableUnityEndUnityConcludeTest__cxa_finalize@@GLIBC_2.2.5UnityIgnoreUnityAssertBitsUnityAssertEqualStringArrayUnityAssertFloatSpecialUnityPrintFloat.symtab.strtab.shstrtab.interp.note.ABI-tag.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.init.plt.got.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.data.bss.comment.debug_aranges.debug_info.debug_abbrev.debug_line.debug_str88#TT 1tt\$Döÿÿo˜˜N¸¸ðV¨¨°^ÿÿÿoXXkþÿÿopp0z  À„B```ŽÀÀ‰ààP”00�@@R.£”4”4	© 4 4" ±Ä:Ä:ô¿¸<¸<èÉ M  MÕ¨M ¨Má°M °Mð˜ O  O`êP Pð P P8 õ0P)þ9P�
ÉP”"]sË'(x3
30[‚	h”¨ e	¤¨
¸®>``````