#include <stdio.h>
#include <crypto_auth.h>
#include <crypto_auth_hmacsha256.h>
#include <crypto_auth_hmacsha512256.h>
#include <crypto_box_curve25519xsalsa20poly1305.h>
#include <crypto_box.h>
#include <crypto_core_hsalsa20.h>
#include <crypto_core_salsa2012.h>
#include <crypto_core_salsa208.h>
#include <crypto_core_salsa20.h>
#include <crypto_hashblocks.h>
#include <crypto_hashblocks_sha256.h>
#include <crypto_hashblocks_sha512.h>
#include <crypto_hash.h>
#include <crypto_hash_sha256.h>
#include <crypto_hash_sha512.h>
#include <crypto_int16.h>
#include <crypto_int8.h>
#include <crypto_onetimeauth.h>
#include <crypto_onetimeauth_poly1305.h>
#include <crypto_scalarmult_curve25519.h>
#include <crypto_secretbox.h>
#include <crypto_secretbox_xsalsa20poly1305.h>
#include <crypto_sign_edwards25519sha512batch.h>
#include <crypto_sign.h>
#include <crypto_stream.h>
#include <crypto_stream_salsa2012.h>
#include <crypto_stream_salsa208.h>
#include <crypto_stream_salsa20.h>
#include <crypto_stream_xsalsa20.h>
#include <crypto_uint16.h>
#include <crypto_uint32.h>
#include <crypto_uint64.h>
#include <crypto_uint8.h>
#include <crypto_verify_16.h>
#include <crypto_verify_32.h>

int main(void) {

    /* print implementation */
    printf("%s\n", crypto_auth_IMPLEMENTATION);
    printf("%s\n", crypto_auth_hmacsha256_IMPLEMENTATION);
    printf("%s\n", crypto_auth_hmacsha512256_IMPLEMENTATION);
    printf("%s\n", crypto_box_curve25519xsalsa20poly1305_IMPLEMENTATION);
    printf("%s\n", crypto_box_IMPLEMENTATION);
    printf("%s\n", crypto_core_hsalsa20_IMPLEMENTATION);
    printf("%s\n", crypto_core_salsa2012_IMPLEMENTATION);
    printf("%s\n", crypto_core_salsa208_IMPLEMENTATION);
    printf("%s\n", crypto_core_salsa20_IMPLEMENTATION);
    printf("%s\n", crypto_hashblocks_IMPLEMENTATION);
    printf("%s\n", crypto_hashblocks_sha256_IMPLEMENTATION);
    printf("%s\n", crypto_hashblocks_sha512_IMPLEMENTATION);
    printf("%s\n", crypto_hash_IMPLEMENTATION);
    printf("%s\n", crypto_hash_sha256_IMPLEMENTATION);
    printf("%s\n", crypto_hash_sha512_IMPLEMENTATION);
    printf("%s\n", crypto_onetimeauth_IMPLEMENTATION);
    printf("%s\n", crypto_onetimeauth_poly1305_IMPLEMENTATION);
    printf("%s\n", crypto_scalarmult_curve25519_IMPLEMENTATION);
    printf("%s\n", crypto_secretbox_IMPLEMENTATION);
    printf("%s\n", crypto_secretbox_xsalsa20poly1305_IMPLEMENTATION);
    printf("%s\n", crypto_sign_edwards25519sha512batch_IMPLEMENTATION);
    printf("%s\n", crypto_sign_IMPLEMENTATION);
    printf("%s\n", crypto_stream_IMPLEMENTATION);
    printf("%s\n", crypto_stream_salsa2012_IMPLEMENTATION);
    printf("%s\n", crypto_stream_salsa208_IMPLEMENTATION);
    printf("%s\n", crypto_stream_salsa20_IMPLEMENTATION);
    printf("%s\n", crypto_stream_xsalsa20_IMPLEMENTATION);
    printf("%s\n", crypto_verify_16_IMPLEMENTATION);
    printf("%s\n", crypto_verify_32_IMPLEMENTATION);
    return 0;
}
