text:
Purposes:
 * abstraction layer for data exchange
 * uniform interface to:
   - $http (via ngResource)
   - IndexedDB/other storages (via ngLovefield); see [Lovefield Data Store](https://github.com/google/lovefield/blob/master/docs/spec/02_data_store.md) for details
   - localStorage
   - sessionStorage
 * caching data (fetch from remote unless already stored locally)

## Process Overview

### Usecases

#### Remote Data Storage

Creates service for `$resource`.

#### Local Data Storage

Local Persistent Data Storage (`localResource`) uses `localStorageResource` a
`$resource`-like featured service.

#### Cache remote data locally

If query (`.query()`, `.get()`) to `localPDS` successful then result returned.
Otherwise associated `$resource` inquired.

If remote inquiry successful then result
 - stored with `localResource`
 - return to client.

Otherwise error returned.

## Storage Management Specs

All services are promise-based.

### `PersistentDataService`

Data processing abstraction layer.

Holds a list of resources supplemented with standard methods:
- get()
- query()
- save() - overloaded so either create() or update() invoked based on `id`
- create() - added to `$resource` automatically (with method `POST`)
- update() - added to `$resource` automatically (with method `PUT`, isArray : false)
- remove()
- ~~delete()~~ (due to incompatibility with IE)

Every resource is associated with Remote and/or Local Data Storage via
`$resource` or `localResource` respectively.

If both `$resource` and `localResource` specified for a resource then
remote data caching strategy implemented. No upload to remote server
provisioned for. Thus remote server is used for fetching data only.

General workflow (simplified for the sake of readability):
```
if (resource.resourceName.localResource) {
    actionResult = dataResource.resourceName.localResource.action();
    if (action==get|query && actionResult==error
        && dataResource.resourceName.remoteResource) {
        // try to get data from remote
        actionResult = dataResource.resourceName.remoteResource.action();
        if (actionResult) {
            dataResource.resourceName.localResource.save();
        }
    }
    return actionResult;
} else {
    actionResult = resource.resourceName.remoteResource.action();
    return actionResult;
}
```

On ad hoc basis remote query can be forced (localResource not used)
and not cached.

On ad hoc basis update from remote can be forced:
 - hard force = if remote fails then query fails
 - soft force = if remote fails then query fails if only local fails

Local storage is served with lovefield/ng-lovefield, which also receives
instructions for actions on database set-up/upgrade.

At construction stage `PDS` supplied with configuration to set-up remote
resources and local storage:
- remoteResource ($resource) url and other settings
- lovefield tables
- localResource associations with tables
- binding of remote and local resources with data resources

### Services Graph

```
{App}
    |
    \-- PersistentDataService
        |-- remoteResource
        |   \-- [$resource] -- dependency
        |       \-- [$http] -- dependency
        \-- localResource
            \-- localDB
                \-- [ng-lovefield] -- dependency
                    \-- [lovefield] -- dependency
```

## Future Request

### Sync

Make cache synced also to remote server.

See [angular-cached-resource](https://github.com/goodeggs/angular-cached-resource).

### Id Reservation

An app server supplies client (token) with a set (range) of ids to use.

Each id is unique per entity. Tokens are not part of entity id, token
denominates data owner.

This enables bi-directional sync, sync across devices transfer of
 data possession.

#### Further development on ids

Each id (not just ranges) has its owner identified by token.

An hierarchy of owners (delegation with limited powers) can be built.

## Other Related Resources

[How to force AngularJS resource resolution with ui-router [2014-03-18]](http://www.jvandemo.com/how-to-resolve-angularjs-resources-with-ui-router/)

[Extending Angular's $resource Service for a Consistent API [2014-06-03]](https://objectpartners.com/2014/06/03/extending-angulars-resource-service-for-a-consistent-api/) +
[gist](https://gist.github.com/brucecoddington/92a8d4b92478573d0f42)

[Injecting a mock into an AngularJS service [2013-02-08..2016-04-13]](http://stackoverflow.com/questions/14773269/injecting-a-mock-into-an-angularjs-service) +
[gist](https://gist.github.com/alicial/7681791)

[$httpBackend [ng 1.5.1]](https://code.angularjs.org/1.5.1/docs/api/ngMock/service/$httpBackend)

[Can angular resource do a bulk restful operation? [2013-06-18..2014-02-21]](http://stackoverflow.com/questions/17179416/can-angular-resource-do-a-bulk-restful-operation)

### Related Modules

[angular-webstorage [2013]](http://ngmodules.org/modules/angular-webstorage) +
[github [2015-12-20]](https://github.com/fredricrylander/angular-webstorage)

[ngStorage [2013]](http://ngmodules.org/modules/ngStorage) +
[github [2016-06-08]](https://github.com/gsklee/ngStorage)

[angular-storage by Auth0 [2013]](http://ngmodules.org/modules/angular-storage) +
[github [2016-04-03]](https://github.com/auth0/angular-storage)

More @ [ngmodules tag:localStorage](http://ngmodules.org/tags/localStorage)


text: Database package providers database adapters.

redpajama_set_name: RedPajamaGithub


text:
from django.db import models
from django.db.models.signals import pre_save
from django.utils import timezone as django_timezone
from jsonfield import JSONField as JSONFieldThirdParty

from dirtyfields import DirtyFieldsMixin
from dirtyfields.compare import timezone_support_compare
from tests.utils import is_postgresql_env_with_jsonb_field

class ModelTest(DirtyFieldsMixin, models.Model):
    """A simple test model to test dirty fields mixin with"""
    boolean = models.BooleanField(default=True)
    characters = models.CharField(blank=True, max_length=80)

class ModelWithDecimalFieldTest(DirtyFieldsMixin, models.Model):
    decimal_field = models.DecimalField(decimal_places=2, max_digits=10)

class ModelWithForeignKeyTest(DirtyFieldsMixin, models.Model):
    fkey = models.ForeignKey(ModelTest, on_delete=models.CASCADE)

class MixedFieldsModelTest(DirtyFieldsMixin, models.Model):
    fkey = models.ForeignKey(ModelTest, on_delete=models.CASCADE)
    characters = models.CharField(blank=True, max_length=80)

class ModelWithOneToOneFieldTest(DirtyFieldsMixin, models.Model):
    o2o = models.OneToOneField(ModelTest, on_delete=models.CASCADE)

class ModelWithNonEditableFieldsTest(DirtyFieldsMixin, models.Model):
    dt = models.DateTimeField(auto_now_add=True)
    characters = models.CharField(blank=True, max_length=80,
                                  editable=False)
    boolean = models.BooleanField(default=True)

class ModelWithSelfForeignKeyTest(DirtyFieldsMixin, models.Model):
    fkey = models.ForeignKey("self", blank=True, null=True, on_delete=models.CASCADE)

class OrdinaryModelTest(models.Model):
    boolean = models.BooleanField(default=True)
    characters = models.CharField(blank=True, max_length=80)

class OrdinaryModelWithForeignKeyTest(models.Model):
    fkey = models.ForeignKey(OrdinaryModelTest, on_delete=models.CASCADE)

class SubclassModelTest(ModelTest):
    pass

class ExpressionModelTest(DirtyFieldsMixin, models.Model):
    counter = models.IntegerField(default=0)

class DatetimeModelTest(DirtyFieldsMixin, models.Model):
    compare_function = (timezone_support_compare, {})
    datetime_field = models.DateTimeField(default=django_timezone.now)

class CurrentDatetimeModelTest(DirtyFieldsMixin, models.Model):
    compare_function = (
        timezone_support_compare,
        {'timezone_to_set': django_timezone.get_current_timezone()},
    )
    datetime_field = models.DateTimeField(default=django_timezone.now)

class Many2ManyModelTest(DirtyFieldsMixin, models.Model):
    m2m_field = models.ManyToManyField(ModelTest)
    ENABLE_M2M_CHECK = True

class Many2ManyWithoutMany2ManyModeEnabledModelTest(DirtyFieldsMixin, models.Model):
    m2m_field = models.ManyToManyField(ModelTest)

class ModelWithCustomPKTest(DirtyFieldsMixin, models.Model):
    custom_primary_key = models.CharField(max_length=80, primary_key=True)

class M2MModelWithCustomPKOnM2MTest(DirtyFieldsMixin, models.Model):
    m2m_field = models.ManyToManyField(ModelWithCustomPKTest)

class WithPreSaveSignalModelTest(DirtyFieldsMixin, models.Model):
    data = models.CharField(max_length=255)
    data_updated_on_presave = models.CharField(max_length=255, blank=True, null=True)

    @staticmethod
    def pre_save(instance, *args, **kwargs):
        dirty_fields = instance.get_dirty_fields()
        # only works for case2
        if 'data' in dirty_fields:
            if 'specific_value' in instance.data:
                instance.data_updated_on_presave = 'presave_value'

pre_save.connect(
    WithPreSaveSignalModelTest.pre_save,
    sender=WithPreSaveSignalModelTest,
    dispatch_uid="WithPreSaveSignalModelTest__pre_save",
)

class ModelWithoutM2MCheckTest(DirtyFieldsMixin, models.Model):
    characters = models.CharField(blank=True, max_length=80)
    ENABLE_M2M_CHECK = False

class DoubleForeignKeyModelTest(DirtyFieldsMixin, models.Model):
    fkey1 = models.ForeignKey(ModelTest, on_delete=models.CASCADE)
    fkey2 = models.ForeignKey(ModelTest, null=True, related_name='fkey2',
                              on_delete=models.CASCADE)

if is_postgresql_env_with_jsonb_field():
    from django.contrib.postgres.fields import JSONField as JSONBField

    class ModelWithJSONBFieldTest(DirtyFieldsMixin, models.Model):
        jsonb_field = JSONBField()

class ModelWithJSONFieldThirdPartyTest(DirtyFieldsMixin, models.Model):
    json_field_third_party = JSONFieldThirdParty()

class ModelWithSpecifiedFieldsTest(DirtyFieldsMixin, models.Model):
    boolean1 = models.BooleanField(default=True)
    boolean2 = models.BooleanField(default=True)
    FIELDS_TO_CHECK = ['boolean1']

class ModelWithSpecifiedFieldsAndForeignKeyTest(DirtyFieldsMixin, models.Model):
    boolean1 = models.BooleanField(default=True)
    boolean2 = models.BooleanField(default=True)
    fk_field = models.OneToOneField(ModelTest, null=True,
                                    on_delete=models.CASCADE)
    FIELDS_TO_CHECK = ['fk_field']

class ModelWithSpecifiedFieldsAndForeignKeyTest2(ModelWithSpecifiedFieldsAndForeignKeyTest):
    FIELDS_TO_CHECK = ['fk_field_id']

class ModelWithM2MAndSpecifiedFieldsTest(DirtyFieldsMixin, models.Model):
    m2m1 = models.ManyToManyField(ModelTest)
    m2m2 = models.ManyToManyField(ModelTest)
    ENABLE_M2M_CHECK = True
    FIELDS_TO_CHECK = ['m2m1']

class BinaryModelTest(DirtyFieldsMixin, models.Model):
    bytea = models.BinaryField()

class FileFieldModel(DirtyFieldsMixin, models.Model):
    file1 = models.FileField(upload_to="file1/")


text:
// Copyright Dirk Lemstra https://github.com/dlemstra/Magick.NET.
// Licensed under the Apache License, Version 2.0.

using System.Collections.Generic;

namespace ImageMagick.Formats
{
    /// <summary>
    /// Class for defines that are used when a <see cref="MagickFormat.Jxl"/> image is written.
    /// </summary>
    public sealed class JxlWriteDefines : IWriteDefines
    {
        /// <summary>
        /// Gets or sets the jpeg-xl encoding effort. Valid values are in the range of 3 (falcon) to 9 (tortois) (jxl:effort).
        /// </summary>
        public int? Effort { get; set; }

        /// <summary>
        /// Gets the format where the defines are for.
        /// </summary>
        public MagickFormat Format
            => MagickFormat.Jxl;

        /// <summary>
        /// Gets the defines that should be set as a define on an image.
        /// </summary>
        public IEnumerable<IDefine> Defines
        {
            get
            {
                if (Effort.HasValue)
                    yield return new MagickDefine(Format, "effort", Effort.Value);
            }
        }
    }
}


text:
#!/usr/bin/env python
# Copyright (c) 2012 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

"""Verifies that GRD resource files define all the strings used by a given
set of source files. For file formats where it is not possible to infer which
strings represent message identifiers, localized strings should be explicitly
annotated with the string "i18n-content", for example:

  LocalizeString(/*i18n-content*/"PRODUCT_NAME");

This script also recognises localized strings in HTML and manifest.json files:

  HTML:          <span i18n-content="PRODUCT_NAME"></span>
              or ...i18n-value-name-1="BUTTON_NAME"...
  manifest.json: __MSG_PRODUCT_NAME__

Note that these forms must be exact; extra spaces are not permitted, though
either single or double quotes are recognized.

In addition, the script checks that all the messages are still in use; if
this is not the case then a warning is issued, but the script still succeeds.
"""

import json
import os
import optparse
import re
import sys
import xml.dom.minidom as minidom

WARNING_MESSAGE = """
To remove this warning, either remove the unused tags from
resource files, add the files that use the tags listed above to
remoting.gyp, or annotate existing uses of those tags with the
prefix /*i18n-content*/
"""

def LoadTagsFromGrd(filename):
  xml = minidom.parse(filename)
  tags = []
  msgs_and_structs = xml.getElementsByTagName("message")
  msgs_and_structs.extend(xml.getElementsByTagName("structure"))
  for res in msgs_and_structs:
    name = res.getAttribute("name")
    if not name or not name.startswith("IDR_"):
      raise Exception("Tag name doesn't start with IDR_: %s" % name)
    tags.append(name[4:])
  return tags

def ExtractTagFromLine(file_type, line):
  """Extract a tag from a line of HTML, C++, JS or JSON."""
  if file_type == "html":
    # HTML-style (tags)
    m = re.search('i18n-content=[\'"]([^\'"]*)[\'"]', line)
    if m: return m.group(1)
    # HTML-style (substitutions)
    m = re.search('i18n-value-name-[1-9]=[\'"]([^\'"]*)[\'"]', line)
    if m: return m.group(1)
  elif file_type == 'js':
    # Javascript style
    m = re.search('/\*i18n-content\*/[\'"]([^\`"]*)[\'"]', line)
    if m: return m.group(1)
  elif file_type == 'cc' or file_type == 'mm':
    # C++ style
    m = re.search('IDR_([A-Z0-9_]*)', line)
    if m: return m.group(1)
    m = re.search('/\*i18n-content\*/["]([^\`"]*)["]', line)
    if m: return m.group(1)
  elif file_type == 'json':
    # Manifest style
    m = re.search('__MSG_(.*)__', line)
    if m: return m.group(1)
  elif file_type == 'jinja2':
    # Jinja2 template file
    m = re.search('\{\%\s+trans\s+\%\}([A-Z0-9_]+)\{\%\s+endtrans\s+\%\}', line)
    if m: return m.group(1)
  return None

def VerifyFile(filename, messages, used_tags):
  """
  Parse |filename|, looking for tags and report any that are not included in
  |messages|. Return True if all tags are present and correct, or False if
  any are missing. If no tags are found, print a warning message and return
  True.
  """

  base_name, extension = os.path.splitext(filename)
  extension = extension[1:]
  if extension not in ['js', 'cc', 'html', 'json', 'jinja2', 'mm']:
    raise Exception("Unknown file type: %s" % extension)

  result = True
  matches = False
  f = open(filename, 'r')
  lines = f.readlines()
  for i in xrange(0, len(lines)):
    tag = ExtractTagFromLine(extension, lines[i])
    if tag:
      tag = tag.upper()
      used_tags.add(tag)
      matches = True
      if not tag in messages:
        result = False
        print '%s/%s:%d: error: Undefined tag: %s' % \
            (os.getcwd(), filename, i + 1, tag)
  if not matches:
    print '%s/%s:0: warning: No tags found' % (os.getcwd(), filename)
  f.close()
  return result

def main():
  parser = optparse.OptionParser(
      usage='Usage: %prog [options...] [source_file...]')
  parser.add_option('-t', '--touch', dest='touch',
                    help='File to touch when finished.')
  parser.add_option('-r', '--grd', dest='grd', action='append',
                    help='grd file')

  options, args = parser.parse_args()
  if not options.touch:
    print '-t is not specified.'
    return 1
  if len(options.grd) == 0 or len(args) == 0:
    print 'At least one GRD file needs to be specified.'
    return 1

  resources = []
  for f in options.grd:
    resources.extend(LoadTagsFromGrd(f))

  used_tags = set([])
  exit_code = 0
  for f in args:
    if not VerifyFile(f, resources, used_tags):
      exit_code = 1

  warnings = False
  for tag in resources:
    if tag not in used_tags:
      print ('%s/%s:0: warning: %s is defined but not used') % \
          (os.getcwd(), sys.argv[2], tag)
      warnings = True
  if warnings:
    print WARNING_MESSAGE

  if exit_code == 0:
    f = open(options.touch, 'a')
    f.close()
    os.utime(options.touch, None)

  return exit_code

if __name__ == '__main__':
  sys.exit(main())


text:
void Packet <PACKET_CHOOSE_TALK_OPTION>::onReceive(const ENetEvent &event)
{
    int option = -1;
    sscanf((char*)event.packet->data, "%*c %d", &option);

    bool optionAllowed = true;
    if(Master::getInstance().Player[(int)event.peer->data].NPCInteraction.type == NPC_INTERACTION_TYPE_TALK) {
        _assert_return(Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex >= 0 &&
                       Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex < (int)Master::getInstance().NPC.size(),
                       Master::getInstance().Player[(int)event.peer->data].name.c_str(),
                       (int)event.peer->data,
                       "NPCInteraction.NPCIndex out of bounds in processPacket_chooseTalkOption.");

        if(Master::getInstance().NPC[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex].NPCType < 0) {
            Master::getInstance().Player[(int)event.peer->data].NPCInteraction.type = NPC_INTERACTION_TYPE_NONE;
            return;
        }

        _assert_return(Master::getInstance().NPC[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex].NPCType < (int)Master::getInstance().NPCType.size(),
                       Master::getInstance().Player[(int)event.peer->data].name.c_str(),
                       (int)event.peer->data,
                       "NPC type index out of bounds in processPacket_chooseTalkOption.");
        _assert_return(Master::getInstance().Player[(int)event.peer->data].NPCInteraction.dialogueBlock >= 0 &&
                       Master::getInstance().Player[(int)event.peer->data].NPCInteraction.dialogueBlock < (int)Master::getInstance().NPCType[Master::getInstance().NPC[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex].NPCType].dialogueBlock.size(),
                       Master::getInstance().Player[(int)event.peer->data].name.c_str(),
                       (int)event.peer->data,
                       "Dialogue block out of bounds in processPacket_chooseTalkOption.");
    }

    if(Master::getInstance().Player[(int)event.peer->data].NPCInteraction.type != NPC_INTERACTION_TYPE_TALK)
        optionAllowed = false;
    else if(option < 0 || option >= (int)Master::getInstance().NPCType[Master::getInstance().NPC[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex].NPCType].dialogueBlock[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.dialogueBlock].option.size())
        optionAllowed = false;
    else {
        NPCTypeClass::DialogueBlockClass::OptionClass *option_p;
        option_p = &Master::getInstance().NPCType[Master::getInstance().NPC[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex].NPCType].dialogueBlock[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.dialogueBlock].option[option];
        if(option_p->requiredQuestProgressIndex >= 0) {
            _assert_return(option_p->requiredQuestProgressIndex < (int)Master::getInstance().Quest.size(),
                           Master::getInstance().Player[(int)event.peer->data].name.c_str(),
                           (int)event.peer->data,
                           "Dialogue option required quest progress index out of bounds in processPacket_chooseTalkOption.");
            if(Master::getInstance().Player[(int)event.peer->data].questProgress[option_p->requiredQuestProgressIndex] < option_p->requiredQuestProgressFrom ||
               Master::getInstance().Player[(int)event.peer->data].questProgress[option_p->requiredQuestProgressIndex] > option_p->requiredQuestProgressTo)
                optionAllowed = false;
        }
    }
    if(optionAllowed) {
        bool startTrade = false;
        int tradeNPCIndex = Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex;

        if(Master::getInstance().NPCType[Master::getInstance().NPC[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex].NPCType].dialogueBlock[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.dialogueBlock].option[option].startTrade) {
            startTrade = true;
        }
        Master::getInstance().Player[(int)event.peer->data].NPCInteraction.dialogueBlock = Master::getInstance().NPCType[Master::getInstance().NPC[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex].NPCType].dialogueBlock[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.dialogueBlock].option[option].leadToBlock;
        _assert_return(Master::getInstance().Player[(int)event.peer->data].NPCInteraction.dialogueBlock < (int)Master::getInstance().NPCType[Master::getInstance().NPC[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex].NPCType].dialogueBlock.size(),
                       Master::getInstance().Player[(int)event.peer->data].name.c_str(),
                       (int)event.peer->data,
                       "Dialogue block after change out of bounds in processPacket_chooseTalkOption.");
        if(Master::getInstance().Player[(int)event.peer->data].NPCInteraction.dialogueBlock < 0) {
            Master::getInstance().endNPCInteraction(Master::getInstance().Player[(int)event.peer->data]);
        }
        else if(Master::getInstance().NPCType[Master::getInstance().NPC[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex].NPCType].dialogueBlock[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.dialogueBlock].scriptIndex >= 0) {
            _assert_return(Master::getInstance().NPCType[Master::getInstance().NPC[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex].NPCType].dialogueBlock[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.dialogueBlock].scriptIndex
                           < (int)Master::getInstance().Script.size(),
                           Master::getInstance().Player[(int)event.peer->data].name.c_str(),
                           (int)event.peer->data,
                           "Script index out of bounds in processPacket_chooseTalkOption.");
            Master::getInstance().runScript((int)event.peer->data, Master::getInstance().NPCType[Master::getInstance().NPC[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex].NPCType].dialogueBlock[Master::getInstance().Player[(int)event.peer->data].NPCInteraction.dialogueBlock].scriptIndex);
        }

        if(startTrade) {
            if(Master::getInstance().Player[(int)event.peer->data].NPCInteraction.type == NPC_INTERACTION_TYPE_TALK) {
                Master::getInstance().endNPCInteraction(M.Player[(int)event.peer->data]);
            }
            Master::getInstance().Player[(int)event.peer->data].NPCInteraction.type = NPC_INTERACTION_TYPE_TRADE;
            Master::getInstance().Player[(int)event.peer->data].NPCInteraction.NPCIndex = tradeNPCIndex;

            std::string packet = Packet <PACKET_TRADE_WITH_NPC_OBJECTS_LIST>::construct(M.Player[(int)event.peer->data]);
            M.Player[(int)event.peer->data].sendPacket(packet);
        }

        if(Master::getInstance().Player[(int)event.peer->data].NPCInteraction.type == NPC_INTERACTION_TYPE_TALK) {
            std::string packet = Packet <PACKET_CURRENT_DIALOGUE_BLOCK>::construct(M.Player[(int)event.peer->data]);
            M.Player[(int)event.peer->data].sendPacket(packet);
        }
    }
}


text:
import variables from '../../style/themes/default';
import { StyleSheet } from 'react-native';

const grid = 4;
export default StyleSheet.create({

  head_default_s: {
    width: 18,
    height: 18,
    backgroundColor: variables.fill_base,
    borderRadius: 18,
    borderWidth: variables.border_width_lg,
    borderColor: variables.brand_primary,
    borderStyle: 'solid',
  },
  head_blue_s: {
    borderColor: variables.brand_primary,
  },
  head_gray_s: {
    borderColor: variables.color_text_placeholder,
  },
  head_red_s: {
    borderColor: variables.brand_error,
  },
  icon_s: {
    width: 14,
    height: 14,
  },

  head_default_l: {
    width: 24,
    height: 24,
    backgroundColor: variables.fill_base,
    borderRadius: 18,
    borderWidth: variables.border_width_lg,
    borderColor: variables.brand_primary,
    borderStyle: 'solid',
  },
  head_blue_l: {
    borderColor: variables.brand_primary,
    backgroundColor: variables.brand_primary,
  },
  head_gray_l: {
    borderColor: variables.color_text_placeholder,
    backgroundColor: variables.color_text_placeholder,
  },
  head_red_l: {
    borderColor: variables.brand_error,
    backgroundColor: variables.brand_error,
  },
  tail_default_l: {
    width: variables.border_width_lg,
    height: 30,
    marginLeft: 11,
  },
  icon_l: {
    width: 20,
    height: 20,
  },
  tail_default_s: {
    width: variables.border_width_lg,
    height: 30,
    marginLeft: 2 * grid,
  },
  tail_gray: {
    backgroundColor: variables.color_text_placeholder,
  },
  tail_blue: {
    backgroundColor: variables.brand_primary,
  },
  tail_error: {
    backgroundColor: variables.brand_error,
  },
  tail_last: {
    backgroundColor: 'transparent',
  },
  content_s: {
    paddingLeft: variables.h_spacing_md,
  },
  content_l: {
    paddingLeft: variables.h_spacing_lg,
  },
  title_s: {
    fontWeight: 'bold',
    fontSize: variables.font_size_caption,
    paddingBottom: variables.v_spacing_md,
    color: variables.color_text_base,
  },
  description_s: {
    fontSize: variables.font_size_caption_sm,
    color: variables.color_text_base,
  },
  title_l: {
    fontWeight: 'bold',
    fontSize: variables.font_size_heading,
    paddingBottom: variables.v_spacing_md,
    color: variables.color_text_base,
  },
  description_l: {
    fontSize: variables.font_size_subhead,
    color: variables.color_text_base,
  },

});


text:
When looking closely at Augmented Reality, i came to realize that AR is possible using today devices.
So it can be deployed to the mass today.
There is no need to wait for some big technology discovery to happen
and then wait some more for it to be distributed.
To run on today devices is definitely an important feature.

Let's see what would be a *minimal device for AR*...
Here are some requirements
* AR requires to localize the user in the space she or he is moving in
* AR requires to display 3d, the 'augmented content', on top of the
  current reality.

### About device localisations
In order to display augmented content on top of our reality, AR devices
  need to localise itself in this reality.
Let's how to do that with current tech

**Markers**
* Simple one is to use the camera of your phone and recognize
  markers in the images.
  Thus you know the position of the phone related to the marker which is in our reality
* PRO: it is available now and it is wellknown technology
* CON: it requires to have a marker in our reality. So you have to print it
  and to place it in your reality. It is a burden.
* CON: To recognize the marker consumes significant CPU resources.
  There are a lot of images in the video stream from the camera.
  A phone got a limited amount of CPU power
* PRO: provide orientation/translation of the device relatively to the marker.

**API for Devices orientations**
* Devices orientation is directly available from a [standard w3c API](http://www.w3.org/TR/orientation-event/)
* One could say it is the same for devices location API,
  called [Geolocation API](http://dev.w3.org/geo/api/spec-source.html).
  Nevertheless devices location typically provided in mobile is quite inprecise
  For sure not precise enougth for augmented reality.
* Device orientations API provides usable informations tho, even if limited.
* So you need to develop the augmented content so it fits within those limits.
  What about a UI which will be displayed 'around' the user ?

### Old notes
* Augmented reality minimal devices is surprisingly simple to produce.
  It is in fact very reachable with current technology. Something like tango phones.
  TODO opaque screen,  depth sensors. Depth sensor is the newest.
  Kinect has been doing it for years.
  Leap motion is more recent but still is 2 years old.
  Now everybody seems to move in this direction
* What about a device like an iPad but with see thru screen ?
  With some strong padding around the screen. Like iPad safe ghetto cover. The batteries and other hardware hidden in the handles. Style isn't too classy but it fits the
  utility look. And it is robust so for yet another utility requirement.
* augmented reality is a lot easier when it comes to latency.
  Augmented reality content is likely something small in the middle of current reality.
  It allows see thru screen. No strong requirement on latency.
* Performance like 15 fps is usable in this specific context.

**Possible improvement: a see-thru screen**


text:
namespace PlacesToEat.Tools.Infrastructure
{
    using System;

    using Contracts;

    public class Utilities : IUtilities
    {
        public DateTime GetEndOfTheWeek(DateTime today)
        {
            DateTime baseDate = today.Date;
            DateTime thisWeekEnd = baseDate.AddDays(8 - (int)today.DayOfWeek).AddTicks(-1);

            return thisWeekEnd;
        }

        public DateTime GetStartOfTheWeek(DateTime today)
        {
            DateTime baseDate = today.Date;
            DateTime thisWeekStart = today.AddDays(-(int)today.DayOfWeek + 1);

            return thisWeekStart;
        }
    }
}


text:
package azkaban.webapp.servlet;

import static org.junit.Assert.assertEquals;

import java.util.HashMap;
import java.util.Map;
import org.junit.Test;

/**
 * Test class for azkaban.webapp.servlet.WebUtils
 */
public class WebUtilsTest {

  @Test
  public void testWhenNoXForwardedForHeaderUseClientIp() {

    final String clientIp = "127.0.0.1:10000";
    final Map<String, String> headers = new HashMap<>();
    final String ip = WebUtils.getRealClientIpAddr(headers, clientIp);

    assertEquals(ip, "127.0.0.1");
  }

  @Test
  public void testWhenClientIpNoPort() {

    final String clientIp = "192.168.1.1";
    final Map<String, String> headers = new HashMap<>();
    final String ip = WebUtils.getRealClientIpAddr(headers, clientIp);

    assertEquals(ip, "192.168.1.1");
  }

  @Test
  public void testWhenXForwardedForHeaderUseHeader() {

    final String clientIp = "127.0.0.1:10000";
    final String upstreamIp = "192.168.1.1:10000";
    final Map<String, String> headers = new HashMap<>();

    headers.put("X-Forwarded-For", upstreamIp);

    final String ip = WebUtils.getRealClientIpAddr(headers, clientIp);

    assertEquals(ip, "192.168.1.1");
  }

  @Test
  public void testWhenXForwardedForHeaderMultipleUpstreamsUseHeader() {

    final String clientIp = "127.0.0.1:10000";
    final String upstreamIp = "192.168.1.1:10000";
    final Map<String, String> headers = new HashMap<>();

    headers.put("X-Forwarded-For", upstreamIp + ",127.0.0.1,55.55.55.55");

    final String ip = WebUtils.getRealClientIpAddr(headers, clientIp);

    assertEquals(ip, "192.168.1.1");
  }

}


text:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<TITLE>
PostMethod
</TITLE>

<META NAME="date" CONTENT="2013-10-10">

<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">

      Overview
      Package
    Class
      Use
      Tree
      Deprecated
      Index
      Help

 PREV CLASS
 NEXT CLASS

  FRAMES
 NO FRAMES

  All Classes

  SUMMARY: NESTED | FIELD | CONSTR | METHOD

DETAIL: FIELD | CONSTR | METHOD

com.sola.instagram.io

Class PostMethod

java.lang.Object
  com.sola.instagram.io.APIMethod
      com.sola.instagram.io.PostMethod

public class PostMethod
extends APIMethod

Constructor Summary

PostMethod()

PostMethod(java.lang.String proxyAddress,
           int proxyPort)

Method Summary

 java.util.Map<java.lang.String,java.lang.Object>
getPostParameters()

 PostMethod
setPostParameters(java.util.Map<java.lang.String,java.lang.Object> postParameters)

Methods inherited from class com.sola.instagram.io.APIMethod

call, getMethodUri, getType, hasProxy, setMethodURI

Methods inherited from class java.lang.Object

equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail

PostMethod

public PostMethod()

PostMethod

public PostMethod(java.lang.String proxyAddress,
                  int proxyPort)

Method Detail

getPostParameters

public java.util.Map<java.lang.String,java.lang.Object> getPostParameters()

setPostParameters

public PostMethod setPostParameters(java.util.Map<java.lang.String,java.lang.Object> postParameters)

      Overview
      Package
    Class
      Use
      Tree
      Deprecated
      Index
      Help

 PREV CLASS
 NEXT CLASS

  FRAMES
 NO FRAMES

  All Classes

  SUMMARY: NESTED | FIELD | CONSTR | METHOD

DETAIL: FIELD | CONSTR | METHOD


text:
"""Simple example that shows how to manually connect to an Apple TV."""
import asyncio

from pyatv import conf, connect
from pyatv.const import Protocol

# Enter config used to connect
NAME = "My Apple TV"
ADDRESS = "10.0.10.22"
HSGID = "00000000-1111-2222-3333-444444444444"

LOOP = asyncio.get_event_loop()

# Method that is dispatched by the asyncio event loop
async def print_what_is_playing(loop):
    """Connect to device and print what is playing."""
    config = conf.AppleTV(ADDRESS, NAME)
    config.add_service(
        conf.ManualService("some_id", Protocol.DMAP, 3689, {}, credentials=HSGID)
    )

    print(f"Connecting to {config.address}")
    atv = await connect(config, loop)

    try:
        print(await atv.metadata.playing())
    finally:
        # Do not forget to close
        atv.close()

if __name__ == "__main__":
    # Setup event loop and connect
    LOOP.run_until_complete(print_what_is_playing(LOOP))


text:
CREATE PROCEDURE USR_GetUser
	@UserAccountID int
AS

SELECT UserAccountID, DomainName, Firstname, Lastname
FROM UserAccounts
WHERE UserAccountID = @UserAccountID


text:
#include <linux/err.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/platform_device.h>
#include <linux/clk.h>
#include <linux/io.h>
#include <linux/of.h>
#include <linux/of_device.h>
#include <linux/of_gpio.h>
#include <linux/gpio.h>
#include <linux/mmc/card.h>
#include <linux/mmc/host.h>
#include <linux/mmc/slot-gpio.h>

#include <asm/gpio.h>

#include "sdhci-pltfm.h"

/* Tegra SDHOST controller vendor register definitions */
#define SDHCI_TEGRA_VENDOR_MISC_CTRL		0x120
#define SDHCI_MISC_CTRL_ENABLE_SDHCI_SPEC_300	0x20

#define NVQUIRK_FORCE_SDHCI_SPEC_200	BIT(0)
#define NVQUIRK_ENABLE_BLOCK_GAP_DET	BIT(1)
#define NVQUIRK_ENABLE_SDHCI_SPEC_300	BIT(2)

struct sdhci_tegra_soc_data {
	const struct sdhci_pltfm_data *pdata;
	u32 nvquirks;
};

struct sdhci_tegra {
	const struct sdhci_tegra_soc_data *soc_data;
	int power_gpio;
};

static u32 tegra_sdhci_readl(struct sdhci_host *host, int reg)
{
	u32 val;

	if (unlikely(reg == SDHCI_PRESENT_STATE)) {
		/* Use wp_gpio here instead? */
		val = readl(host->ioaddr + reg);
		return val | SDHCI_WRITE_PROTECT;
	}

	return readl(host->ioaddr + reg);
}

static u16 tegra_sdhci_readw(struct sdhci_host *host, int reg)
{
	struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
	struct sdhci_tegra *tegra_host = pltfm_host->priv;
	const struct sdhci_tegra_soc_data *soc_data = tegra_host->soc_data;

	if (unlikely((soc_data->nvquirks & NVQUIRK_FORCE_SDHCI_SPEC_200) &&
			(reg == SDHCI_HOST_VERSION))) {
		/* Erratum: Version register is invalid in HW. */
		return SDHCI_SPEC_200;
	}

	return readw(host->ioaddr + reg);
}

static void tegra_sdhci_writel(struct sdhci_host *host, u32 val, int reg)
{
	struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
	struct sdhci_tegra *tegra_host = pltfm_host->priv;
	const struct sdhci_tegra_soc_data *soc_data = tegra_host->soc_data;

	/* Seems like we're getting spurious timeout and crc errors, so
	 * disable signalling of them. In case of real errors software
	 * timers should take care of eventually detecting them.
	 */
	if (unlikely(reg == SDHCI_SIGNAL_ENABLE))
		val &= ~(SDHCI_INT_TIMEOUT|SDHCI_INT_CRC);

	writel(val, host->ioaddr + reg);

	if (unlikely((soc_data->nvquirks & NVQUIRK_ENABLE_BLOCK_GAP_DET) &&
			(reg == SDHCI_INT_ENABLE))) {
		/* Erratum: Must enable block gap interrupt detection */
		u8 gap_ctrl = readb(host->ioaddr + SDHCI_BLOCK_GAP_CONTROL);
		if (val & SDHCI_INT_CARD_INT)
			gap_ctrl |= 0x8;
		else
			gap_ctrl &= ~0x8;
		writeb(gap_ctrl, host->ioaddr + SDHCI_BLOCK_GAP_CONTROL);
	}
}

static unsigned int tegra_sdhci_get_ro(struct sdhci_host *host)
{
	return mmc_gpio_get_ro(host->mmc);
}

static void tegra_sdhci_reset_exit(struct sdhci_host *host, u8 mask)
{
	struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
	struct sdhci_tegra *tegra_host = pltfm_host->priv;
	const struct sdhci_tegra_soc_data *soc_data = tegra_host->soc_data;

	if (!(mask & SDHCI_RESET_ALL))
		return;

	/* Erratum: Enable SDHCI spec v3.00 support */
	if (soc_data->nvquirks & NVQUIRK_ENABLE_SDHCI_SPEC_300) {
		u32 misc_ctrl;

		misc_ctrl = sdhci_readb(host, SDHCI_TEGRA_VENDOR_MISC_CTRL);
		misc_ctrl |= SDHCI_MISC_CTRL_ENABLE_SDHCI_SPEC_300;
		sdhci_writeb(host, misc_ctrl, SDHCI_TEGRA_VENDOR_MISC_CTRL);
	}
}

static int tegra_sdhci_buswidth(struct sdhci_host *host, int bus_width)
{
	u32 ctrl;

	ctrl = sdhci_readb(host, SDHCI_HOST_CONTROL);
	if ((host->mmc->caps & MMC_CAP_8_BIT_DATA) &&
	    (bus_width == MMC_BUS_WIDTH_8)) {
		ctrl &= ~SDHCI_CTRL_4BITBUS;
		ctrl |= SDHCI_CTRL_8BITBUS;
	} else {
		ctrl &= ~SDHCI_CTRL_8BITBUS;
		if (bus_width == MMC_BUS_WIDTH_4)
			ctrl |= SDHCI_CTRL_4BITBUS;
		else
			ctrl &= ~SDHCI_CTRL_4BITBUS;
	}
	sdhci_writeb(host, ctrl, SDHCI_HOST_CONTROL);
	return 0;
}

static const struct sdhci_ops tegra_sdhci_ops = {
	.get_ro     = tegra_sdhci_get_ro,
	.read_l     = tegra_sdhci_readl,
	.read_w     = tegra_sdhci_readw,
	.write_l    = tegra_sdhci_writel,
	.platform_bus_width = tegra_sdhci_buswidth,
	.platform_reset_exit = tegra_sdhci_reset_exit,
};

static const struct sdhci_pltfm_data sdhci_tegra20_pdata = {
	.quirks = SDHCI_QUIRK_BROKEN_TIMEOUT_VAL |
		  SDHCI_QUIRK_SINGLE_POWER_WRITE |
		  SDHCI_QUIRK_NO_HISPD_BIT |
		  SDHCI_QUIRK_BROKEN_ADMA_ZEROLEN_DESC,
	.ops  = &tegra_sdhci_ops,
};

static struct sdhci_tegra_soc_data soc_data_tegra20 = {
	.pdata = &sdhci_tegra20_pdata,
	.nvquirks = NVQUIRK_FORCE_SDHCI_SPEC_200 |
		    NVQUIRK_ENABLE_BLOCK_GAP_DET,
};

static const struct sdhci_pltfm_data sdhci_tegra30_pdata = {
	.quirks = SDHCI_QUIRK_BROKEN_TIMEOUT_VAL |
		  SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK |
		  SDHCI_QUIRK_SINGLE_POWER_WRITE |
		  SDHCI_QUIRK_NO_HISPD_BIT |
		  SDHCI_QUIRK_BROKEN_ADMA_ZEROLEN_DESC,
	.ops  = &tegra_sdhci_ops,
};

static struct sdhci_tegra_soc_data soc_data_tegra30 = {
	.pdata = &sdhci_tegra30_pdata,
	.nvquirks = NVQUIRK_ENABLE_SDHCI_SPEC_300,
};

static const struct sdhci_pltfm_data sdhci_tegra114_pdata = {
	.quirks = SDHCI_QUIRK_BROKEN_TIMEOUT_VAL |
		  SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK |
		  SDHCI_QUIRK_SINGLE_POWER_WRITE |
		  SDHCI_QUIRK_NO_HISPD_BIT |
		  SDHCI_QUIRK_BROKEN_ADMA_ZEROLEN_DESC,
	.ops  = &tegra_sdhci_ops,
};

static struct sdhci_tegra_soc_data soc_data_tegra114 = {
	.pdata = &sdhci_tegra114_pdata,
};

static const struct of_device_id sdhci_tegra_dt_match[] = {
	{ .compatible = "nvidia,tegra124-sdhci", .data = &soc_data_tegra114 },
	{ .compatible = "nvidia,tegra114-sdhci", .data = &soc_data_tegra114 },
	{ .compatible = "nvidia,tegra30-sdhci", .data = &soc_data_tegra30 },
	{ .compatible = "nvidia,tegra20-sdhci", .data = &soc_data_tegra20 },
	{}
};
MODULE_DEVICE_TABLE(of, sdhci_tegra_dt_match);

static int sdhci_tegra_parse_dt(struct device *dev)
{
	struct device_node *np = dev->of_node;
	struct sdhci_host *host = dev_get_drvdata(dev);
	struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
	struct sdhci_tegra *tegra_host = pltfm_host->priv;

	tegra_host->power_gpio = of_get_named_gpio(np, "power-gpios", 0);
	return mmc_of_parse(host->mmc);
}

static int sdhci_tegra_probe(struct platform_device *pdev)
{
	const struct of_device_id *match;
	const struct sdhci_tegra_soc_data *soc_data;
	struct sdhci_host *host;
	struct sdhci_pltfm_host *pltfm_host;
	struct sdhci_tegra *tegra_host;
	struct clk *clk;
	int rc;

	match = of_match_device(sdhci_tegra_dt_match, &pdev->dev);
	if (!match)
		return -EINVAL;
	soc_data = match->data;

	host = sdhci_pltfm_init(pdev, soc_data->pdata, 0);
	if (IS_ERR(host))
		return PTR_ERR(host);
	pltfm_host = sdhci_priv(host);

	tegra_host = devm_kzalloc(&pdev->dev, sizeof(*tegra_host), GFP_KERNEL);
	if (!tegra_host) {
		dev_err(mmc_dev(host->mmc), "failed to allocate tegra_host\n");
		rc = -ENOMEM;
		goto err_alloc_tegra_host;
	}
	tegra_host->soc_data = soc_data;
	pltfm_host->priv = tegra_host;

	rc = sdhci_tegra_parse_dt(&pdev->dev);
	if (rc)
		goto err_parse_dt;

	if (gpio_is_valid(tegra_host->power_gpio)) {
		rc = gpio_request(tegra_host->power_gpio, "sdhci_power");
		if (rc) {
			dev_err(mmc_dev(host->mmc),
				"failed to allocate power gpio\n");
			goto err_power_req;
		}
		gpio_direction_output(tegra_host->power_gpio, 1);
	}

	clk = clk_get(mmc_dev(host->mmc), NULL);
	if (IS_ERR(clk)) {
		dev_err(mmc_dev(host->mmc), "clk err\n");
		rc = PTR_ERR(clk);
		goto err_clk_get;
	}
	clk_prepare_enable(clk);
	pltfm_host->clk = clk;

	rc = sdhci_add_host(host);
	if (rc)
		goto err_add_host;

	return 0;

err_add_host:
	clk_disable_unprepare(pltfm_host->clk);
	clk_put(pltfm_host->clk);
err_clk_get:
	if (gpio_is_valid(tegra_host->power_gpio))
		gpio_free(tegra_host->power_gpio);
err_power_req:
err_parse_dt:
err_alloc_tegra_host:
	sdhci_pltfm_free(pdev);
	return rc;
}

static int sdhci_tegra_remove(struct platform_device *pdev)
{
	struct sdhci_host *host = platform_get_drvdata(pdev);
	struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
	struct sdhci_tegra *tegra_host = pltfm_host->priv;
	int dead = (readl(host->ioaddr + SDHCI_INT_STATUS) == 0xffffffff);

	sdhci_remove_host(host, dead);

	if (gpio_is_valid(tegra_host->power_gpio))
		gpio_free(tegra_host->power_gpio);

	clk_disable_unprepare(pltfm_host->clk);
	clk_put(pltfm_host->clk);

	sdhci_pltfm_free(pdev);

	return 0;
}

static struct platform_driver sdhci_tegra_driver = {
	.driver		= {
		.name	= "sdhci-tegra",
		.owner	= THIS_MODULE,
		.of_match_table = sdhci_tegra_dt_match,
		.pm	= SDHCI_PLTFM_PMOPS,
	},
	.probe		= sdhci_tegra_probe,
	.remove		= sdhci_tegra_remove,
};

module_platform_driver(sdhci_tegra_driver);

MODULE_DESCRIPTION("SDHCI driver for Tegra");
MODULE_AUTHOR("Google, Inc.");
MODULE_LICENSE("GPL v2");


text:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.12"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Nabu-asr: processors Directory Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>

<link href="search/search.css" rel="stylesheet" type="text/css"/>

<link href="doxygen.css" rel="stylesheet" type="text/css" />

Nabu-asr

nabu

processing

processors

processors Directory Reference

Directories

Files

file  	alignment_processor.py

 	Contains the TextProcesso.

file  	audio_processor.py

 	contains the AudioProcessor class

file  	binary_processor.py

 	Contains the BinaryProcesso.

file  	processor.py

 	contains the Processor class

file  	processor_factory.py

 	contains the Processor factory method

file  	text_processor.py

 	Contains the TextProcesso.

file  	textfile_processor.py

 	Contains the TextFileProcesso.

<address class="footer">
Generated by

 1.8.12
</address>


text:
package adullact.publicrowdfunding.model.local.cache;

import java.util.TreeSet;

import adullact.publicrowdfunding.model.local.callback.HoldToDo;
import adullact.publicrowdfunding.model.local.callback.WhatToDo;
import adullact.publicrowdfunding.model.local.ressource.Resource;

/**
 * @author Ferrand and Nelaupe
 */
public class CacheSet<TResource extends Resource<TResource, ?, ?>> {
    private TreeSet<Cache<TResource>> m_resource;
    private boolean m_stopForEach = false;

    public CacheSet() {
        this.m_resource = new TreeSet<Cache<TResource>>(Cache.howCompare());
    }

    public void add(TResource resource) {
        m_resource.add(resource.getCache());
    }

    public void add(Cache<TResource> resource) {
        m_resource.add(resource);
    }

    public void remove(TResource resource) {
        m_resource.remove(resource.getCache());
    }

    public void remove(Cache<TResource> resource) {
        m_resource.remove(resource);
    }

    public void forEach(final WhatToDo<TResource> whatToDo) {
        m_stopForEach = false;
        for(Cache<TResource> cache : m_resource) {
            if(m_stopForEach) {
                break;
            }
            cache.toResource(new HoldToDo<TResource>() {
                @Override
                public void hold(TResource resource) {
                    whatToDo.hold(resource);
                }
            });
        }
        m_stopForEach = false;
        whatToDo.eventually();
    }

    public void stopForEach() {
        m_stopForEach = true;
    }
}


text:
Configure your Nucleus Network

<form enctype="multipart/form-data" action="schema_set.php" method="POST">

    <input type="hidden" name="MAX_FILE_SIZE" value="300000" />

    Please upload your Nucleus schema file: <input name="schemaFile" type="file" />

    Send queries using:

    <input type="radio" name="sendQuery" value="drip">Drip Dissemination

    <input type="radio" name="sendQuery" value="local">Local Radio or Serial Connection

    Receive results over:

    <input type="radio" name="receiveResults" value="drain">Drain Tree

    <input type="radio" name="receiveResults" value="local">Local Radio

    <input type="radio" name="receiveResults" value="serial">Serial Connection

    <input type="submit" value="Go" />
</form>


text:
<?php

namespace Biz\Course\Copy\Impl;

/**
 * Class CourseTestpaperCopy.
 *
 * @deprecated
 * @see ActivityTestpaperCopy
 */
class CourseTestpaperCopy extends TestpaperCopy
{
    public function __construct($biz)
    {
        parent::__construct($biz, 'course-testpaper');
    }

    /*
     * - $source = $activity
     * - $config:
     * */
    protected function _copy($source, $config = array())
    {
        return $this->doCopyTestpaper($config['newCourse'], $source['courseSetId'], $source['id'], $config['isCopy']);
    }

    private function doCopyTestpaper($newCourse, $courseSetId, $courseId, $isCopy)
    {
        $testpapers = $this->getTestpaperDao()->search(array('courseSetId' => $courseSetId, 'courseId' => $courseId), array(), 0, PHP_INT_MAX);
        if (empty($testpapers)) {
            return array();
        }
        $newTestpapers = array();
        foreach ($testpapers as $testpaper) {
            if ($testpaper['courseId'] > 0) {
                continue;
            }

            $newTestpaper = $this->baseCopyTestpaper($testpaper, $isCopy);
            $newTestpaper['courseSetId'] = $newCourse['courseSetId'];
            $newTestpaper['courseId'] = $newCourse['id'];

            $newTestpaper = $this->getTestpaperDao()->create($newTestpaper);
            $this->doCopyTestpaperItems($testpaper, $newTestpaper, $isCopy);
            $newTestpapers[] = $newTestpaper;
        }

        return $newTestpapers;
    }
}


text:
import ipc from 'ipc';

export default class AwaitableIPC {
  static requestNumber = 0

  static get isRenderer() {
    return process.type && process.type === 'renderer';
  }

  static isPromise(object) {
    return object && object.then && object.catch;
  }

  static requestChannel(channel) {
    return channel + '_aipc_request';
  }

  static responseChannel(channel, id) {
    return channel + '_aipc_response_' + id;
  }

  static send(channel, args, window) {
    let request = this.requestChannel(channel);
    let response = this.responseChannel(channel, this.requestNumber);
    let params = { args: args, id: this.requestNumber };
    this.requestNumber += 1;

    if (this.isRenderer) {
      // send to browser process
      return new Promise((resolve, reject) => {
        ipc.once(response, (data) => resolve(data.result));
        ipc.send(request, params);
      });
    } else {
      // send to window (renderer process)
      return new Promise((resolve, reject) => {
        ipc.once(response, (event, data) => resolve(data.result));
        window.webContents.send(request, params);
      });
    }
  }

  static on(channel, callback) {
    if (this.isRenderer) {
      // revceive message from browser process
      let response = (channel, id, result) => {
        ipc.send(this.responseChannel(channel, id), { result });
      };

      ipc.on(this.requestChannel(channel), (data) => {
        let result = callback(data.args);
        if (this.isPromise(result)) {
          result
            .then((_result) => response(channel, data.id, _result))
            .catch((e) => console.error(`${channel} failed: ` + e));
        } else {
          response(channel, data.id, result);
        }
      });
    } else {
      // revceive message from renderer process
      let response = (event, channel, id, result) => {
        event.sender.send(this.responseChannel(channel, id), { result });
      };

      ipc.on(this.requestChannel(channel), (event, data) => {
        let result = callback(data.args);
        if (this.isPromise(result)) {
          result
            .then((_result) => response(event, channel, data.id, _result))
            .catch((e) => console.error(`${channel} failed: ` + e));
        } else {
          response(event, channel, data.id, result);
        }
      });
    }
  }
};


text:
/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM nsIDownload.idl
 */

#ifndef __gen_nsIDownload_h__
#define __gen_nsIDownload_h__

#ifndef __gen_nsISupports_h__
#include "nsISupports.h"
#endif

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
class nsIURI; /* forward declaration */

class nsILocalFile; /* forward declaration */

class nsIObserver; /* forward declaration */

class nsIWebBrowserPersist; /* forward declaration */

class nsIWebProgressListener; /* forward declaration */

class nsIMIMEInfo; /* forward declaration */

/* starting interface:    nsIDownload */
#define NS_IDOWNLOAD_IID_STR "06cb92f2-1dd2-11b2-95f2-96dfdfb804a1"

#define NS_IDOWNLOAD_IID \
  {0x06cb92f2, 0x1dd2, 0x11b2, \
    { 0x95, 0xf2, 0x96, 0xdf, 0xdf, 0xb8, 0x04, 0xa1 }}

class NS_NO_VTABLE nsIDownload : public nsISupports {
 public:

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_IDOWNLOAD_IID)

  /**
     * Initializes the download with certain properties.  This function must
     * be called prior to accessing any properties on this interface.
     *
     * @param aSource The source (nsIURI) of the download.
     *
     * @param aTarget The local file to which the download is being saved.
     *
     * @param aDisplayName The user-readable description of the download.
     *
     * @param aMIMEInfo The MIME info associated with the download file,
     *                  including MIME type and helper app when appropriate.
     *                  This parameter is optional.
     *
     * @param aPersist The "persist" used to transfer the download.  If set,
     *                 the manager will set its listener to the download item
     *                 and use it for cancellation.  If not set, the client
     *                 is expected to set the download item as the listener on
     *                 whatever transfer component is being used, and to
     *                 set an observer on the download item that listens for
     *                 the "oncancel" topic and cancels the download.
     */
  /* void init (in nsIURI aSource, in nsILocalFile aTarget, in wstring aDisplayName, in nsIMIMEInfo aMIMEInfo, in long long startTime, in nsIWebBrowserPersist aPersist); */
  NS_IMETHOD Init(nsIURI *aSource, nsILocalFile *aTarget, const PRUnichar *aDisplayName, nsIMIMEInfo *aMIMEInfo, PRInt64 startTime, nsIWebBrowserPersist *aPersist) = 0;

  /**
     * The source of the download.
     */
  /* readonly attribute nsIURI source; */
  NS_IMETHOD GetSource(nsIURI * *aSource) = 0;

  /**
     * The local file to which the download is being saved.
     */
  /* readonly attribute nsILocalFile target; */
  NS_IMETHOD GetTarget(nsILocalFile * *aTarget) = 0;

  /**
     * Optional. If set, it will be used for cancellation, and the download
     * will be set as its listener.  If not, |observer| should be set to listen
     * and respond accordingly to topics like oncancel, and the client promises
     * to set the download item as the listener for whatever transfer component
     * being used.
     */
  /* readonly attribute nsIWebBrowserPersist persist; */
  NS_IMETHOD GetPersist(nsIWebBrowserPersist * *aPersist) = 0;

  /**
     * The percentage of completion of the download.
     */
  /* readonly attribute PRInt32 percentComplete; */
  NS_IMETHOD GetPercentComplete(PRInt32 *aPercentComplete) = 0;

  /**
     * The user-readable description of the download.
     */
  /* attribute wstring displayName; */
  NS_IMETHOD GetDisplayName(PRUnichar * *aDisplayName) = 0;
  NS_IMETHOD SetDisplayName(const PRUnichar * aDisplayName) = 0;

  /**
     * The time a download was started.
     */
  /* readonly attribute long long startTime; */
  NS_IMETHOD GetStartTime(PRInt64 *aStartTime) = 0;

  /**
     * Optional. If set, it will contain the download's relevant MIME information.
     * This includes it's MIME Type, helper app, and whether that helper should be
     * executed.
     */
  /* readonly attribute nsIMIMEInfo MIMEInfo; */
  NS_IMETHOD GetMIMEInfo(nsIMIMEInfo * *aMIMEInfo) = 0;

  /**
     * Optional; downloading information is passed to this listener and used to
     * update client UI.
     */
  /* attribute nsIWebProgressListener listener; */
  NS_IMETHOD GetListener(nsIWebProgressListener * *aListener) = 0;
  NS_IMETHOD SetListener(nsIWebProgressListener * aListener) = 0;

  /**
     * If set, receives notifications of events like cancel ("oncancel").
     * Must be set if no persist object is specified (see above).
     */
  /* attribute nsIObserver observer; */
  NS_IMETHOD GetObserver(nsIObserver * *aObserver) = 0;
  NS_IMETHOD SetObserver(nsIObserver * aObserver) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOWNLOAD \
  NS_IMETHOD Init(nsIURI *aSource, nsILocalFile *aTarget, const PRUnichar *aDisplayName, nsIMIMEInfo *aMIMEInfo, PRInt64 startTime, nsIWebBrowserPersist *aPersist); \
  NS_IMETHOD GetSource(nsIURI * *aSource); \
  NS_IMETHOD GetTarget(nsILocalFile * *aTarget); \
  NS_IMETHOD GetPersist(nsIWebBrowserPersist * *aPersist); \
  NS_IMETHOD GetPercentComplete(PRInt32 *aPercentComplete); \
  NS_IMETHOD GetDisplayName(PRUnichar * *aDisplayName); \
  NS_IMETHOD SetDisplayName(const PRUnichar * aDisplayName); \
  NS_IMETHOD GetStartTime(PRInt64 *aStartTime); \
  NS_IMETHOD GetMIMEInfo(nsIMIMEInfo * *aMIMEInfo); \
  NS_IMETHOD GetListener(nsIWebProgressListener * *aListener); \
  NS_IMETHOD SetListener(nsIWebProgressListener * aListener); \
  NS_IMETHOD GetObserver(nsIObserver * *aObserver); \
  NS_IMETHOD SetObserver(nsIObserver * aObserver);

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOWNLOAD(_to) \
  NS_IMETHOD Init(nsIURI *aSource, nsILocalFile *aTarget, const PRUnichar *aDisplayName, nsIMIMEInfo *aMIMEInfo, PRInt64 startTime, nsIWebBrowserPersist *aPersist) { return _to Init(aSource, aTarget, aDisplayName, aMIMEInfo, startTime, aPersist); } \
  NS_IMETHOD GetSource(nsIURI * *aSource) { return _to GetSource(aSource); } \
  NS_IMETHOD GetTarget(nsILocalFile * *aTarget) { return _to GetTarget(aTarget); } \
  NS_IMETHOD GetPersist(nsIWebBrowserPersist * *aPersist) { return _to GetPersist(aPersist); } \
  NS_IMETHOD GetPercentComplete(PRInt32 *aPercentComplete) { return _to GetPercentComplete(aPercentComplete); } \
  NS_IMETHOD GetDisplayName(PRUnichar * *aDisplayName) { return _to GetDisplayName(aDisplayName); } \
  NS_IMETHOD SetDisplayName(const PRUnichar * aDisplayName) { return _to SetDisplayName(aDisplayName); } \
  NS_IMETHOD GetStartTime(PRInt64 *aStartTime) { return _to GetStartTime(aStartTime); } \
  NS_IMETHOD GetMIMEInfo(nsIMIMEInfo * *aMIMEInfo) { return _to GetMIMEInfo(aMIMEInfo); } \
  NS_IMETHOD GetListener(nsIWebProgressListener * *aListener) { return _to GetListener(aListener); } \
  NS_IMETHOD SetListener(nsIWebProgressListener * aListener) { return _to SetListener(aListener); } \
  NS_IMETHOD GetObserver(nsIObserver * *aObserver) { return _to GetObserver(aObserver); } \
  NS_IMETHOD SetObserver(nsIObserver * aObserver) { return _to SetObserver(aObserver); }

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOWNLOAD(_to) \
  NS_IMETHOD Init(nsIURI *aSource, nsILocalFile *aTarget, const PRUnichar *aDisplayName, nsIMIMEInfo *aMIMEInfo, PRInt64 startTime, nsIWebBrowserPersist *aPersist) { return !_to ? NS_ERROR_NULL_POINTER : _to->Init(aSource, aTarget, aDisplayName, aMIMEInfo, startTime, aPersist); } \
  NS_IMETHOD GetSource(nsIURI * *aSource) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSource(aSource); } \
  NS_IMETHOD GetTarget(nsILocalFile * *aTarget) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTarget(aTarget); } \
  NS_IMETHOD GetPersist(nsIWebBrowserPersist * *aPersist) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPersist(aPersist); } \
  NS_IMETHOD GetPercentComplete(PRInt32 *aPercentComplete) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPercentComplete(aPercentComplete); } \
  NS_IMETHOD GetDisplayName(PRUnichar * *aDisplayName) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDisplayName(aDisplayName); } \
  NS_IMETHOD SetDisplayName(const PRUnichar * aDisplayName) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDisplayName(aDisplayName); } \
  NS_IMETHOD GetStartTime(PRInt64 *aStartTime) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStartTime(aStartTime); } \
  NS_IMETHOD GetMIMEInfo(nsIMIMEInfo * *aMIMEInfo) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMIMEInfo(aMIMEInfo); } \
  NS_IMETHOD GetListener(nsIWebProgressListener * *aListener) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetListener(aListener); } \
  NS_IMETHOD SetListener(nsIWebProgressListener * aListener) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetListener(aListener); } \
  NS_IMETHOD GetObserver(nsIObserver * *aObserver) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetObserver(aObserver); } \
  NS_IMETHOD SetObserver(nsIObserver * aObserver) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetObserver(aObserver); }

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsDownload : public nsIDownload
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOWNLOAD

  nsDownload();
  virtual ~nsDownload();
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsDownload, nsIDownload)

nsDownload::nsDownload()
{
  /* member initializers and constructor code */
}

nsDownload::~nsDownload()
{
  /* destructor code */
}

/* void init (in nsIURI aSource, in nsILocalFile aTarget, in wstring aDisplayName, in nsIMIMEInfo aMIMEInfo, in long long startTime, in nsIWebBrowserPersist aPersist); */
NS_IMETHODIMP nsDownload::Init(nsIURI *aSource, nsILocalFile *aTarget, const PRUnichar *aDisplayName, nsIMIMEInfo *aMIMEInfo, PRInt64 startTime, nsIWebBrowserPersist *aPersist)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIURI source; */
NS_IMETHODIMP nsDownload::GetSource(nsIURI * *aSource)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsILocalFile target; */
NS_IMETHODIMP nsDownload::GetTarget(nsILocalFile * *aTarget)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIWebBrowserPersist persist; */
NS_IMETHODIMP nsDownload::GetPersist(nsIWebBrowserPersist * *aPersist)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute PRInt32 percentComplete; */
NS_IMETHODIMP nsDownload::GetPercentComplete(PRInt32 *aPercentComplete)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute wstring displayName; */
NS_IMETHODIMP nsDownload::GetDisplayName(PRUnichar * *aDisplayName)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDownload::SetDisplayName(const PRUnichar * aDisplayName)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute long long startTime; */
NS_IMETHODIMP nsDownload::GetStartTime(PRInt64 *aStartTime)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIMIMEInfo MIMEInfo; */
NS_IMETHODIMP nsDownload::GetMIMEInfo(nsIMIMEInfo * *aMIMEInfo)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIWebProgressListener listener; */
NS_IMETHODIMP nsDownload::GetListener(nsIWebProgressListener * *aListener)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDownload::SetListener(nsIWebProgressListener * aListener)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIObserver observer; */
NS_IMETHODIMP nsDownload::GetObserver(nsIObserver * *aObserver)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDownload::SetObserver(nsIObserver * aObserver)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif

#define NS_DOWNLOAD_CONTRACTID "@mozilla.org/download;1"
// {E3FA9D0A-1DD1-11B2-BDEF-8C720B597445}
#define NS_DOWNLOAD_CID \
    { 0xe3fa9d0a, 0x1dd1, 0x11b2, { 0xbd, 0xef, 0x8c, 0x72, 0x0b, 0x59, 0x74, 0x45 } }

#endif /* __gen_nsIDownload_h__ */


text:
class CreateRoles < ActiveRecord::Migration
  def self.up
    create_table "roles" do |t|
      t.string :name
    end

    Role.create(:name => "admin")

    # generate the join table
    create_table "roles_users", :id => false do |t|
      t.integer "role_id", "user_id"
    end
    add_index "roles_users", "role_id"
    add_index "roles_users", "user_id"
  end

  def self.down
    drop_table "roles"
    drop_table "roles_users"
  end
end


text:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

      <link type="text/css" rel="stylesheet" href="css/materialize.min.css"  media="screen,projection"/>
      <link type="text/css" rel="stylesheet" href="css/custom.css"  media="screen,projection"/>

      <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>

      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

d

            Stan Kocken

            27
            Years Old

            stan.kocken@gmail.com
            Personal

            stankocken.com
            Personal

            StanKocken
            GitHub

            @stan_kocken
            Twitter

            +StanKocken
            Google Plus

            stan-kocken
            Linkedin

            stan.kocken
            Viadeo

          Interests

              Aviation
              Private Pilot Licence (PPL) in France

              Commercial Pilot Licence (CPL) in Canada

              Photography
              #Flickr stankoc

          Language

              French
              Native Language

              English
              Good skills, both written and oral.

              #TOEIC (2010): 835/990

              Daily usage since November 2012

        Android Developer

          Work Experience

Nov 2012 - Present

              Android Lead Developer @PrePlay
              Paris, France and New York City, USA

                  MLB Preplay
                  50k+ downloads

                  NHL Preplay
                  10k+ downloads

                  Preplay Football
                  5k+ downloads

Jan 2011 - Nov 2012

              Android Lead Developer @Backelite
              Paris, France

                  Dailymotion
                  10M+ downloads
(until v2)

                  Ma Banque
                  1M+ downloads
(until v2)

                  Météo Marine
                  500k+ downloads
(until v1)

                  La Chaine Météo HD
                  500k+ downloads
(until v1)

                  Eurostar
                  100k+ downloads
(until v1)

                … and more

Jun 2010 - Jan 2011

              Android / Windows Mobile / J2EE Developer @Chronolink
              Nantes, France

          Education

2008 - 2011

              Master of Science in Engineering @Polytech'Nantes
              Nantes, France
              Computer Science and Engineering

2006 - 2008

              University Technology Diploma @UniversiteTours
              Tours, France
              Electrical Engineering and Industrial Automation.

          Personal Projects

              Velibici
              5k+ downloads

              EfficientAdapter
              246 stars

              SVG2Drawable
              124 stars

              MaterialResume
              0 stars

          Professional Skills

              Mobile
              Android (Java), Windows Phone (C#), Windows Mobile (C#), J2ME (Java)

              Web / Server
              PHP, HTML, Javascript (CoffeeScript, AngularJS, NodeJS), Ruby

              Other
              WebService (REST, JSON, XML), WebSocket, CouchBase


text:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.nitorcreations.it</groupId>
  <artifactId>simple-it</artifactId>
  <version>1.0-SNAPSHOT</version>

  <description>A simple IT verifying the basic use case.</description>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <foo.bar.appendchar>,</foo.bar.appendchar>
    <foo.bar>baz</foo.bar>
    <target.id>env_test</target.id>
    <component.id>webfront</component.id>
    <node.id>appserver</node.id>
    <node-group.id>appservers</node-group.id>
  </properties>
  <developers>
    <developer>
      <name>Pasi Niemi</name>
    </developer>
  </developers>
  <organization>
    <name>Nitor Creations</name>
  </organization>
  <inceptionYear>2013</inceptionYear>
  <build>
    <plugins>
      <plugin>
        <groupId>@project.groupId@</groupId>
        <artifactId>@project.artifactId@</artifactId>
        <version>@project.version@</version>
        <executions>
          <execution>
            <id>merge</id>
            <phase>verify</phase>
            <goals>
              <goal>properties</goal>
            </goals>
            <configuration>
              <outputFile>target/app.properties</outputFile>
              <prefixes>
                <prefix>file:@project.build.directory@/it/simple-it/target/classes/</prefix>
              </prefixes>
              <rootProperties>my.properties</rootProperties>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  <name>Testing Properties</name>
</project>


text:
title: Known Date Formats
---
If you know the format of the date string that you will be parsing, it is always the best choice to explicitly specify that format.

Examples:

```js
moment('01/01/2016', 'MM/DD/YYYY')
moment('2016-01-01 11:31:23 PM', 'YYYY-MM-DD hh:mm:ss a')
```

If your dates are in an ISO 8601 format, you can use a constant built into moment to indicate that:

```js
moment('2016-01-01 12:25:32', moment.ISO_8601)
```
ISO 8601 formats include, but are not limited to:
```
2013-02-08               # A calendar date part
2013-W06-5               # A week date part
2013-02-08T09            # An hour time part separated by a T
2013-02-08 09            # An hour time part separated by a space
2013-02-08 09:30:26      # An hour, minute, and second time part
2013-02-08 09+07:00      # +-HH:mm
```
 See the API documentation on parsing strings for a full listing.


text:
var HtmlWebpackPlugin = require('html-webpack-plugin');

module.exports = {
	entry: './playground/playground.js',

	output: {
		path: './playground',
		filename: 'bundle.js',
		publicPath: '/'
	},

	devServer: {
		filename: 'playground.js',
		contentBase: './playground'
	},

	devtool: 'source-map',

	module: {
		loaders: [
			{
				test: /\.(js)$/,
				exclude: /node_modules/,
				loader: 'babel-loader?stage=0'
			}
		]
	},

	plugins: [new HtmlWebpackPlugin()]
};


text:
<?xml version ="1.0" encoding="UTF-8" standalone="no"?>
<fmresultset xmlns="http://www.filemaker.com/xml/fmresultset" version="1.0">
    <error code="0"></error>
    <product build="04/07/2016" name="FileMaker Web Publishing Engine" version="15.0.1.137"></product>
    <datasource database="XmlSchemaDemo" date-format="MM/dd/yyyy" layout="Child" table="Child" time-format="HH:mm:ss" timestamp-format="MM/dd/yyyy HH:mm:ss" total-count="3"></datasource>
    <metadata>
        <field-definition auto-enter="no" four-digit-year="no" global="no" max-repeat="1" name="" not-empty="no" numeric-only="no" result="unknown" time-of-day="no" type="normal"></field-definition>
    </metadata>
    <resultset count="1" fetch-size="1">
        <record mod-id="14" record-id="1">
            <field name="">
                <data></data>
            </field>
        </record>
    </resultset>
</fmresultset>


text:
<?xml version="1.0" encoding="UTF-8"?>
<clinical_study>
  <!-- This xml conforms to an XML Schema at:
    https://clinicaltrials.gov/ct2/html/images/info/public.xsd -->
  <required_header>
    <download_date>ClinicalTrials.gov processed this data on May 11, 2018</download_date>
    <link_text>Link to the current ClinicalTrials.gov record.</link_text>
    <url>https://clinicaltrials.gov/show/NCT02708238</url>
  </required_header>
  <id_info>
    <org_study_id>04032016</org_study_id>
    <nct_id>NCT02708238</nct_id>
  </id_info>
  <brief_title>Efficacy of Matricariae Chamomilla L., Melissa Officinalis L. and Tyndallized Lactobacillus Acidophilus (H122) for Infantile Colics</brief_title>
  <official_title>Efficacy of a Standardized Extract of Matricariae Chamomilla L., Melissa Officinalis L. and Tyndallized Lactobacillus Acidophilus (H122) Compared With Lactobacillus Reuteri (DSM 17938) and With Simethicone for the Treatment of Infantile Colic</official_title>
  <sponsors>
    <lead_sponsor>
      <agency>Federico II University</agency>
      <agency_class>Other</agency_class>
    </lead_sponsor>
  </sponsors>
  <source>Federico II University</source>
  <oversight_info>
    <has_dmc>No</has_dmc>
  </oversight_info>
  <brief_summary>
    <textblock>
      A multicenter prospective, randomized comparative study will be conducted in infants with
      colic, according to Rome III criteria. Enrolled infants will be assigned at random to receive
      Chamomilla L., Melissa Officinalis L. and tyndallized L. Acidophilus (H122), L reuteri DSM
      17938 (108 CFU) or simethicone. Treatment will be given to subjects for 28 days and they will
      be followed for 4 weeks. Treatment success will be assessed at the end of study period. Daily
      crying and fussing times will be recorded in a structured diary, and maternal questionnaires
      will be completed to monitor changes in infant colic symptoms and adverse events.
    </textblock>
  </brief_summary>
  <detailed_description>
    <textblock>
      This will be a prospective, multicentre, open label, randomized, controlled trial. All
      consecutive infants diagnosed with IC, according to Rome III criteria, will be prospectively
      enrolled in a 12 months period by 3 different Pediatric Gastroenterology units: Department of
      Translational Medical Science, Section of Pediatrics, University of Naples "Federico II";
      Institute of Pediatrics of the University of Foggia; Endoscopy and Gastroenterology Unit,
      Department of Pediatrics, University of Messina.

      After the enrollment, all children will be randomly assigned to receive Chamomilla L.,
      Melissa Officinalis L. and tyndallized L. Acidophilus (H122) (Group A), L reuteri DSM 17938
      (108 CFU) (Group B) or Simethicone (Group C). Treatment will be given to subjects for 28
      days. The study's primary outcome is defined as a reduction in the duration of average crying
      times, from baseline (day 0) to end of treatment (day 28). The secondary outcome measure is
      the number of participants who respond to treatment on days 28. Infants who experience a
      decrease in the daily average crying time of 50% from baseline will be considered as
      responders to the treatment. Parents will be instructed to complete a structured 28-day
      maternal diary, modified from Barr et al. in order to record the frequency of colic episodes
      and the daily crying and fussing time (in minutes), feeding schedule, stool frequency and
      characteristics, and any adverse events experienced (14). Follow-up visits will be conducted
      on study days 7, 14, 21 and 28 by the same study investigator. At that visit, diaries and
      unused study products will be returned.
    </textblock>
  </detailed_description>
  <overall_status>Completed</overall_status>
  <start_date>April 2014</start_date>
  <completion_date type="Actual">July 2015</completion_date>
  <primary_completion_date type="Actual">July 2015</primary_completion_date>
  <phase>Phase 4</phase>
  <study_type>Interventional</study_type>
  <has_expanded_access>No</has_expanded_access>
  <study_design_info>
    <allocation>Randomized</allocation>
    <intervention_model>Parallel Assignment</intervention_model>
    <primary_purpose>Treatment</primary_purpose>
    <masking>None (Open Label)</masking>
  </study_design_info>
  <primary_outcome>
    <measure>Median Daily Crying Time at the End of the Treatment</measure>
    <time_frame>28 days of treatment</time_frame>
    <description>Median daily crying at the end of treatment (day 28).</description>
  </primary_outcome>
  <secondary_outcome>
    <measure>Number of Responders</measure>
    <time_frame>28 days of treatment</time_frame>
    <description>Number of responders defined as the number of patients who experienced a decrease in the daily average crying time of 50% from baseline</description>
  </secondary_outcome>
  <number_of_arms>3</number_of_arms>
  <enrollment type="Actual">180</enrollment>
  <condition>Infantile Colics</condition>
  <arm_group>
    <arm_group_label>Group A</arm_group_label>
    <arm_group_type>Experimental</arm_group_type>
    <description>All enrolled infants randomized to Group A will receive a standardized extract of Chamomilla L., Melissa Officinalis L. and tyndallized Lactobacillus Acidophilus (H122), administered at the dose of 1 ml twice a day of a commercially available solution</description>
  </arm_group>
  <arm_group>
    <arm_group_label>Group B</arm_group_label>
    <arm_group_type>Active Comparator</arm_group_type>
    <description>All enrolled infants randomized to Group B will receive Lactobacillus reuteri DSM 17938 administered at the dose of 108 colony-forming units (CFU)/day in 5 drops of a commercially available oil suspension</description>
  </arm_group>
  <arm_group>
    <arm_group_label>Group C</arm_group_label>
    <arm_group_type>Active Comparator</arm_group_type>
    <description>All enrolled infants randomized to Group C will receive simethicone, given at a dose of 60 mg in 15 drops two times per day of a commercially available solution</description>
  </arm_group>
  <intervention>
    <intervention_type>Dietary Supplement</intervention_type>
    <intervention_name>Standardized extract of Chamomilla L., Melissa Officinalis L. and tyndallized L. Acidophilus (H122)</intervention_name>
    <arm_group_label>Group A</arm_group_label>
  </intervention>
  <intervention>
    <intervention_type>Dietary Supplement</intervention_type>
    <intervention_name>Lactobacillus reuteri DSM 17938 (108 CFU)</intervention_name>
    <arm_group_label>Group B</arm_group_label>
  </intervention>
  <intervention>
    <intervention_type>Drug</intervention_type>
    <intervention_name>Simethicone</intervention_name>
    <arm_group_label>Group C</arm_group_label>
  </intervention>
  <eligibility>
    <criteria>
      <textblock>
        Inclusion Criteria:

          1. diagnosis of IC according to Rome III criteria (2);

          2. age ≥2 weeks to 4 months;

          3. breast-fed or fomula-fed infants;

          4. term delivery (≥37 weeks gestation at birth);

          5. 5-minute Apgar score ≥7; and 6) birth weight ≥2500 g

        Exclusion Criteria:

          1. a major medical problem or acute illness;

          2. family history of atopy;

          3. history of antibiotic treatment before or during the study;

          4. history of probiotic supplementation.
      </textblock>
    </criteria>
    <gender>All</gender>
    <minimum_age>N/A</minimum_age>
    <maximum_age>4 Months</maximum_age>
    <healthy_volunteers>No</healthy_volunteers>
  </eligibility>
  <overall_official>
    <last_name>Annamaria Staiano, Prof.</last_name>
    <role>Principal Investigator</role>
    <affiliation>Federico II University</affiliation>
  </overall_official>
  <verification_date>June 2016</verification_date>
  <!-- For several months we've had both old and new date name tags                             -->
  <!-- Now, the old date names have been dropped.                                               -->
  <!-- The new date name replacements are:                                                      -->
  <!--     OLD (gone)                                        NEW (in use)                       -->
  <!--   lastchanged_date                         becomes   last_update_submitted               -->
  <!--   firstreceived_date                       becomes   study_first_submitted               -->
  <!--   firstreceived_results_date               becomes   results_first_submitted             -->
  <!--   firstreceived_results_disposition_date   becomes   disposition_first_submitted         -->
  <study_first_submitted>March 4, 2016</study_first_submitted>
  <study_first_submitted_qc>March 14, 2016</study_first_submitted_qc>
  <study_first_posted type="Estimate">March 15, 2016</study_first_posted>
  <results_first_submitted>April 15, 2016</results_first_submitted>
  <results_first_submitted_qc>June 20, 2016</results_first_submitted_qc>
  <results_first_posted type="Estimate">July 29, 2016</results_first_posted>
  <last_update_submitted>June 20, 2016</last_update_submitted>
  <last_update_submitted_qc>June 20, 2016</last_update_submitted_qc>
  <last_update_posted type="Estimate">July 29, 2016</last_update_posted>
  <responsible_party>
    <responsible_party_type>Principal Investigator</responsible_party_type>
    <investigator_affiliation>Federico II University</investigator_affiliation>
    <investigator_full_name>Erasmo Miele</investigator_full_name>
    <investigator_title>Researcher</investigator_title>
  </responsible_party>
  <keyword>Infantile colics</keyword>
  <condition_browse>
    <!-- CAUTION:  The following MeSH terms are assigned with an imperfect algorithm            -->
    <mesh_term>Colic</mesh_term>
  </condition_browse>
  <intervention_browse>
    <!-- CAUTION:  The following MeSH terms are assigned with an imperfect algorithm            -->
    <mesh_term>Simethicone</mesh_term>
  </intervention_browse>
  <patient_data>
    <sharing_ipd>Yes</sharing_ipd>
    <ipd_description>Publication</ipd_description>
  </patient_data>

  <clinical_results>

    <participant_flow>
      <group_list>
        <group group_id="P1">
          <title>Group A</title>
          <description>All enrolled infants randomized to Group A will receive a standardized extract of Chamomilla L., Melissa Officinalis L. and tyndallized Lactobacillus Acidophilus (H122), administered at the dose of 1 ml twice a day of a commercially available solution
Standardized extract of Chamomilla L., Melissa Officinalis L. and tyndallized L. Acidophilus (H122)</description>
        </group>
        <group group_id="P2">
          <title>Group B</title>
          <description>All enrolled infants randomized to Group B will receive Lactobacillus reuteri DSM 17938 administered at the dose of 108 colony-forming units (CFU)/day in 5 drops of a commercially available oil suspension
Lactobacillus reuteri DSM 17938 (108 CFU)</description>
        </group>
        <group group_id="P3">
          <title>Group C</title>
          <description>All enrolled infants randomized to Group C will receive simethicone, given at a dose of 60 mg in 20 drops four times per day of a commercially available solution
Simethicone</description>
        </group>
      </group_list>
      <period_list>
        <period>
          <title>Overall Study</title>
          <milestone_list>
            <milestone>
              <title>STARTED</title>
              <participants_list>
                <participants group_id="P1" count="60"/>
                <participants group_id="P2" count="60"/>
                <participants group_id="P3" count="60"/>
              </participants_list>
            </milestone>
            <milestone>
              <title>COMPLETED</title>
              <participants_list>
                <participants group_id="P1" count="60"/>
                <participants group_id="P2" count="59"/>
                <participants group_id="P3" count="57"/>
              </participants_list>
            </milestone>
            <milestone>
              <title>NOT COMPLETED</title>
              <participants_list>
                <participants group_id="P1" count="0"/>
                <participants group_id="P2" count="1"/>
                <participants group_id="P3" count="3"/>
              </participants_list>
            </milestone>
          </milestone_list>
        </period>
      </period_list>
    </participant_flow>

    <baseline>
      <group_list>
        <group group_id="B1">
          <title>Group A</title>
          <description>All enrolled infants randomized to Group A will receive a standardized extract of Chamomilla L., Melissa Officinalis L. and tyndallized Lactobacillus Acidophilus (H122), administered at the dose of 1 ml twice a day of a commercially available solution
Standardized extract of Chamomilla L., Melissa Officinalis L. and tyndallized L. Acidophilus (H122)</description>
        </group>
        <group group_id="B2">
          <title>Group B</title>
          <description>All enrolled infants randomized to Group B will receive Lactobacillus reuteri DSM 17938 administered at the dose of 108 colony-forming units (CFU)/day in 5 drops of a commercially available oil suspension
Lactobacillus reuteri DSM 17938 (108 CFU)</description>
        </group>
        <group group_id="B3">
          <title>Group C</title>
          <description>All enrolled infants randomized to Group C will receive simethicone, given at a dose of 60 mg in 20 drops four times per day of a commercially available solution
Simethicone</description>
        </group>
        <group group_id="B4">
          <title>Total</title>
          <description>Total of all reporting groups</description>
        </group>
      </group_list>
      <analyzed_list>
        <analyzed>
          <units>Participants</units>
          <scope>Overall</scope>
          <count_list>
            <count group_id="B1" value="60"/>
            <count group_id="B2" value="59"/>
            <count group_id="B3" value="57"/>
            <count group_id="B4" value="176"/>
          </count_list>
        </analyzed>
      </analyzed_list>
      <measure_list>
        <measure>
          <title>Age</title>
          <units>participants</units>
          <param>Number</param>
          <class_list>
            <class>
              <title><=18 years</title>
              <category_list>
                <category>
                  <measurement_list>
                    <measurement group_id="B1" value="60"/>
                    <measurement group_id="B2" value="59"/>
                    <measurement group_id="B3" value="57"/>
                    <measurement group_id="B4" value="176"/>
                  </measurement_list>
                </category>
              </category_list>
            </class>
            <class>
              <title>Between 18 and 65 years</title>
              <category_list>
                <category>
                  <measurement_list>
                    <measurement group_id="B1" value="0"/>
                    <measurement group_id="B2" value="0"/>
                    <measurement group_id="B3" value="0"/>
                    <measurement group_id="B4" value="0"/>
                  </measurement_list>
                </category>
              </category_list>
            </class>
            <class>
              <title>>=65 years</title>
              <category_list>
                <category>
                  <measurement_list>
                    <measurement group_id="B1" value="0"/>
                    <measurement group_id="B2" value="0"/>
                    <measurement group_id="B3" value="0"/>
                    <measurement group_id="B4" value="0"/>
                  </measurement_list>
                </category>
              </category_list>
            </class>
          </class_list>
        </measure>
        <measure>
          <title>Age</title>
          <units>Days</units>
          <param>Median</param>
          <dispersion>Full Range</dispersion>
          <class_list>
            <class>
              <category_list>
                <category>
                  <measurement_list>
                    <measurement group_id="B1" value="38" lower_limit="14" upper_limit="86"/>
                    <measurement group_id="B2" value="35" lower_limit="14" upper_limit="85"/>
                    <measurement group_id="B3" value="30" lower_limit="14" upper_limit="62"/>
                    <measurement group_id="B4" value="35" lower_limit="14" upper_limit="86"/>
                  </measurement_list>
                </category>
              </category_list>
            </class>
          </class_list>
        </measure>
        <measure>
          <title>Gender</title>
          <units>participants</units>
          <param>Number</param>
          <class_list>
            <class>
              <title>Female</title>
              <category_list>
                <category>
                  <measurement_list>
                    <measurement group_id="B1" value="31"/>
                    <measurement group_id="B2" value="21"/>
                    <measurement group_id="B3" value="39"/>
                    <measurement group_id="B4" value="91"/>
                  </measurement_list>
                </category>
              </category_list>
            </class>
            <class>
              <title>Male</title>
              <category_list>
                <category>
                  <measurement_list>
                    <measurement group_id="B1" value="29"/>
                    <measurement group_id="B2" value="38"/>
                    <measurement group_id="B3" value="18"/>
                    <measurement group_id="B4" value="85"/>
                  </measurement_list>
                </category>
              </category_list>
            </class>
          </class_list>
        </measure>
        <measure>
          <title>Region of Enrollment</title>
          <units>participants</units>
          <param>Number</param>
          <class_list>
            <class>
              <title>Italy</title>
              <category_list>
                <category>
                  <measurement_list>
                    <measurement group_id="B1" value="60"/>
                    <measurement group_id="B2" value="59"/>
                    <measurement group_id="B3" value="57"/>
                    <measurement group_id="B4" value="176"/>
                  </measurement_list>
                </category>
              </category_list>
            </class>
          </class_list>
        </measure>
      </measure_list>
    </baseline>

    <outcome_list>
      <outcome>
        <type>Primary</type>
        <title>Median Daily Crying Time at the End of the Treatment</title>
        <description>Median daily crying at the end of treatment (day 28).</description>
        <time_frame>28 days of treatment</time_frame>
        <group_list>
          <group group_id="O1">
            <title>Group A</title>
            <description>All enrolled infants randomized to Group A will receive a standardized extract of Chamomilla L., Melissa Officinalis L. and tyndallized Lactobacillus Acidophilus (H122), administered at the dose of 1 ml twice a day of a commercially available solution
Standardized extract of Chamomilla L., Melissa Officinalis L. and tyndallized L. Acidophilus (H122)</description>
          </group>
          <group group_id="O2">
            <title>Group B</title>
            <description>All enrolled infants randomized to Group B will receive Lactobacillus reuteri DSM 17938 administered at the dose of 108 colony-forming units (CFU)/day in 5 drops of a commercially available oil suspension
Lactobacillus reuteri DSM 17938 (108 CFU)</description>
          </group>
          <group group_id="O3">
            <title>Group C</title>
            <description>All enrolled infants randomized to Group C will receive simethicone, given at a dose of 60 mg in 20 drops four times per day of a commercially available solution
Simethicone</description>
          </group>
        </group_list>
        <measure>
          <title>Median Daily Crying Time at the End of the Treatment</title>
          <description>Median daily crying at the end of treatment (day 28).</description>
          <units>minutes</units>
          <param>Median</param>
          <dispersion>Full Range</dispersion>
          <analyzed_list>
            <analyzed>
              <units>Participants</units>
              <scope>Measure</scope>
              <count_list>
                <count group_id="O1" value="60"/>
                <count group_id="O2" value="59"/>
                <count group_id="O3" value="57"/>
              </count_list>
            </analyzed>
          </analyzed_list>
          <class_list>
            <class>
              <category_list>
                <category>
                  <measurement_list>
                    <measurement group_id="O1" value="50" lower_limit="30" upper_limit="180"/>
                    <measurement group_id="O2" value="55" lower_limit="30" upper_limit="180"/>
                    <measurement group_id="O3" value="80" lower_limit="30" upper_limit="270"/>
                  </measurement_list>
                </category>
              </category_list>
            </class>
          </class_list>
        </measure>
      </outcome>
      <outcome>
        <type>Secondary</type>
        <title>Number of Responders</title>
        <description>Number of responders defined as the number of patients who experienced a decrease in the daily average crying time of 50% from baseline</description>
        <time_frame>28 days of treatment</time_frame>
        <group_list>
          <group group_id="O1">
            <title>Group A</title>
            <description>All enrolled infants randomized to Group A will receive a standardized extract of Chamomilla L., Melissa Officinalis L. and tyndallized Lactobacillus Acidophilus (H122), administered at the dose of 1 ml twice a day of a commercially available solution
Standardized extract of Chamomilla L., Melissa Officinalis L. and tyndallized L. Acidophilus (H122)</description>
          </group>
          <group group_id="O2">
            <title>Group B</title>
            <description>All enrolled infants randomized to Group B will receive Lactobacillus reuteri DSM 17938 administered at the dose of 108 colony-forming units (CFU)/day in 5 drops of a commercially available oil suspension
Lactobacillus reuteri DSM 17938 (108 CFU)</description>
          </group>
          <group group_id="O3">
            <title>Group C</title>
            <description>All enrolled infants randomized to Group C will receive simethicone, given at a dose of 60 mg in 20 drops four times per day of a commercially available solution
Simethicone</description>
          </group>
        </group_list>
        <measure>
          <title>Number of Responders</title>
          <description>Number of responders defined as the number of patients who experienced a decrease in the daily average crying time of 50% from baseline</description>
          <units>number of responders</units>
          <param>Number</param>
          <analyzed_list>
            <analyzed>
              <units>Participants</units>
              <scope>Measure</scope>
              <count_list>
                <count group_id="O1" value="60"/>
                <count group_id="O2" value="59"/>
                <count group_id="O3" value="57"/>
              </count_list>
            </analyzed>
          </analyzed_list>
          <class_list>
            <class>
              <category_list>
                <category>
                  <measurement_list>
                    <measurement group_id="O1" value="57"/>
                    <measurement group_id="O2" value="47"/>
                    <measurement group_id="O3" value="38"/>
                  </measurement_list>
                </category>
              </category_list>
            </class>
          </class_list>
        </measure>
      </outcome>
    </outcome_list>

    <reported_events>
      <group_list>
        <group group_id="E1">
          <title>Group A</title>
          <description>All enrolled infants randomized to Group A will receive a standardized extract of Chamomilla L., Melissa Officinalis L. and tyndallized Lactobacillus Acidophilus (H122), administered at the dose of 1 ml twice a day of a commercially available solution
Standardized extract of Chamomilla L., Melissa Officinalis L. and tyndallized L. Acidophilus (H122)</description>
        </group>
        <group group_id="E2">
          <title>Group B</title>
          <description>All enrolled infants randomized to Group B will receive Lactobacillus reuteri DSM 17938 administered at the dose of 108 colony-forming units (CFU)/day in 5 drops of a commercially available oil suspension
Lactobacillus reuteri DSM 17938 (108 CFU)</description>
        </group>
        <group group_id="E3">
          <title>Group C</title>
          <description>All enrolled infants randomized to Group C will receive simethicone, given at a dose of 60 mg in 20 drops four times per day of a commercially available solution
Simethicone</description>
        </group>
      </group_list>
      <serious_events>
        <category_list>
          <category>
            <title>Total</title>
            <event_list>
              <event>
                <sub_title>Total, serious adverse events</sub_title>
                <counts group_id="E1" subjects_affected="0" subjects_at_risk="60"/>
                <counts group_id="E2" subjects_affected="0" subjects_at_risk="59"/>
                <counts group_id="E3" subjects_affected="0" subjects_at_risk="57"/>
              </event>
            </event_list>
          </category>
        </category_list>
      </serious_events>
      <other_events>
        <frequency_threshold>0</frequency_threshold>
        <category_list>
          <category>
            <title>Total</title>
            <event_list>
              <event>
                <sub_title>Total, other adverse events</sub_title>
                <counts group_id="E1" subjects_affected="0" subjects_at_risk="60"/>
                <counts group_id="E2" subjects_affected="0" subjects_at_risk="59"/>
                <counts group_id="E3" subjects_affected="0" subjects_at_risk="57"/>
              </event>
            </event_list>
          </category>
        </category_list>
      </other_events>
    </reported_events>

    <certain_agreements>
      <pi_employee>Principal Investigators are NOT employed by the organization sponsoring the study.</pi_employee>
      <restrictive_agreement>There is NOT an agreement between Principal Investigators and the Sponsor (or its agents) that restricts the PI's rights to discuss or publish trial results after the trial is completed. </restrictive_agreement>
    </certain_agreements>
    <limitations_and_caveats>The absence of a placebo group and the open label design represent the main limitations of this study</limitations_and_caveats>
    <point_of_contact>
      <name_or_title>Annamaria Staiano</name_or_title>
      <organization>Department of Translational Medical Sciences, Section of Pediatrics, University of Naples "Federico II"</organization>
      <phone>00390817462679</phone>
      <email>staiano@unina.it</email>
    </point_of_contact>
  </clinical_results>
</clinical_study>