#include <pthread.h>

typedef struct {
  int value;
  pthread_mutex_t mutex[1];
} Lock;

Lock *make_lock ();
void acquire (Lock *lock);
void release (Lock *lock);
