/* crypto.c */
#include <crypto.h>

word add_(word a, word b) {
    return (a+b);
}
word sub_(word a, word b) {
    return (a-b);
}
word mul_(word a, word b) {
    return (a*b);
}
word div_(word a, word b) {
    assert(b!=0);

    return (a/b);
}

word sqr_(word a) {
    return mul_(a,a);
}

word exp_(word a, word e) {
    word x, e_;

    for (e_=e, x=a; e_>1; e_--)
        x = mul_(x,a);

    return x;
}
