text:
<?php

/* blog.html.twig */
class __TwigTemplate_89ee6cf8e0b81ab71c12c36ca28685fdffb45ea67322509c85f39b7172315916 extends Twig_Template
{
    public function __construct(Twig_Environment $env)
    {
        parent::__construct($env);

        $this->parent = false;

        $this->blocks = array(
        );
    }

    protected function doDisplay(array $context, array $blocks = array())
    {
        // line 1
        $this->loadTemplate("blog.html.twig", "blog.html.twig", 1, "558316879")->display($context);
        // line 30
        echo "

";
    }

    public function getTemplateName()
    {
        return "blog.html.twig";
    }

    public function isTraitable()
    {
        return false;
    }

    public function getDebugInfo()
    {
        return array (  21 => 30,  19 => 1,);
    }
}

/* blog.html.twig */
class __TwigTemplate_89ee6cf8e0b81ab71c12c36ca28685fdffb45ea67322509c85f39b7172315916_558316879 extends Twig_Template
{
    public function __construct(Twig_Environment $env)
    {
        parent::__construct($env);

        // line 1
        $this->parent = $this->loadTemplate("partials/base.html.twig", "blog.html.twig", 1);
        $this->blocks = array(
            'content' => array($this, 'block_content'),
        );
    }

    protected function doGetParent(array $context)
    {
        return "partials/base.html.twig";
    }

    protected function doDisplay(array $context, array $blocks = array())
    {
        // line 3
        $context["collection"] = $this->getAttribute((isset($context["page"]) ? $context["page"] : null), "collection", array(), "method");
        // line 4
        $context["base_url"] = $this->getAttribute((isset($context["page"]) ? $context["page"] : null), "url", array());
        // line 5
        $context["feed_url"] = (isset($context["base_url"]) ? $context["base_url"] : null);
        // line 7
        if (((isset($context["base_url"]) ? $context["base_url"] : null) == "/")) {
            // line 8
            $context["base_url"] = "";
        }
        // line 11
        if (((isset($context["base_url"]) ? $context["base_url"] : null) == (isset($context["base_url_relative"]) ? $context["base_url_relative"] : null))) {
            // line 12
            $context["feed_url"] = (((isset($context["base_url"]) ? $context["base_url"] : null) . "/") . $this->getAttribute((isset($context["page"]) ? $context["page"] : null), "slug", array()));
        }
        // line 1
        $this->parent->display($context, array_merge($this->blocks, $blocks));
    }

    // line 15
    public function block_content($context, array $blocks = array())
    {
        // line 16
        echo "    ";
        if ($this->getAttribute($this->getAttribute($this->getAttribute((isset($context["config"]) ? $context["config"] : null), "plugins", array()), "breadcrumbs", array()), "enabled", array())) {
            // line 17
            echo "      ";
            $this->loadTemplate("partials/breadcrumbs.html.twig", "blog.html.twig", 17)->display($context);
            // line 18
            echo "    ";
        }
        // line 19
        echo "
    ";
        // line 20
        $context['_parent'] = $context;
        $context['_seq'] = twig_ensure_traversable((isset($context["collection"]) ? $context["collection"] : null));
        $context['loop'] = array(
          'parent' => $context['_parent'],
          'index0' => 0,
          'index'  => 1,
          'first'  => true,
        );
        if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof Countable)) {
            $length = count($context['_seq']);
            $context['loop']['revindex0'] = $length - 1;
            $context['loop']['revindex'] = $length;
            $context['loop']['length'] = $length;
            $context['loop']['last'] = 1 === $length;
        }
        foreach ($context['_seq'] as $context["_key"] => $context["child"]) {
            // line 21
            echo "      ";
            $this->loadTemplate("partials/blog_item.html.twig", "blog.html.twig", 21)->display(array_merge($context, array("page" => $context["child"], "truncate" => true)));
            // line 22
            echo "    ";
            ++$context['loop']['index0'];
            ++$context['loop']['index'];
            $context['loop']['first'] = false;
            if (isset($context['loop']['length'])) {
                --$context['loop']['revindex0'];
                --$context['loop']['revindex'];
                $context['loop']['last'] = 0 === $context['loop']['revindex0'];
            }
        }
        $_parent = $context['_parent'];
        unset($context['_seq'], $context['_iterated'], $context['_key'], $context['child'], $context['_parent'], $context['loop']);
        $context = array_intersect_key($context, $_parent) + $_parent;
        // line 23
        echo "
    ";
        // line 24
        if (($this->getAttribute($this->getAttribute($this->getAttribute((isset($context["config"]) ? $context["config"] : null), "plugins", array()), "pagination", array()), "enabled", array()) && $this->getAttribute($this->getAttribute((isset($context["collection"]) ? $context["collection"] : null), "params", array()), "pagination", array()))) {
            // line 25
            echo "      ";
            $this->loadTemplate("partials/pagination.html.twig", "blog.html.twig", 25)->display(array_merge($context, array("pagination" => $this->getAttribute($this->getAttribute((isset($context["collection"]) ? $context["collection"] : null), "params", array()), "pagination", array()))));
            // line 26
            echo "    ";
        }
        // line 27
        echo "  ";
    }

    public function getTemplateName()
    {
        return "blog.html.twig";
    }

    public function isTraitable()
    {
        return false;
    }

    public function getDebugInfo()
    {
        return array (  145 => 27,  142 => 26,  139 => 25,  137 => 24,  134 => 23,  120 => 22,  117 => 21,  100 => 20,  97 => 19,  94 => 18,  91 => 17,  88 => 16,  85 => 15,  81 => 1,  78 => 12,  76 => 11,  73 => 8,  71 => 7,  69 => 5,  67 => 4,  65 => 3,  51 => 1,  21 => 30,  19 => 1,);
    }
}
/* {% embed 'partials/base.html.twig' %}*/
/* */
/*   {% set collection = page.collection() %}*/
/*   {% set base_url = page.url %}*/
/*   {% set feed_url = base_url %}*/
/* */
/*   {% if base_url == '/' %}*/
/*     {% set base_url = '' %}*/
/*   {% endif %}*/
/* */
/*   {% if base_url == base_url_relative %}*/
/*     {% set feed_url = base_url~'/'~page.slug %}*/
/*   {% endif  %}*/
/* */
/*   {% block content %}*/
/*     {% if config.plugins.breadcrumbs.enabled %}*/
/*       {% include 'partials/breadcrumbs.html.twig' %}*/
/*     {% endif %}*/
/* */
/*     {% for child in collection %}*/
/*       {% include 'partials/blog_item.html.twig' with {'page':child, 'truncate':true} %}*/
/*     {% endfor %}*/
/* */
/*     {% if config.plugins.pagination.enabled and collection.params.pagination %}*/
/*       {% include 'partials/pagination.html.twig' with {'pagination':collection.params.pagination} %}*/
/*     {% endif %}*/
/*   {% endblock %}*/
/* */
/* {% endembed %}*/
/* */
/* */
/* */


text:
package com.azure.spring.cloud.service.implementation.storage;

import com.azure.spring.cloud.core.provider.RetryOptionsProvider;
import com.azure.spring.cloud.service.implementation.storage.common.StorageRetryProperties;
import com.azure.storage.common.policy.RequestRetryOptions;
import org.junit.jupiter.api.Test;

import java.time.Duration;

import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;

class AzureStorageRetryOptionsConverterTests {

    @Test
    void correctlyConvertedExponential() {
        StorageRetryProperties source = new StorageRetryProperties();
        source.setSecondaryHost("localhost");
        source.getExponential().setMaxRetries(1);
        source.getExponential().setBaseDelay(Duration.ofSeconds(2));
        source.getExponential().setMaxDelay(Duration.ofSeconds(3));
        source.setTryTimeout(Duration.ofSeconds(4));
        source.setMode(RetryOptionsProvider.RetryMode.EXPONENTIAL);

        RequestRetryOptions target = AzureStorageRetryOptionsConverter.STORAGE_RETRY_CONVERTER.convert(source);

        assertNotNull(target);
        assertNotNull(target);
        assertEquals(1, target.getMaxTries());
        assertEquals(2, target.getRetryDelay().getSeconds());
        assertEquals(3, target.getMaxRetryDelay().getSeconds());
        assertEquals(4, target.getTryTimeoutDuration().getSeconds());
        assertEquals("localhost", target.getSecondaryHost());
    }

    @Test
    void correctlyConvertedFixed() {
        StorageRetryProperties source = new StorageRetryProperties();
        source.setSecondaryHost("localhost");
        source.getFixed().setMaxRetries(1);
        source.getFixed().setDelay(Duration.ofSeconds(2));
        source.setTryTimeout(Duration.ofSeconds(3));
        source.setMode(RetryOptionsProvider.RetryMode.FIXED);

        RequestRetryOptions target = AzureStorageRetryOptionsConverter.STORAGE_RETRY_CONVERTER.convert(source);

        assertNotNull(target);
        assertNotNull(target);
        assertEquals(1, target.getMaxTries());
        assertEquals(2, target.getRetryDelay().getSeconds());
        assertEquals(3, target.getTryTimeoutDuration().getSeconds());
        assertEquals("localhost", target.getSecondaryHost());
    }

}

redpajama_set_name: RedPajamaGithub


text:
// Only compile this code on iOS. These files should NOT be included on your Mac project.
// But in case they are included, it won't be compiled.
#import "../../ccMacros.h"
#ifdef __CC_PLATFORM_IOS

#import <unistd.h>

// cocos2d imports
#import "CCDirectorIOS.h"
#import "CCTouchDelegateProtocol.h"
#import "CCTouchDispatcher.h"
#import "../../CCScheduler.h"
#import "../../CCActionManager.h"
#import "../../CCTextureCache.h"
#import "../../ccMacros.h"
#import "../../CCScene.h"
#import "../../CCGLProgram.h"
#import "../../ccGLStateCache.h"
#import "../../CCLayer.h"

// support imports
#import "../../Support/OpenGL_Internal.h"
#import "../../Support/CGPointExtension.h"
#import "../../Support/TransformUtils.h"

#import "kazmath/kazmath.h"
#import "kazmath/GL/matrix.h"

#if CC_ENABLE_PROFILERS
#import "../../Support/CCProfiling.h"
#endif

#pragma mark -
#pragma mark Director - global variables (optimization)

CGFloat	__ccContentScaleFactor = 1;

#pragma mark -
#pragma mark Director

@interface CCDirector ()
-(void) setNextScene;
-(void) showStats;
-(void) calculateDeltaTime;
-(void) calculateMPF;
@end

@implementation CCDirector (iOSExtensionClassMethods)

+(Class) defaultDirector
{
	return [CCDirectorDisplayLink class];
}

-(void) setInterfaceOrientationDelegate:(id)delegate
{
	// override me
}

-(CCTouchDispatcher*) touchDispatcher
{
	return nil;
}

-(void) setTouchDispatcher:(CCTouchDispatcher*)touchDispatcher
{
	//
}
@end

#pragma mark -
#pragma mark CCDirectorIOS

@interface CCDirectorIOS ()
-(void) updateContentScaleFactor;
@end

@implementation CCDirectorIOS

- (id) init
{
	if( (self=[super init]) ) {

		__ccContentScaleFactor = 1;
		isContentScaleSupported_ = NO;

		touchDispatcher_ = [[CCTouchDispatcher alloc] init];

		// running thread is main thread on iOS
		runningThread_ = [NSThread currentThread];

		// Apparently it comes with a default view, and we don't want it
//		[self setView:nil];
	}

	return self;
}

- (void) dealloc
{
	[touchDispatcher_ release];

	[super dealloc];
}

//
// Draw the Scene
//
- (void) drawScene
{
	/* calculate "global" dt */
	[self calculateDeltaTime];

	CCGLView *openGLview = (CCGLView*)[self view];

	[EAGLContext setCurrentContext: [openGLview context]];

	/* tick before glClear: issue #533 */
	if( ! isPaused_ )
		[scheduler_ update: dt];

	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

	/* to avoid flickr, nextScene MUST be here: after tick and before draw.
	 XXX: Which bug is this one. It seems that it can't be reproduced with v0.9 */
	if( nextScene_ )
		[self setNextScene];

	kmGLPushMatrix();

	[runningScene_ visit];

	[notificationNode_ visit];

	if( displayStats_ )
		[self showStats];

	kmGLPopMatrix();

	totalFrames_++;

	[openGLview swapBuffers];

	if( displayStats_ )
		[self calculateMPF];
}

-(void) setProjection:(ccDirectorProjection)projection
{
	CGSize size = winSizeInPixels_;
	CGSize sizePoint = winSizeInPoints_;

	glViewport(0, 0, size.width, size.height );

	switch (projection) {
		case kCCDirectorProjection2D:

			kmGLMatrixMode(KM_GL_PROJECTION);
			kmGLLoadIdentity();

			kmMat4 orthoMatrix;
			kmMat4OrthographicProjection(&orthoMatrix, 0, size.width / CC_CONTENT_SCALE_FACTOR(), 0, size.height / CC_CONTENT_SCALE_FACTOR(), -1024, 1024 );
			kmGLMultMatrix( &orthoMatrix );

			kmGLMatrixMode(KM_GL_MODELVIEW);
			kmGLLoadIdentity();
			break;

		case kCCDirectorProjection3D:
		{
			float zeye = [self getZEye];

			kmMat4 matrixPerspective, matrixLookup;

			kmGLMatrixMode(KM_GL_PROJECTION);
			kmGLLoadIdentity();

			// issue #1334
			kmMat4PerspectiveProjection( &matrixPerspective, 60, (GLfloat)size.width/size.height, 0.1f, zeye*2);
//			kmMat4PerspectiveProjection( &matrixPerspective, 60, (GLfloat)size.width/size.height, 0.1f, 1500);

			kmGLMultMatrix(&matrixPerspective);

			kmGLMatrixMode(KM_GL_MODELVIEW);
			kmGLLoadIdentity();
			kmVec3 eye, center, up;
			kmVec3Fill( &eye, sizePoint.width/2, sizePoint.height/2, zeye );
			kmVec3Fill( &center, sizePoint.width/2, sizePoint.height/2, 0 );
			kmVec3Fill( &up, 0, 1, 0);
			kmMat4LookAt(&matrixLookup, &eye, &center, &up);
			kmGLMultMatrix(&matrixLookup);
			break;
		}

		case kCCDirectorProjectionCustom:
			if( [delegate_ respondsToSelector:@selector(updateProjection)] )
				[delegate_ updateProjection];
			break;

		default:
			CCLOG(@"cocos2d: Director: unrecognized projection");
			break;
	}

	projection_ = projection;

	ccSetProjectionMatrixDirty();
}

// override default logic
- (void)runWithScene:(CCScene*) scene
{
	NSAssert( scene != nil, @"Argument must be non-nil");
	NSAssert(runningScene_ == nil, @"This command can only be used to start the CCDirector. There is already a scene present.");

	[self pushScene:scene];

	NSThread *thread = [self runningThread];
	[self performSelector:@selector(drawScene) onThread:thread withObject:nil waitUntilDone:YES];
}

#pragma mark Director - TouchDispatcher

-(CCTouchDispatcher*) touchDispatcher
{
	return touchDispatcher_;
}

-(void) setTouchDispatcher:(CCTouchDispatcher*)touchDispatcher
{
	if( touchDispatcher != touchDispatcher_ ) {
		[touchDispatcher_ release];
		touchDispatcher_ = [touchDispatcher retain];
	}
}

#pragma mark Director - Retina Display

-(CGFloat) contentScaleFactor
{
	return __ccContentScaleFactor;
}

-(void) setContentScaleFactor:(CGFloat)scaleFactor
{
	if( scaleFactor != __ccContentScaleFactor ) {

		__ccContentScaleFactor = scaleFactor;
		winSizeInPixels_ = CGSizeMake( winSizeInPoints_.width * scaleFactor, winSizeInPoints_.height * scaleFactor );

		if( view_ )
			[self updateContentScaleFactor];

		// update projection
		[self setProjection:projection_];
	}
}

-(void) updateContentScaleFactor
{
	NSAssert( [view_ respondsToSelector:@selector(setContentScaleFactor:)], @"cocos2d v2.0+ runs on iOS 4 or later");

	[view_ setContentScaleFactor: __ccContentScaleFactor];
	isContentScaleSupported_ = YES;
}

-(BOOL) enableRetinaDisplay:(BOOL)enabled
{
	// Already enabled ?
	if( enabled && __ccContentScaleFactor == 2 )
		return YES;

	// Already disabled
	if( ! enabled && __ccContentScaleFactor == 1 )
		return YES;

	// setContentScaleFactor is not supported
	if (! [view_ respondsToSelector:@selector(setContentScaleFactor:)])
		return NO;

	// SD device
	if ([[UIScreen mainScreen] scale] == 1.0)
		return NO;

	float newScale = enabled ? 2 : 1;
	[self setContentScaleFactor:newScale];

	// Load Hi-Res FPS label
	[self createStatsLabel];

	return YES;
}

// overriden, don't call super
-(void) reshapeProjection:(CGSize)size
{
	winSizeInPoints_ = [view_ bounds].size;
	winSizeInPixels_ = CGSizeMake(winSizeInPoints_.width * __ccContentScaleFactor, winSizeInPoints_.height *__ccContentScaleFactor);

	[self setProjection:projection_];

	if( [delegate_ respondsToSelector:@selector(directorDidReshapeProjection:)] )
		[delegate_ directorDidReshapeProjection:self];
}

static void
GLToClipTransform(kmMat4 *transformOut)
{
	kmMat4 projection;
	kmGLGetMatrix(KM_GL_PROJECTION, &projection);

	kmMat4 modelview;
	kmGLGetMatrix(KM_GL_MODELVIEW, &modelview);

	kmMat4Multiply(transformOut, &projection, &modelview);
}

#pragma mark Director Point Convertion

-(CGPoint)convertToGL:(CGPoint)uiPoint
{
	kmMat4 transform;
	GLToClipTransform(&transform);

	kmMat4 transformInv;
	kmMat4Inverse(&transformInv, &transform);

	// Calculate z=0 using -> transform*[0, 0, 0, 1]/w
	kmScalar zClip = transform.mat[14]/transform.mat[15];

	CGSize glSize = view_.bounds.size;
	kmVec3 clipCoord = {2.0*uiPoint.x/glSize.width - 1.0, 1.0 - 2.0*uiPoint.y/glSize.height, zClip};

	kmVec3 glCoord;
	kmVec3TransformCoord(&glCoord, &clipCoord, &transformInv);

//	NSLog(@"uiPoint: %@, glPoint: %@", NSStringFromCGPoint(uiPoint), NSStringFromCGPoint(ccp(glCoord.x, glCoord.y)));
	return ccp(glCoord.x, glCoord.y);
}

-(CGPoint)convertTouchToGL:(UITouch*)touch
{
	CGPoint uiPoint = [touch locationInView: [touch view]];
	return [self convertToGL:uiPoint];
}

-(CGPoint)convertToUI:(CGPoint)glPoint
{
	kmMat4 transform;
	GLToClipTransform(&transform);

	kmVec3 clipCoord;
	// Need to calculate the zero depth from the transform.
	kmVec3 glCoord = {glPoint.x, glPoint.y, 0.0};
	kmVec3TransformCoord(&clipCoord, &glCoord, &transform);

	CGSize glSize = view_.bounds.size;
	return ccp(glSize.width*(clipCoord.x*0.5 + 0.5), glSize.height*(-clipCoord.y*0.5 + 0.5));
}

-(void) end
{
	// don't release the event handlers
	// They are needed in case the director is run again
	[touchDispatcher_ removeAllDelegates];

	[super end];
}

#pragma mark Director - UIViewController delegate

-(void) setView:(CCGLView *)view
{
	if( view != view_) {
		[super setView:view];

		if( view ) {
			// set size
			winSizeInPixels_ = CGSizeMake(winSizeInPoints_.width * __ccContentScaleFactor, winSizeInPoints_.height *__ccContentScaleFactor);

			if( __ccContentScaleFactor != 1 )
				[self updateContentScaleFactor];

			[view setTouchDelegate: touchDispatcher_];
			[touchDispatcher_ setDispatchEvents: YES];
		}
	}
}

// Override to allow orientations other than the default portrait orientation.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
	BOOL ret =YES;
	if( [delegate_ respondsToSelector:_cmd] )
		ret = (BOOL) [delegate_ shouldAutorotateToInterfaceOrientation:interfaceOrientation];

	return ret;
}

-(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
	// do something ?
}

-(void) viewWillAppear:(BOOL)animated
{
	[super viewWillAppear:animated];
	[self startAnimation];
}

-(void) viewDidAppear:(BOOL)animated
{
	[super viewDidAppear:animated];
//	[self startAnimation];
}

-(void) viewWillDisappear:(BOOL)animated
{
//	[self stopAnimation];

	[super viewWillDisappear:animated];
}

-(void) viewDidDisappear:(BOOL)animated
{
	[self stopAnimation];

	[super viewDidDisappear:animated];
}

- (void)didReceiveMemoryWarning
{
	// Release any cached data, images, etc that aren't in use.
	[super purgeCachedData];

    // Releases the view if it doesn't have a superview.
    [super didReceiveMemoryWarning];
}

-(void) viewDidLoad
{
	CCLOG(@"cocos2d: viewDidLoad");

	[super viewDidLoad];
}

- (void)viewDidUnload
{
	CCLOG(@"cocos2d: viewDidUnload");

    [super viewDidUnload];
    // Release any retained subviews of the main view.
    // e.g. self.myOutlet = nil;
}
@end

#pragma mark -
#pragma mark DirectorDisplayLink

@implementation CCDirectorDisplayLink

-(void) mainLoop:(id)sender
{
	[self drawScene];
}

- (void)setAnimationInterval:(NSTimeInterval)interval
{
	animationInterval_ = interval;
	if(displayLink_){
		[self stopAnimation];
		[self startAnimation];
	}
}

- (void) startAnimation
{
    if(isAnimating_)
        return;

	gettimeofday( &lastUpdate_, NULL);

	// approximate frame rate
	// assumes device refreshes at 60 fps
	int frameInterval = (int) floor(animationInterval_ * 60.0f);

	CCLOG(@"cocos2d: animation started with frame interval: %.2f", 60.0f/frameInterval);

	displayLink_ = [CADisplayLink displayLinkWithTarget:self selector:@selector(mainLoop:)];
	[displayLink_ setFrameInterval:frameInterval];

#if CC_DIRECTOR_IOS_USE_BACKGROUND_THREAD
	//
	runningThread_ = [[NSThread alloc] initWithTarget:self selector:@selector(threadMainLoop) object:nil];
	[runningThread_ start];

#else
	// setup DisplayLink in main thread
	[displayLink_ addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
#endif

    isAnimating_ = YES;
}

- (void) stopAnimation
{
    if(!isAnimating_)
        return;

	CCLOG(@"cocos2d: animation stopped");

#if CC_DIRECTOR_IOS_USE_BACKGROUND_THREAD
	[runningThread_ cancel];
	[runningThread_ release];
	runningThread_ = nil;
#endif

	[displayLink_ invalidate];
	displayLink_ = nil;
    isAnimating_ = NO;
}

// Overriden in order to use a more stable delta time
-(void) calculateDeltaTime
{
    // New delta time. Re-fixed issue #1277
    if( nextDeltaTimeZero_ || lastDisplayTime_==0 ) {
        dt = 0;
        nextDeltaTimeZero_ = NO;
    } else {
        dt = displayLink_.timestamp - lastDisplayTime_;
        dt = MAX(0,dt);
    }
    // Store this timestamp for next time
    lastDisplayTime_ = displayLink_.timestamp;

	// needed for SPF
	if( displayStats_ )
		gettimeofday( &lastUpdate_, NULL);

#ifdef DEBUG
	// If we are debugging our code, prevent big delta time
	if( dt > 0.2f )
		dt = 1/60.0f;
#endif
}

#pragma mark Director Thread

//
// Director has its own thread
//
-(void) threadMainLoop
{
	NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

	[displayLink_ addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];

	// start the run loop
	[[NSRunLoop currentRunLoop] run];

	[pool release];
}

-(void) dealloc
{
	[displayLink_ release];
	[super dealloc];
}
@end

#endif // __CC_PLATFORM_IOS


text:
'use strict';
var yeoman = require('yeoman-generator');

var dir = 'src/public';

module.exports = yeoman.generators.Base.extend({
  write: function () {
    this.directory('public', dir);
  }
});


text:
<?php

namespace Ergo;

class Exception extends \Exception {}


text:
package org.apache.camel.component.disruptor;

import org.apache.camel.Exchange;
import org.apache.camel.support.ExchangeHelper;

/**
 * Implementation of the {@link SynchronizedExchange} interface optimized for single consumers.
 */
public class SingleConsumerSynchronizedExchange extends  AbstractSynchronizedExchange {

    public SingleConsumerSynchronizedExchange(Exchange exchange) {
        super(exchange);
    }

    @Override
    public void consumed(Exchange result) {
        ExchangeHelper.copyResults(getExchange(), result);

        performSynchronization();
    }
}


text:
namespace SSRSDeployerTool.SSRSWebService
{
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.0.30319.34230")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices")]
    public partial class MonthsOfYearSelector
    {
        /// <remarks/>
        public bool January { get; set; }

        /// <remarks/>
        public bool February { get; set; }

        /// <remarks/>
        public bool March { get; set; }

        /// <remarks/>
        public bool April { get; set; }

        /// <remarks/>
        public bool May { get; set; }

        /// <remarks/>
        public bool June { get; set; }

        /// <remarks/>
        public bool July { get; set; }

        /// <remarks/>
        public bool August { get; set; }

        /// <remarks/>
        public bool September { get; set; }

        /// <remarks/>
        public bool October { get; set; }

        /// <remarks/>
        public bool November { get; set; }

        /// <remarks/>
        public bool December { get; set; }
    }
}


text:
package com.raw.khipu.main;

import java.io.Serializable;

import com.raw.khipu.KhipuAppUI;
import com.raw.khipu.main.MainView.StartViewListener;
import com.raw.khipu.menu.MenuModel;
import com.raw.khipu.menu.MenuPresenter;
import com.raw.khipu.menu.MenuView;
import com.raw.khipu.menu.MenuViewImpl;
import com.raw.khipu.util.FontAwesomePallete;

public class MainPresenter implements StartViewListener, Serializable {

  private static final long serialVersionUID = -4395838599422325034L;
  private MainModel mainModel;
  private MainView mainView;
  private MenuPresenter menuPresenter;

  public MainPresenter(MainModel model, MainView view) throws Exception {
    this.mainModel = model;
    this.mainView = view;
    mainView.addListener(this);

  }

  @Override
  public void buttonClick(String operation) {
    if (operation == "btnMenu") {
      MenuModel menuModel = new MenuModel();
      MenuView menuView;
      try {
        menuView = new MenuViewImpl(mainView.getUIApp(), menuModel.getOptions(mainView.getUIApp()
            .getRegisteredUser(), ""));

        menuPresenter = new MenuPresenter(menuModel, menuView, mainView);
        mainView.setWindow((menuPresenter.getWindow()));
      } catch (Exception e) {
        e.printStackTrace();
      }

    }
    if (operation == "btnHome") {
      mainView.getUIApp().getNavigator().navigateTo(KhipuAppUI.LOGINVIEW);
    }
    if (operation == "btnFind") {
      mainView.getUIApp().setActivateFormCache(true);
    }
    if (operation == "btnConfig") {
      mainView.getUIApp().setActivateFormCache(false);
    }
    if (operation == "btnMessages") {
      FontAwesomePallete pallete = new FontAwesomePallete();
      mainView.setWindow(pallete.getWindow());
    }
    if (operation == "btnPerfil") {
      System.out.println(operation);
    }
  }
}


text:
import {
  AsyncTestCompleter,
  beforeEach,
  ddescribe,
  describe,
  expect,
  iit,
  inject,
  it,
  xdescribe,
  xit
} from 'angular2/test_lib';

import {getSymbolsFromLibrary} from './symbol_inspector/symbol_inspector';
import {SymbolsDiff} from './symbol_inspector/symbol_differ';

// =================================================================================================
// =================================================================================================
// =========== S T O P   -  S T O P   -  S T O P   -  S T O P   -  S T O P   -  S T O P  ===========
// =================================================================================================
// =================================================================================================
//
// DO NOT EDIT THIS LIST OF PUBLIC APIS UNLESS YOU GET IT CLEARED BY: mhevery, vsavkin, or tbosch!
//
// =================================================================================================
// =================================================================================================

var NG_API = [
  'APP_COMPONENT',
  'APP_ID',
  'AbstractBindingError',
  'AbstractBindingError.addKey()',
  'AbstractBindingError.constructResolvingMessage',
  'AbstractBindingError.constructResolvingMessage=',
  'AbstractBindingError.context',
  'AbstractBindingError.injectors',
  'AbstractBindingError.injectors=',
  'AbstractBindingError.keys',
  'AbstractBindingError.keys=',
  'AbstractBindingError.message',
  'AbstractBindingError.message=',
  'AbstractBindingError.stackTrace',
  'AbstractControl',
  'AbstractControl.dirty',
  'AbstractControl.errors',
  'AbstractControl.find()',
  'AbstractControl.getError()',
  'AbstractControl.hasError()',
  'AbstractControl.markAsDirty()',
  'AbstractControl.markAsTouched()',
  'AbstractControl.pristine',
  'AbstractControl.setParent()',
  'AbstractControl.status',
  'AbstractControl.touched',
  'AbstractControl.untouched',
  'AbstractControl.updateValidity()',
  'AbstractControl.updateValueAndValidity()',
  'AbstractControl.valid',
  'AbstractControl.validator',
  'AbstractControl.validator=',
  'AbstractControl.value',
  'AbstractControl.valueChanges',
  'AbstractControlDirective',
  'AbstractControlDirective.control',
  'AbstractControlDirective.dirty',
  'AbstractControlDirective.errors',
  'AbstractControlDirective.pristine',
  'AbstractControlDirective.touched',
  'AbstractControlDirective.untouched',
  'AbstractControlDirective.valid',
  'AbstractControlDirective.value',
  'AppRootUrl',
  'AppRootUrl.value',
  'AppRootUrl.value=',
  'AppViewManager',
  'AppViewManager.attachViewInContainer()',
  'AppViewManager.createEmbeddedViewInContainer()',
  'AppViewManager.createHostViewInContainer()',
  'AppViewManager.createRootHostView()',
  'AppViewManager.destroyRootHostView()',
  'AppViewManager.destroyViewInContainer()',
  'AppViewManager.detachViewInContainer()',
  'AppViewManager.getComponent()',
  'AppViewManager.getHostElement()',
  'AppViewManager.getNamedElementInComponentView()',
  'AppViewManager.getViewContainer()',
  'ApplicationRef',
  'ApplicationRef.bootstrap()',
  'ApplicationRef.dispose()',
  'ApplicationRef.injector',
  'ApplicationRef.registerBootstrapListener()',
  'ApplicationRef.zone',
  'AsyncPipe',
  'AsyncPipe.onDestroy()',
  'AsyncPipe.transform()',
  'Attribute',
  'Attribute.attributeName',
  'Attribute.token',
  'AttributeMetadata',
  'AttributeMetadata.attributeName',
  'AttributeMetadata.token',
  'Binding',
  'Binding.dependencies',
  'Binding.multi',
  'Binding.toAlias',
  'Binding.toClass',
  'Binding.toFactory',
  'Binding.toValue',
  'Binding.token',
  'BindingBuilder',
  'BindingBuilder.toAlias()',
  'BindingBuilder.toClass()',
  'BindingBuilder.toFactory()',
  'BindingBuilder.toValue()',
  'BindingBuilder.token',
  'BindingBuilder.token=',
  'By#all()',
  'By#css()',
  'By#directive()',
  'By',
  'CORE_DIRECTIVES',
  'ChangeDetectionError',
  'ChangeDetectionError.context',
  'ChangeDetectionError.location',
  'ChangeDetectionError.location=',
  'ChangeDetectionError.message',
  'ChangeDetectionError.stackTrace',
  'ChangeDetectionError.wrapperMessage',
  'ChangeDetectionStrategy#CheckAlways',
  'ChangeDetectionStrategy#CheckOnce',
  'ChangeDetectionStrategy#Checked',
  'ChangeDetectionStrategy#Default',
  'ChangeDetectionStrategy#Detached',
  'ChangeDetectionStrategy#OnPush',
  'ChangeDetectionStrategy#OnPushObserve',
  'ChangeDetectionStrategy#values',
  'ChangeDetectionStrategy',
  'ChangeDetectionStrategy.index',
  'ChangeDetectorRef',
  'ChangeDetectorRef.detach()',
  'ChangeDetectorRef.detectChanges()',
  'ChangeDetectorRef.markForCheck()',
  'ChangeDetectorRef.reattach()',
  'CheckboxControlValueAccessor',
  'CheckboxControlValueAccessor.ngClassDirty',
  'CheckboxControlValueAccessor.ngClassInvalid',
  'CheckboxControlValueAccessor.ngClassPristine',
  'CheckboxControlValueAccessor.ngClassTouched',
  'CheckboxControlValueAccessor.ngClassUntouched',
  'CheckboxControlValueAccessor.ngClassValid',
  'CheckboxControlValueAccessor.onChange',
  'CheckboxControlValueAccessor.onChange=',
  'CheckboxControlValueAccessor.onTouched',
  'CheckboxControlValueAccessor.onTouched=',
  'CheckboxControlValueAccessor.registerOnChange()',
  'CheckboxControlValueAccessor.registerOnTouched()',
  'CheckboxControlValueAccessor.writeValue()',
  'Class:js',
  'Compiler',
  'Compiler.compileInHost()',
  'Component',
  'Component.bindings',
  'Component.changeDetection',
  'Component.compileChildren',
  'Component.events',
  'Component.exportAs',
  'Component.host',
  'Component.moduleId',
  'Component.properties',
  'Component.queries',
  'Component.selector',
  'Component.viewBindings',
  'ComponentMetadata',
  'ComponentMetadata.bindings',
  'ComponentMetadata.changeDetection',
  'ComponentMetadata.compileChildren',
  'ComponentMetadata.events',
  'ComponentMetadata.exportAs',
  'ComponentMetadata.host',
  'ComponentMetadata.moduleId',
  'ComponentMetadata.properties',
  'ComponentMetadata.queries',
  'ComponentMetadata.selector',
  'ComponentMetadata.viewBindings',
  'ComponentRef',
  'ComponentRef.componentType',
  'ComponentRef.componentType=',
  'ComponentRef.dispose()',
  'ComponentRef.hostComponent',
  'ComponentRef.hostComponentType',
  'ComponentRef.hostView',
  'ComponentRef.injector',
  'ComponentRef.injector=',
  'ComponentRef.instance',
  'ComponentRef.instance=',
  'ComponentRef.location',
  'ComponentRef.location=',
  'ComponentUrlMapper',
  'ComponentUrlMapper.getUrl()',
  'ContentChild',
  'ContentChild.descendants',
  'ContentChild.first',
  'ContentChild.isVarBindingQuery',
  'ContentChild.isViewQuery',
  'ContentChild.selector',
  'ContentChild.token',
  'ContentChild.varBindings',
  'ContentChildMetadata',
  'ContentChildMetadata.descendants',
  'ContentChildMetadata.first',
  'ContentChildMetadata.isVarBindingQuery',
  'ContentChildMetadata.isViewQuery',
  'ContentChildMetadata.selector',
  'ContentChildMetadata.token',
  'ContentChildMetadata.varBindings',
  'ContentChildren',
  'ContentChildren.descendants',
  'ContentChildren.first',
  'ContentChildren.isVarBindingQuery',
  'ContentChildren.isViewQuery',
  'ContentChildren.selector',
  'ContentChildren.token',
  'ContentChildren.varBindings',
  'ContentChildrenMetadata',
  'ContentChildrenMetadata.descendants',
  'ContentChildrenMetadata.first',
  'ContentChildrenMetadata.isVarBindingQuery',
  'ContentChildrenMetadata.isViewQuery',
  'ContentChildrenMetadata.selector',
  'ContentChildrenMetadata.token',
  'ContentChildrenMetadata.varBindings',
  'Control',
  'Control.dirty',
  'Control.errors',
  'Control.find()',
  'Control.getError()',
  'Control.hasError()',
  'Control.markAsDirty()',
  'Control.markAsTouched()',
  'Control.pristine',
  'Control.registerOnChange()',
  'Control.setParent()',
  'Control.status',
  'Control.touched',
  'Control.untouched',
  'Control.updateValidity()',
  'Control.updateValue()',
  'Control.updateValueAndValidity()',
  'Control.valid',
  'Control.validator',
  'Control.validator=',
  'Control.value',
  'Control.valueChanges',
  'ControlArray',
  'ControlArray.at()',
  'ControlArray.controls',
  'ControlArray.controls=',
  'ControlArray.dirty',
  'ControlArray.errors',
  'ControlArray.find()',
  'ControlArray.getError()',
  'ControlArray.hasError()',
  'ControlArray.insert()',
  'ControlArray.length',
  'ControlArray.markAsDirty()',
  'ControlArray.markAsTouched()',
  'ControlArray.pristine',
  'ControlArray.push()',
  'ControlArray.removeAt()',
  'ControlArray.setParent()',
  'ControlArray.status',
  'ControlArray.touched',
  'ControlArray.untouched',
  'ControlArray.updateValidity()',
  'ControlArray.updateValueAndValidity()',
  'ControlArray.valid',
  'ControlArray.validator',
  'ControlArray.validator=',
  'ControlArray.value',
  'ControlArray.valueChanges',
  'ControlContainer',
  'ControlContainer.control',
  'ControlContainer.dirty',
  'ControlContainer.errors',
  'ControlContainer.formDirective',
  'ControlContainer.name',
  'ControlContainer.name=',
  'ControlContainer.path',
  'ControlContainer.pristine',
  'ControlContainer.touched',
  'ControlContainer.untouched',
  'ControlContainer.valid',
  'ControlContainer.value',
  'ControlGroup',
  'ControlGroup.addControl()',
  'ControlGroup.contains()',
  'ControlGroup.controls',
  'ControlGroup.controls=',
  'ControlGroup.dirty',
  'ControlGroup.errors',
  'ControlGroup.exclude()',
  'ControlGroup.find()',
  'ControlGroup.getError()',
  'ControlGroup.hasError()',
  'ControlGroup.include()',
  'ControlGroup.markAsDirty()',
  'ControlGroup.markAsTouched()',
  'ControlGroup.pristine',
  'ControlGroup.removeControl()',
  'ControlGroup.setParent()',
  'ControlGroup.status',
  'ControlGroup.touched',
  'ControlGroup.untouched',
  'ControlGroup.updateValidity()',
  'ControlGroup.updateValueAndValidity()',
  'ControlGroup.valid',
  'ControlGroup.validator',
  'ControlGroup.validator=',
  'ControlGroup.value',
  'ControlGroup.valueChanges',
  'CurrencyPipe',
  'CurrencyPipe.transform()',
  'CyclicDependencyError',
  'CyclicDependencyError.addKey()',
  'CyclicDependencyError.constructResolvingMessage',
  'CyclicDependencyError.constructResolvingMessage=',
  'CyclicDependencyError.context',
  'CyclicDependencyError.injectors',
  'CyclicDependencyError.injectors=',
  'CyclicDependencyError.keys',
  'CyclicDependencyError.keys=',
  'CyclicDependencyError.message',
  'CyclicDependencyError.message=',
  'CyclicDependencyError.stackTrace',
  'DEFAULT_PIPES',
  'DEFAULT_PIPES_TOKEN',
  'DOCUMENT',
  'DatePipe',
  'DatePipe.supports()',
  'DatePipe.transform()',
  'DebugElement',
  'DebugElement.children',
  'DebugElement.componentInstance',
  'DebugElement.componentViewChildren',
  'DebugElement.elementRef',
  'DebugElement.getDirectiveInstance()',
  'DebugElement.getLocal()',
  'DebugElement.hasDirective()',
  'DebugElement.inject()',
  'DebugElement.nativeElement',
  'DebugElement.query()',
  'DebugElement.queryAll()',
  'DebugElement.triggerEventHandler()',
  'DecimalPipe',
  'DecimalPipe.transform()',
  'DefaultValidators',
  'DefaultValueAccessor',
  'DefaultValueAccessor.ngClassDirty',
  'DefaultValueAccessor.ngClassInvalid',
  'DefaultValueAccessor.ngClassPristine',
  'DefaultValueAccessor.ngClassTouched',
  'DefaultValueAccessor.ngClassUntouched',
  'DefaultValueAccessor.ngClassValid',
  'DefaultValueAccessor.onChange',
  'DefaultValueAccessor.onChange=',
  'DefaultValueAccessor.onTouched',
  'DefaultValueAccessor.onTouched=',
  'DefaultValueAccessor.registerOnChange()',
  'DefaultValueAccessor.registerOnTouched()',
  'DefaultValueAccessor.writeValue()',
  'Dependency#fromKey()',
  'Dependency',
  'Dependency.key',
  'Dependency.key=',
  'Dependency.lowerBoundVisibility',
  'Dependency.lowerBoundVisibility=',
  'Dependency.optional',
  'Dependency.optional=',
  'Dependency.properties',
  'Dependency.properties=',
  'Dependency.upperBoundVisibility',
  'Dependency.upperBoundVisibility=',
  'DependencyMetadata',
  'DependencyMetadata.token',
  'Directive',
  'Directive.bindings',
  'Directive.compileChildren',
  'Directive.events',
  'Directive.exportAs',
  'Directive.host',
  'Directive.moduleId',
  'Directive.properties',
  'Directive.queries',
  'Directive.selector',
  'DirectiveMetadata',
  'DirectiveMetadata.bindings',
  'DirectiveMetadata.compileChildren',
  'DirectiveMetadata.events',
  'DirectiveMetadata.exportAs',
  'DirectiveMetadata.host',
  'DirectiveMetadata.moduleId',
  'DirectiveMetadata.properties',
  'DirectiveMetadata.queries',
  'DirectiveMetadata.selector',
  'DirectiveResolver',
  'DirectiveResolver.resolve()',
  'DynamicComponentLoader',
  'DynamicComponentLoader.loadAsRoot()',
  'DynamicComponentLoader.loadIntoLocation()',
  'DynamicComponentLoader.loadNextToLocation()',
  'ELEMENT_PROBE_BINDINGS',
  'ElementRef',
  'ElementRef.boundElementIndex',
  'ElementRef.boundElementIndex=',
  'ElementRef.nativeElement',
  'ElementRef.parentView',
  'ElementRef.parentView=',
  'ElementRef.renderBoundElementIndex',
  'ElementRef.renderBoundElementIndex=',
  'ElementRef.renderView',
  'ElementRef.renderView=',
  'Event',
  'Event.bindingPropertyName',
  'EventEmitter',
  'EventEmitter.add():dart',
  'EventEmitter.addError():dart',
  'EventEmitter.any():dart',
  'EventEmitter.asBroadcastStream():dart',
  'EventEmitter.asyncExpand():dart',
  'EventEmitter.asyncMap():dart',
  'EventEmitter.close():dart',
  'EventEmitter.contains():dart',
  'EventEmitter.distinct():dart',
  'EventEmitter.drain():dart',
  'EventEmitter.elementAt():dart',
  'EventEmitter.every():dart',
  'EventEmitter.expand():dart',
  'EventEmitter.first:dart',
  'EventEmitter.firstWhere():dart',
  'EventEmitter.fold():dart',
  'EventEmitter.forEach():dart',
  'EventEmitter.handleError():dart',
  'EventEmitter.isBroadcast:dart',
  'EventEmitter.isEmpty:dart',
  'EventEmitter.join():dart',
  'EventEmitter.last:dart',
  'EventEmitter.lastWhere():dart',
  'EventEmitter.length:dart',
  'EventEmitter.listen():dart',
  'EventEmitter.map():dart',
  'EventEmitter.next():js',
  'EventEmitter.observer():js',
  'EventEmitter.pipe():dart',
  'EventEmitter.reduce():dart',
  'EventEmitter.return():js',
  'EventEmitter.single:dart',
  'EventEmitter.singleWhere():dart',
  'EventEmitter.skip():dart',
  'EventEmitter.skipWhile():dart',
  'EventEmitter.take():dart',
  'EventEmitter.takeWhile():dart',
  'EventEmitter.throw():js',
  'EventEmitter.timeout():dart',
  'EventEmitter.toList():dart',
  'EventEmitter.toRx():js',
  'EventEmitter.toSet():dart',
  'EventEmitter.transform():dart',
  'EventEmitter.where():dart',
  'EventMetadata',
  'EventMetadata.bindingPropertyName',
  'ExpressionChangedAfterItHasBeenCheckedException',
  'ExpressionChangedAfterItHasBeenCheckedException.message',
  'ExpressionChangedAfterItHasBeenCheckedException.stackTrace',
  'FORM_BINDINGS',
  'FORM_DIRECTIVES',
  'FormBuilder',
  'FormBuilder.array()',
  'FormBuilder.control()',
  'FormBuilder.group()',
  'Host',
  'HostBinding',
  'HostBinding.hostPropertyName',
  'HostBindingMetadata',
  'HostBindingMetadata.hostPropertyName',
  'HostListener',
  'HostListener.args',
  'HostListener.eventName',
  'HostListenerMetadata',
  'HostListenerMetadata.args',
  'HostListenerMetadata.eventName',
  'HostMetadata',
  'Inject',
  'Inject.token',
  'InjectMetadata',
  'InjectMetadata.token',
  'Injectable',
  'InjectableMetadata',
  'Injector#fromResolvedBindings()',
  'Injector#resolve()',
  'Injector#resolveAndCreate()',
  'Injector',
  'Injector.createChildFromResolved()',
  'Injector.debugContext()',
  'Injector.displayName',
  'Injector.get()',
  'Injector.getAt()',
  'Injector.getOptional()',
  'Injector.instantiateResolved()',
  'Injector.internalStrategy',
  'Injector.parent',
  'Injector.resolveAndCreateChild()',
  'Injector.resolveAndInstantiate()',
  'InstantiationError',
  'InstantiationError.addKey()',
  'InstantiationError.causeKey',
  'InstantiationError.context',
  'InstantiationError.injectors',
  'InstantiationError.injectors=',
  'InstantiationError.keys',
  'InstantiationError.keys=',
  'InstantiationError.message',
  'InstantiationError.stackTrace',
  'InstantiationError.wrapperMessage',
  'InvalidBindingError',
  'InvalidBindingError.message',
  'InvalidBindingError.stackTrace',
  'IterableDiffers#create()',
  'IterableDiffers#extend()',
  'IterableDiffers',
  'IterableDiffers.factories',
  'IterableDiffers.find()',
  'JsonPipe',
  'JsonPipe.transform()',
  'Key#get()',
  'Key#numberOfKeys',
  'Key',
  'Key.displayName',
  'Key.id',
  'Key.id=',
  'Key.token',
  'Key.token=',
  'KeyValueDiffers#create()',
  'KeyValueDiffers#extend()',
  'KeyValueDiffers',
  'KeyValueDiffers.factories',
  'KeyValueDiffers.find()',
  'LifeCycle',  // TODO: replace with ApplicationRef
  'LifeCycle.registerWith()',
  'LifeCycle.tick()',
  'LowerCasePipe',
  'LowerCasePipe.transform()',
  'MAX_IN_MEMORY_ELEMENTS_PER_TEMPLATE',
  'NG_VALIDATORS',
  'NgClass',
  'NgClass.doCheck()',
  'NgClass.initialClasses=',
  'NgClass.onDestroy()',
  'NgClass.rawClass=',
  'NgControl',
  'NgControl.control',
  'NgControl.dirty',
  'NgControl.errors',
  'NgControl.name',
  'NgControl.name=',
  'NgControl.path',
  'NgControl.pristine',
  'NgControl.touched',
  'NgControl.untouched',
  'NgControl.valid',
  'NgControl.validator',
  'NgControl.value',
  'NgControl.valueAccessor',
  'NgControl.valueAccessor=',
  'NgControl.viewToModelUpdate()',
  'NgControlGroup',
  'NgControlGroup.control',
  'NgControlGroup.dirty',
  'NgControlGroup.errors',
  'NgControlGroup.formDirective',
  'NgControlGroup.name',
  'NgControlGroup.name=',
  'NgControlGroup.onDestroy()',
  'NgControlGroup.onInit()',
  'NgControlGroup.path',
  'NgControlGroup.pristine',
  'NgControlGroup.touched',
  'NgControlGroup.untouched',
  'NgControlGroup.valid',
  'NgControlGroup.value',
  'NgControlName',
  'NgControlName.control',
  'NgControlName.dirty',
  'NgControlName.errors',
  'NgControlName.formDirective',
  'NgControlName.model',
  'NgControlName.model=',
  'NgControlName.name',
  'NgControlName.name=',
  'NgControlName.onChanges()',
  'NgControlName.onDestroy()',
  'NgControlName.path',
  'NgControlName.pristine',
  'NgControlName.touched',
  'NgControlName.untouched',
  'NgControlName.update',
  'NgControlName.update=',
  'NgControlName.valid',
  'NgControlName.validator',
  'NgControlName.validators',
  'NgControlName.validators=',
  'NgControlName.value',
  'NgControlName.valueAccessor',
  'NgControlName.valueAccessor=',
  'NgControlName.viewModel',
  'NgControlName.viewModel=',
  'NgControlName.viewToModelUpdate()',
  'NgFor',
  'NgFor.doCheck()',
  'NgFor.ngForOf=',
  'NgForm',
  'NgForm.addControl()',
  'NgForm.addControlGroup()',
  'NgForm.control',
  'NgForm.controls',
  'NgForm.dirty',
  'NgForm.errors',
  'NgForm.form',
  'NgForm.form=',
  'NgForm.formDirective',
  'NgForm.getControl()',
  'NgForm.getControlGroup()',
  'NgForm.name',
  'NgForm.name=',
  'NgForm.ngSubmit',
  'NgForm.ngSubmit=',
  'NgForm.onSubmit()',
  'NgForm.path',
  'NgForm.pristine',
  'NgForm.removeControl()',
  'NgForm.removeControlGroup()',
  'NgForm.touched',
  'NgForm.untouched',
  'NgForm.updateModel()',
  'NgForm.valid',
  'NgForm.value',
  'NgFormControl',
  'NgFormControl.control',
  'NgFormControl.dirty',
  'NgFormControl.errors',
  'NgFormControl.form',
  'NgFormControl.form=',
  'NgFormControl.model',
  'NgFormControl.model=',
  'NgFormControl.name',
  'NgFormControl.name=',
  'NgFormControl.onChanges()',
  'NgFormControl.path',
  'NgFormControl.pristine',
  'NgFormControl.touched',
  'NgFormControl.untouched',
  'NgFormControl.update',
  'NgFormControl.update=',
  'NgFormControl.valid',
  'NgFormControl.validator',
  'NgFormControl.validators',
  'NgFormControl.validators=',
  'NgFormControl.value',
  'NgFormControl.valueAccessor',
  'NgFormControl.valueAccessor=',
  'NgFormControl.viewModel',
  'NgFormControl.viewModel=',
  'NgFormControl.viewToModelUpdate()',
  'NgFormModel',
  'NgFormModel.addControl()',
  'NgFormModel.addControlGroup()',
  'NgFormModel.control',
  'NgFormModel.directives',
  'NgFormModel.directives=',
  'NgFormModel.dirty',
  'NgFormModel.errors',
  'NgFormModel.form',
  'NgFormModel.form=',
  'NgFormModel.formDirective',
  'NgFormModel.getControl()',
  'NgFormModel.getControlGroup()',
  'NgFormModel.name',
  'NgFormModel.name=',
  'NgFormModel.ngSubmit',
  'NgFormModel.ngSubmit=',
  'NgFormModel.onChanges()',
  'NgFormModel.onSubmit()',
  'NgFormModel.path',
  'NgFormModel.pristine',
  'NgFormModel.removeControl()',
  'NgFormModel.removeControlGroup()',
  'NgFormModel.touched',
  'NgFormModel.untouched',
  'NgFormModel.updateModel()',
  'NgFormModel.valid',
  'NgFormModel.value',
  'NgIf',
  'NgIf.ngIf=',
  'NgModel',
  'NgModel.control',
  'NgModel.dirty',
  'NgModel.errors',
  'NgModel.model',
  'NgModel.model=',
  'NgModel.name',
  'NgModel.name=',
  'NgModel.onChanges()',
  'NgModel.path',
  'NgModel.pristine',
  'NgModel.touched',
  'NgModel.untouched',
  'NgModel.update',
  'NgModel.update=',
  'NgModel.valid',
  'NgModel.validator',
  'NgModel.validators',
  'NgModel.validators=',
  'NgModel.value',
  'NgModel.valueAccessor',
  'NgModel.valueAccessor=',
  'NgModel.viewModel',
  'NgModel.viewModel=',
  'NgModel.viewToModelUpdate()',
  'NgNonBindable',
  'NgSelectOption',
  'NgStyle',
  'NgStyle.doCheck()',
  'NgStyle.rawStyle=',
  'NgSwitch',
  'NgSwitch.ngSwitch=',
  'NgSwitchDefault',
  'NgSwitchWhen',
  'NgSwitchWhen.ngSwitchWhen=',
  'NgZone',
  'NgZone.overrideOnErrorHandler()',
  'NgZone.overrideOnEventDone()',
  'NgZone.overrideOnTurnDone()',
  'NgZone.overrideOnTurnStart()',
  'NgZone.run()',
  'NgZone.runOutsideAngular()',
  'NoAnnotationError',
  'NoAnnotationError.message',
  'NoAnnotationError.stackTrace',
  'NoBindingError',
  'NoBindingError.addKey()',
  'NoBindingError.constructResolvingMessage',
  'NoBindingError.constructResolvingMessage=',
  'NoBindingError.context',
  'NoBindingError.injectors',
  'NoBindingError.injectors=',
  'NoBindingError.keys',
  'NoBindingError.keys=',
  'NoBindingError.message',
  'NoBindingError.message=',
  'NoBindingError.stackTrace',
  'NumberPipe',
  'Observable.observer():js',
  'Observable:js',
  'ObservableListDiff.check():dart',
  'ObservableListDiff.collection:dart',
  'ObservableListDiff.diff():dart',
  'ObservableListDiff.forEachAddedItem():dart',
  'ObservableListDiff.forEachItem():dart',
  'ObservableListDiff.forEachMovedItem():dart',
  'ObservableListDiff.forEachPreviousItem():dart',
  'ObservableListDiff.forEachRemovedItem():dart',
  'ObservableListDiff.isDirty:dart',
  'ObservableListDiff.length:dart',
  'ObservableListDiff.onDestroy():dart',
  'ObservableListDiff:dart',
  'ObservableListDiffFactory.create():dart',
  'ObservableListDiffFactory.supports():dart',
  'ObservableListDiffFactory:dart',
  'OpaqueToken',
  'Optional',
  'OptionalMetadata',
  'OutOfBoundsError',
  'OutOfBoundsError.message',
  'OutOfBoundsError.stackTrace',
  'PercentPipe',
  'PercentPipe.transform()',
  'Pipe',
  'Pipe.name',
  'Pipe.pure',
  'PipeMetadata',
  'PipeMetadata.name',
  'PipeMetadata.pure',
  'PlatformRef',
  'PlatformRef.application()',
  'PlatformRef.asyncApplication()',
  'PlatformRef.dispose()',
  'PlatformRef.injector',
  'Predicate:dart',
  'Property',
  'Property.bindingPropertyName',
  'PropertyMetadata',
  'PropertyMetadata.bindingPropertyName',
  'ProtoViewRef',
  'Query',
  'Query.descendants',
  'Query.first',
  'Query.isVarBindingQuery',
  'Query.isViewQuery',
  'Query.selector',
  'Query.token',
  'Query.varBindings',
  'QueryList',
  'QueryList.any():dart',
  'QueryList.contains():dart',
  'QueryList.elementAt():dart',
  'QueryList.every():dart',
  'QueryList.expand():dart',
  'QueryList.notifyOnChanges():',
  'QueryList.first',
  'QueryList.firstWhere():dart',
  'QueryList.fold():dart',
  'QueryList.forEach():dart',
  'QueryList.isEmpty',
  'QueryList.isNotEmpty',
  'QueryList.iterator',
  'QueryList.join():dart',
  'QueryList.last',
  'QueryList.lastWhere():dart',
  'QueryList.length',
  'QueryList.map()',
  'QueryList.changes',
  'QueryList.reduce():dart',
  'QueryList.reset()',
  'QueryList.single',
  'QueryList.singleWhere():dart',
  'QueryList.skip():dart',
  'QueryList.skipWhile():dart',
  'QueryList.take():dart',
  'QueryList.takeWhile():dart',
  'QueryList.toList():dart',
  'QueryList.toSet():dart',
  'QueryList.where():dart',
  'QueryMetadata',
  'QueryMetadata.descendants',
  'QueryMetadata.first',
  'QueryMetadata.isVarBindingQuery',
  'QueryMetadata.isViewQuery',
  'QueryMetadata.selector',
  'QueryMetadata.token',
  'QueryMetadata.varBindings',
  'RenderDirectiveMetadata#COMPONENT_TYPE',
  'RenderDirectiveMetadata#DIRECTIVE_TYPE',
  'RenderDirectiveMetadata#create()',
  'RenderDirectiveMetadata',
  'RenderDirectiveMetadata.callAfterContentChecked',
  'RenderDirectiveMetadata.callAfterContentChecked=',
  'RenderDirectiveMetadata.callAfterContentInit',
  'RenderDirectiveMetadata.callAfterContentInit=',
  'RenderDirectiveMetadata.callAfterViewChecked',
  'RenderDirectiveMetadata.callAfterViewChecked=',
  'RenderDirectiveMetadata.callAfterViewInit',
  'RenderDirectiveMetadata.callAfterViewInit=',
  'RenderDirectiveMetadata.callDoCheck',
  'RenderDirectiveMetadata.callDoCheck=',
  'RenderDirectiveMetadata.callOnChanges',
  'RenderDirectiveMetadata.callOnChanges=',
  'RenderDirectiveMetadata.callOnDestroy',
  'RenderDirectiveMetadata.callOnDestroy=',
  'RenderDirectiveMetadata.callOnInit',
  'RenderDirectiveMetadata.callOnInit=',
  'RenderDirectiveMetadata.changeDetection',
  'RenderDirectiveMetadata.changeDetection=',
  'RenderDirectiveMetadata.compileChildren',
  'RenderDirectiveMetadata.compileChildren=',
  'RenderDirectiveMetadata.events',
  'RenderDirectiveMetadata.events=',
  'RenderDirectiveMetadata.exportAs',
  'RenderDirectiveMetadata.exportAs=',
  'RenderDirectiveMetadata.hostAttributes',
  'RenderDirectiveMetadata.hostAttributes=',
  'RenderDirectiveMetadata.hostListeners',
  'RenderDirectiveMetadata.hostListeners=',
  'RenderDirectiveMetadata.hostProperties',
  'RenderDirectiveMetadata.hostProperties=',
  'RenderDirectiveMetadata.id',
  'RenderDirectiveMetadata.id=',
  'RenderDirectiveMetadata.properties',
  'RenderDirectiveMetadata.properties=',
  'RenderDirectiveMetadata.queries',
  'RenderDirectiveMetadata.queries=',
  'RenderDirectiveMetadata.readAttributes',
  'RenderDirectiveMetadata.readAttributes=',
  'RenderDirectiveMetadata.selector',
  'RenderDirectiveMetadata.selector=',
  'RenderDirectiveMetadata.type',
  'RenderDirectiveMetadata.type=',
  'RenderFragmentRef',
  'RenderProtoViewRef',
  'RenderViewRef',
  'RenderViewWithFragments',
  'RenderViewWithFragments.fragmentRefs',
  'RenderViewWithFragments.fragmentRefs=',
  'RenderViewWithFragments.viewRef',
  'RenderViewWithFragments.viewRef=',
  'Renderer',
  'Renderer.attachFragmentAfterElement()',
  'Renderer.attachFragmentAfterFragment()',
  'Renderer.createRootHostView()',
  'Renderer.createView()',
  'Renderer.dehydrateView()',
  'Renderer.destroyView()',
  'Renderer.detachFragment()',
  'Renderer.getNativeElementSync()',
  'Renderer.hydrateView()',
  'Renderer.invokeElementMethod()',
  'Renderer.setElementAttribute()',
  'Renderer.setElementClass()',
  'Renderer.setElementProperty()',
  'Renderer.setElementStyle()',
  'Renderer.setEventDispatcher()',
  'Renderer.setText()',
  'ResolvedBinding',
  'ResolvedBinding.key',
  'ResolvedBinding.key=',
  'ResolvedBinding.multiBinding',
  'ResolvedBinding.multiBinding=',
  'ResolvedBinding.resolvedFactories',
  'ResolvedBinding.resolvedFactories=',
  'ResolvedBinding.resolvedFactory',
  'ResolvedFactory',
  'ResolvedFactory.dependencies',
  'ResolvedFactory.dependencies=',
  'ResolvedFactory.factory',
  'ResolvedFactory.factory=',
  'Scope#all()',
  'Scope#light()',
  'Scope#view()',
  'Scope',  // TODO(misko): rename?
  'SelectControlValueAccessor',
  'SelectControlValueAccessor.ngClassDirty',
  'SelectControlValueAccessor.ngClassInvalid',
  'SelectControlValueAccessor.ngClassPristine',
  'SelectControlValueAccessor.ngClassTouched',
  'SelectControlValueAccessor.ngClassUntouched',
  'SelectControlValueAccessor.ngClassValid',
  'SelectControlValueAccessor.onChange',
  'SelectControlValueAccessor.onChange=',
  'SelectControlValueAccessor.onTouched',
  'SelectControlValueAccessor.onTouched=',
  'SelectControlValueAccessor.registerOnChange()',
  'SelectControlValueAccessor.registerOnTouched()',
  'SelectControlValueAccessor.value',
  'SelectControlValueAccessor.value=',
  'SelectControlValueAccessor.writeValue()',
  'Self',
  'SelfMetadata',
  'SkipSelf',
  'SkipSelfMetadata',
  'SlicePipe',
  'SlicePipe.supports()',
  'SlicePipe.transform()',
  'SimpleChange',
  'SimpleChange.currentValue',
  'SimpleChange.currentValue=',
  'SimpleChange.previousValue',
  'SimpleChange.previousValue=',
  'SimpleChange.isFirstChange()',
  'TemplateRef',
  'TemplateRef.elementRef',
  'TemplateRef.elementRef=',
  'TemplateRef.hasLocal()',
  'TemplateRef.protoViewRef',
  'Type:js',
  'Title',
  'Title.getTitle()',
  'Title.setTitle()',
  'TypeLiteral',
  'TypeLiteral.type',
  'UpperCasePipe',
  'UpperCasePipe.transform()',
  'UrlResolver',
  'UrlResolver.packagePrefix',
  'UrlResolver.resolve()',
  'Validators#array()',
  'Validators#compose()',
  'Validators#group()',
  'Validators#nullValidator()',
  'Validators#required()',
  'Validators',
  'View',
  'View.directives',
  'View.encapsulation',
  'View.pipes',
  'View.styleUrls',
  'View.styles',
  'View.template',
  'View.templateUrl',
  'ViewChild',
  'ViewChild.descendants',
  'ViewChild.first',
  'ViewChild.isVarBindingQuery',
  'ViewChild.isViewQuery',
  'ViewChild.selector',
  'ViewChild.token',
  'ViewChild.varBindings',
  'ViewChildMetadata',
  'ViewChildMetadata.descendants',
  'ViewChildMetadata.first',
  'ViewChildMetadata.isVarBindingQuery',
  'ViewChildMetadata.isViewQuery',
  'ViewChildMetadata.selector',
  'ViewChildMetadata.token',
  'ViewChildMetadata.varBindings',
  'ViewChildren',
  'ViewChildren.descendants',
  'ViewChildren.first',
  'ViewChildren.isVarBindingQuery',
  'ViewChildren.isViewQuery',
  'ViewChildren.selector',
  'ViewChildren.token',
  'ViewChildren.varBindings',
  'ViewChildrenMetadata',
  'ViewChildrenMetadata.descendants',
  'ViewChildrenMetadata.first',
  'ViewChildrenMetadata.isVarBindingQuery',
  'ViewChildrenMetadata.isViewQuery',
  'ViewChildrenMetadata.selector',
  'ViewChildrenMetadata.token',
  'ViewChildrenMetadata.varBindings',
  'ViewContainerRef',
  'ViewContainerRef.clear()',
  'ViewContainerRef.createEmbeddedView()',
  'ViewContainerRef.createHostView()',
  'ViewContainerRef.detach()',
  'ViewContainerRef.element',
  'ViewContainerRef.element=',
  'ViewContainerRef.get()',
  'ViewContainerRef.indexOf()',
  'ViewContainerRef.insert()',
  'ViewContainerRef.length',
  'ViewContainerRef.remove()',
  'ViewContainerRef.viewManager',
  'ViewContainerRef.viewManager=',
  'ViewDefinition',
  'ViewDefinition.componentId',
  'ViewDefinition.componentId=',
  'ViewDefinition.directives',
  'ViewDefinition.directives=',
  'ViewDefinition.encapsulation',
  'ViewDefinition.encapsulation=',
  'ViewDefinition.styleAbsUrls',
  'ViewDefinition.styleAbsUrls=',
  'ViewDefinition.styles',
  'ViewDefinition.styles=',
  'ViewDefinition.template',
  'ViewDefinition.template=',
  'ViewDefinition.templateAbsUrl',
  'ViewDefinition.templateAbsUrl=',
  'ViewEncapsulation#Emulated',
  'ViewEncapsulation#Native',
  'ViewEncapsulation#None',
  'ViewEncapsulation#values',
  'ViewEncapsulation',
  'ViewEncapsulation.index',
  'ViewMetadata',
  'ViewMetadata.directives',
  'ViewMetadata.encapsulation',
  'ViewMetadata.pipes',
  'ViewMetadata.styleUrls',
  'ViewMetadata.styles',
  'ViewMetadata.template',
  'ViewMetadata.templateUrl',
  'ViewQuery',
  'ViewQuery.descendants',
  'ViewQuery.first',
  'ViewQuery.isVarBindingQuery',
  'ViewQuery.isViewQuery',
  'ViewQuery.selector',
  'ViewQuery.token',
  'ViewQuery.varBindings',
  'ViewQueryMetadata',
  'ViewQueryMetadata.descendants',
  'ViewQueryMetadata.first',
  'ViewQueryMetadata.isVarBindingQuery',
  'ViewQueryMetadata.isViewQuery',
  'ViewQueryMetadata.selector',
  'ViewQueryMetadata.token',
  'ViewQueryMetadata.varBindings',
  'ViewRef',
  'ViewRef.changeDetectorRef',
  'ViewRef.changeDetectorRef=',
  'ViewRef.render',
  'ViewRef.renderFragment',
  'ViewRef.setLocal()',
  'WrappedException',
  'WrappedException.context',
  'WrappedException.message',
  'WrappedException.stackTrace',
  'WrappedException.wrapperMessage',
  'WrappedValue#wrap()',
  'WrappedValue',
  'WrappedValue.wrapped',
  'WrappedValue.wrapped=',
  'WtfScopeFn:dart',
  'applicationCommonBindings()',
  'asNativeElements()',
  'bind()',
  'bootstrap():js',
  'createNgZone()',
  'forwardRef():js',
  'inspectElement()',
  'inspectNativeElement()',
  'platform():js',
  'platformBindings()',
  'platformCommon()',
  'resolveForwardRef():js',
  'wtfCreateScope():js',
  'wtfCreateScope:dart',
  'wtfEndTimeRange():js',
  'wtfEndTimeRange:dart',
  'wtfLeave():js',
  'wtfLeave:dart',
  'wtfStartTimeRange():js',
  'wtfStartTimeRange:dart',
  '{AfterContentChecked}',
  '{AfterContentInit}',
  '{AfterViewChecked}',
  '{AfterViewInit}',
  '{ControlValueAccessor}',
  '{DoCheck}',
  '{Form}',
  '{HostViewRef}',
  '{HostViewRef}.changeDetectorRef',
  '{HostViewRef}.changeDetectorRef=',
  '{IterableDifferFactory}',
  '{IterableDiffer}',
  '{KeyValueDifferFactory}',
  '{KeyValueDiffer}',
  '{OnChanges}',
  '{OnDestroy}',
  '{OnInit}',
  '{PipeOnDestroy}',
  '{PipeTransform}',
  '{RenderElementRef}',
  '{RenderElementRef}.renderBoundElementIndex',
  '{RenderElementRef}.renderBoundElementIndex=',
  '{RenderElementRef}.renderView',
  '{RenderElementRef}.renderView=',
  '{RenderEventDispatcher}',
  '{Stream}',
  '{Stream}.any()',
  '{Stream}.asBroadcastStream()',
  '{Stream}.asyncExpand()',
  '{Stream}.asyncMap()',
  '{Stream}.contains()',
  '{Stream}.distinct()',
  '{Stream}.drain()',
  '{Stream}.elementAt()',
  '{Stream}.every()',
  '{Stream}.expand()',
  '{Stream}.first',
  '{Stream}.firstWhere()',
  '{Stream}.fold()',
  '{Stream}.forEach()',
  '{Stream}.handleError()',
  '{Stream}.isBroadcast',
  '{Stream}.isEmpty',
  '{Stream}.join()',
  '{Stream}.last',
  '{Stream}.lastWhere()',
  '{Stream}.length',
  '{Stream}.map()',
  '{Stream}.pipe()',
  '{Stream}.reduce()',
  '{Stream}.single',
  '{Stream}.singleWhere()',
  '{Stream}.skip()',
  '{Stream}.skipWhile()',
  '{Stream}.take()',
  '{Stream}.takeWhile()',
  '{Stream}.timeout()',
  '{Stream}.toList()',
  '{Stream}.toSet()',
  '{Stream}.transform()',
  '{Stream}.where()',
  '{Type}'
];

export function main() {
  /**
  var x = getSymbolsFromLibrary('ng');
  x.sort();
  var parts = [];
  x.forEach((i) => parts.push(`'${i}'`));
  print(`[ ${parts.join(',
  ')} ]`);
   */

  describe('public API', () => {
    it('should fail if public API has changed',
       () => { expect(new SymbolsDiff(getSymbolsFromLibrary('ng'), NG_API).errors).toEqual([]); });
  });
}


text:
__author__ = "Panagiotis Garefalakis"
__copyright__ = "Imperial College London"

# The MIT License (MIT)
#
# Copyright (c) 2016 Panagiotis Garefalakis
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.

import numpy as np
import datetime
import sys
import os
import plots.utils as utils

# ALL DATA
latency_data = {}
throughput_data = {}

# ALL workloads
workloads = ["A", "B", "C", "D", "E", "F"]
systems_compared = ['YARN', 'YARN-Cgroups', 'MEDEA', 'MEDEA-Cgroups']
# workloads = ["A", "B"]

def add_values(latency_values, throughput_values, workload, label):
    latency_data[workload][label] = latency_values
    throughput_data[workload][label] = throughput_values

#############################################
# Message Format:
# {READ | INSERT | UPDATE},TIMESTAMP,LATENCY (us)
#############################################
def file_parser(fnames, workload):
    i = 0
    for f in fnames:
        print "Analyzing %s:" % (f)

        # parsing
        j = 0
        minrto_outliers = 0
        start_ts = 0
        end_ts = 0

        req_count = 0
        current_ts = 0
        all_values = []
        latency_sum = []
        latency_perc_values = []
        throughput_values = []
        for line in open(f).readlines():
            fields = [x.strip() for x in line.split(",")]
            if fields[0] not in ["READ", "INSERT", "UPDATE", "SCAN", "READ-MODIFY-WRITE"]:
                if (fields[0] not in ["CLEANUP"]) and (fields[1] not in ["latency"]):
                    print 'TYPE: %s -> NOT KNOWN '% fields[0]
                continue
            req_type = fields[0]
            req_ts = datetime.datetime.fromtimestamp( float(fields[1]) / 1000.0)
            req_latency = int(fields[2]) # Latency in micros
            req_latency = int(req_latency/1000.0) # Convert to millis
            # if req_latency > 200 or req_latency <= 0.0:
            #     minrto_outliers += 1
            # else:
            all_values.append(req_latency)
            if current_ts == 0:
                current_ts = req_ts
                latency_sum.append(req_latency)
                req_count = 1
            elif (req_ts - current_ts).total_seconds() >= 1:
                latency_perc_values.append(np.percentile(latency_sum, 99))
                throughput_values.append(req_count)

                req_count = 1
                current_ts = req_ts
                latency_sum = []
                latency_sum.append(req_latency)
            else:
                req_count += 1
                latency_sum.append(req_latency)

            # Start and End timestamps
            if j == 0:
                start_ts = req_ts
            elif j != 0:
                end_ts = req_ts
            j += 1
        print "--------------------------------------"
        print "%s (%s)" % (labels[i], f)
        print "--------------------------------------"
        print "%d total samples" % (j)
        print "Runtime: %d seconds"% (end_ts-start_ts).total_seconds()
        print "%d outliers due to MinRTO" % (minrto_outliers)
        print "--------------------------------------"

        # for type in ['READ', 'INSERT']:
        if len(all_values) == 0:
            continue
        # print "===== TYPE: %s ====="% (type)
        print "Throughput: %d req/sec" % (j / (end_ts - start_ts).total_seconds())
        avg = np.mean(all_values)
        print "AVG: %f" % avg
        median = np.median(all_values)
        print "MEDIAN: %f" % median
        min_val = np.min(all_values)
        print "MIN: %ld" % min_val
        max_val = np.max(all_values)
        print "MAX: %ld" % max_val
        stddev = np.std(all_values)
        print " STDEV: %f" % stddev
        print " PERCENTILES:"
        perc10 = np.percentile(all_values, 10)
        print " 10th: %f" % perc10
        perc25 = np.percentile(all_values, 25)
        print " 25th: %f" % perc25
        perc50 = np.percentile(all_values, 50)
        print " 50th: %f" % perc50
        perc75 = np.percentile(all_values, 75)
        print " 75th: %f" % perc75
        perc90 = np.percentile(all_values, 90)
        print " 90th: %f" % perc90
        perc99 = np.percentile(all_values, 99)
        print " 99th: %f" % perc99

        latency_perc_values, throughput_values = utils.reject_double_outliers(
            np.array(latency_perc_values), np.array(throughput_values))
        add_values(latency_perc_values, throughput_values, workload, labels[i])

        i += 1

if __name__ == '__main__':

    print "Sytem Path {}".format(os.environ['PATH'])

    if len(sys.argv) < 2:
      print "Usage: hbase_scatter_latency_throughput.py <input PATH> <label 1> ... " \
          "<input PATH n> <label n> [output file]"

    if (len(sys.argv) - 1) % 2 != 0:
      outname = sys.argv[-1]
    else:
      outname = "hbase_latency_throughput_scatter"

    fpaths = []
    labels = []
    for i in range(0, len(sys.argv) - 1, 2):
      fpaths.append(sys.argv[1 + i])
      labels.append(sys.argv[2 + i])

    print 'Paths given: {}'.format(" | ".join(fname for fname in fpaths))
    print 'Labels given: {}'.format(" | ".join(label for label in labels))

    for workload in workloads:
        fnames = []
        for path in  fpaths:
            fnames.append(path + "write-w"+workload+"-10R.dat")
        print "Processing.. "+ str(fnames)
        latency_data[workload] = {}
        throughput_data[workload] = {}
        file_parser(fnames, workload)

    utils.plot_scatter(outname, workloads=workloads, latency_data=latency_data,
                     throughput_data=throughput_data, systems_compared=systems_compared)


text:
ACCEPTED

#### According to
Index Fungorum

#### Published in
null

#### Original name
Ascochyta polygonicola Kabát & Bubák

### Remarks
null


text:
from setuptools import setup, find_packages
import optional_django

setup(
    name='optional-django',
    version=optional_django.__version__,
    packages=find_packages(exclude=('tests',)),
    description='Utils for providing optional support for django',
    long_description='Documentation at https://github.com/markfinger/optional-django',
    author='Mark Finger',
    author_email='markfinger@gmail.com',
    url='https://github.com/markfinger/optional-django',
)


text:
package s_mach.codetools.impl

import s_mach.codetools.reflectPrint.ReflectPrintFormat

class ValueTypeReflectPrintImpl[A] extends SimpleReflectPrintImpl[A] {
  override def print(a: A)(implicit cfg: ReflectPrintFormat): String =
    a.toString
}