   {
     return (SNMP::ARDUINO_MIB_OID);
   }
-    
+
   /**
    * @override SNMP::MIB
    * Handle Arduino MIB objects SNMP requests. Returns true and

  return (true);
}

// Disable SD on Ethernet Shield
#define USE_ETHERNET_SHIELD
#if defined(USE_ETHERNET_SHIELD)
#include "Cosa/OutputPin.hh"
OutputPin sd(Board::D4, 1);
#endif

// Network configuration
// If WS5100 board has a MAC sticker then use here instead of this default
static const uint8_t mac[6] __PROGMEM = { 0xde, 0xad, 0xbe, 0xef, 0xfe, 0xed };
// If no DHCP set these, uncomment in var definitions, and switch to ethernet.begin() below
//#define IP 192,168,1,100
//#define SUBNET 255,255,255,0

// SNMP MIB-2 System configuration
static const char descr[] __PROGMEM = "<service description>";
static const char contact[] __PROGMEM = "<contact information>";
static const char name[] __PROGMEM = "<device name>";
static const char location[] __PROGMEM = "<device location>";

W5100 ethernet(mac);
SNMP::MIB2_SYSTEM mib2(descr, contact, name, location);
ARDUINO_MIB arduino;
SNMP snmp;

void setup()
{
  uint8_t ip[4]; // = { IP };
  uint8_t subnet[4]; // = { SUBNET };

  // Start watchdog and uart. Use uart for trace output
  uart.begin(9600);

  Watchdog::begin();

  // Start ethernet controller and request network address for hostname
#if defined(USE_FIXED_IP)
  ASSERT(ethernet.begin(ip, subnet);
#else
  ASSERT(ethernet.begin_P(PSTR("CosaSNMPAgent")));
#endif

  // Print the given or default network address
  ethernet.get_addr(ip, subnet);
  trace << PSTR("IP = ");
  INET::print_addr(trace, ip);
  trace << endl;

  // Print some memory statistics
  TRACE(free_memory());
  TRACE(sizeof(W5100));
