modifier isAvailable(bytes memory domain, bytes12 topLevel) {
  
  // @dev - get the domain hash by the domain name and the TLD
  bytes32 domainHash = getDomainHash(domain, topLevel);
  
  // @dev - check whether the domain name is available by checking if is expired
  // if it was not registered at all the `expires` property will be default: 0x00
  require(
    domainNames[domainHash].expires < block.timestamp,
    "Domain name is not available."
  );
  
  // continue with execution
  _;
}