text:
package com.amazonaws.services.simpleworkflow.model;

import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;

/**
 *

 * Contains information about a workflow execution.
 *

 *
 * @see AWS API
 *      Documentation
 */
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class WorkflowExecutionInfo implements Serializable, Cloneable, StructuredPojo {

    /**
     *

     * The workflow execution this information is about.
     *

     */
    private WorkflowExecution execution;
    /**
     *

     * The type of the workflow execution.
     *

     */
    private WorkflowType workflowType;
    /**
     *

     * The time when the execution was started.
     *

     */
    private java.util.Date startTimestamp;
    /**
     *

     * The time when the workflow execution was closed. Set only if the execution status is CLOSED.
     *

     */
    private java.util.Date closeTimestamp;
    /**
     *

     * The current status of the execution.
     *

     */
    private String executionStatus;
    /**
     *

     * If the execution status is closed then this specifies how the execution was closed:
     *

     *

     *

     *

     * COMPLETED – the execution was successfully completed.
     *

     *

     *

     *

     * CANCELED – the execution was canceled.Cancellation allows the implementation to gracefully clean up
     * before the execution is closed.
     *

     *

     *

     *

     * TERMINATED – the execution was force terminated.
     *

     *

     *

     *

     * FAILED – the execution failed to complete.
     *

     *

     *

     *

     * TIMED_OUT – the execution did not complete in the alloted time and was automatically timed out.
     *

     *

     *

     *

     * CONTINUED_AS_NEW – the execution is logically continued. This means the current execution was
     * completed and a new execution was started to carry on the workflow.
     *

     *

     *

     */
    private String closeStatus;
    /**
     *

     * If this workflow execution is a child of another execution then contains the workflow execution that started this
     * execution.
     *

     */
    private WorkflowExecution parent;
    /**
     *

     * The list of tags associated with the workflow execution. Tags can be used to identify and list workflow
     * executions of interest through the visibility APIs. A workflow execution can have a maximum of 5 tags.
     *

     */
    private java.util.List<String> tagList;
    /**
     *

     * Set to true if a cancellation is requested for this workflow execution.
     *

     */
    private Boolean cancelRequested;

    /**
     *

     * The workflow execution this information is about.
     *

     *
     * @param execution
     *        The workflow execution this information is about.
     */

    public void setExecution(WorkflowExecution execution) {
        this.execution = execution;
    }

    /**
     *

     * The workflow execution this information is about.
     *

     *
     * @return The workflow execution this information is about.
     */

    public WorkflowExecution getExecution() {
        return this.execution;
    }

    /**
     *

     * The workflow execution this information is about.
     *

     *
     * @param execution
     *        The workflow execution this information is about.
     * @return Returns a reference to this object so that method calls can be chained together.
     */

    public WorkflowExecutionInfo withExecution(WorkflowExecution execution) {
        setExecution(execution);
        return this;
    }

    /**
     *

     * The type of the workflow execution.
     *

     *
     * @param workflowType
     *        The type of the workflow execution.
     */

    public void setWorkflowType(WorkflowType workflowType) {
        this.workflowType = workflowType;
    }

    /**
     *

     * The type of the workflow execution.
     *

     *
     * @return The type of the workflow execution.
     */

    public WorkflowType getWorkflowType() {
        return this.workflowType;
    }

    /**
     *

     * The type of the workflow execution.
     *

     *
     * @param workflowType
     *        The type of the workflow execution.
     * @return Returns a reference to this object so that method calls can be chained together.
     */

    public WorkflowExecutionInfo withWorkflowType(WorkflowType workflowType) {
        setWorkflowType(workflowType);
        return this;
    }

    /**
     *

     * The time when the execution was started.
     *

     *
     * @param startTimestamp
     *        The time when the execution was started.
     */

    public void setStartTimestamp(java.util.Date startTimestamp) {
        this.startTimestamp = startTimestamp;
    }

    /**
     *

     * The time when the execution was started.
     *

     *
     * @return The time when the execution was started.
     */

    public java.util.Date getStartTimestamp() {
        return this.startTimestamp;
    }

    /**
     *

     * The time when the execution was started.
     *

     *
     * @param startTimestamp
     *        The time when the execution was started.
     * @return Returns a reference to this object so that method calls can be chained together.
     */

    public WorkflowExecutionInfo withStartTimestamp(java.util.Date startTimestamp) {
        setStartTimestamp(startTimestamp);
        return this;
    }

    /**
     *

     * The time when the workflow execution was closed. Set only if the execution status is CLOSED.
     *

     *
     * @param closeTimestamp
     *        The time when the workflow execution was closed. Set only if the execution status is CLOSED.
     */

    public void setCloseTimestamp(java.util.Date closeTimestamp) {
        this.closeTimestamp = closeTimestamp;
    }

    /**
     *

     * The time when the workflow execution was closed. Set only if the execution status is CLOSED.
     *

     *
     * @return The time when the workflow execution was closed. Set only if the execution status is CLOSED.
     */

    public java.util.Date getCloseTimestamp() {
        return this.closeTimestamp;
    }

    /**
     *

     * The time when the workflow execution was closed. Set only if the execution status is CLOSED.
     *

     *
     * @param closeTimestamp
     *        The time when the workflow execution was closed. Set only if the execution status is CLOSED.
     * @return Returns a reference to this object so that method calls can be chained together.
     */

    public WorkflowExecutionInfo withCloseTimestamp(java.util.Date closeTimestamp) {
        setCloseTimestamp(closeTimestamp);
        return this;
    }

    /**
     *

     * The current status of the execution.
     *

     *
     * @param executionStatus
     *        The current status of the execution.
     * @see ExecutionStatus
     */

    public void setExecutionStatus(String executionStatus) {
        this.executionStatus = executionStatus;
    }

    /**
     *

     * The current status of the execution.
     *

     *
     * @return The current status of the execution.
     * @see ExecutionStatus
     */

    public String getExecutionStatus() {
        return this.executionStatus;
    }

    /**
     *

     * The current status of the execution.
     *

     *
     * @param executionStatus
     *        The current status of the execution.
     * @return Returns a reference to this object so that method calls can be chained together.
     * @see ExecutionStatus
     */

    public WorkflowExecutionInfo withExecutionStatus(String executionStatus) {
        setExecutionStatus(executionStatus);
        return this;
    }

    /**
     *

     * The current status of the execution.
     *

     *
     * @param executionStatus
     *        The current status of the execution.
     * @see ExecutionStatus
     */

    public void setExecutionStatus(ExecutionStatus executionStatus) {
        withExecutionStatus(executionStatus);
    }

    /**
     *

     * The current status of the execution.
     *

     *
     * @param executionStatus
     *        The current status of the execution.
     * @return Returns a reference to this object so that method calls can be chained together.
     * @see ExecutionStatus
     */

    public WorkflowExecutionInfo withExecutionStatus(ExecutionStatus executionStatus) {
        this.executionStatus = executionStatus.toString();
        return this;
    }

    /**
     *

     * If the execution status is closed then this specifies how the execution was closed:
     *

     *

     *

     *

     * COMPLETED – the execution was successfully completed.
     *

     *

     *

     *

     * CANCELED – the execution was canceled.Cancellation allows the implementation to gracefully clean up
     * before the execution is closed.
     *

     *

     *

     *

     * TERMINATED – the execution was force terminated.
     *

     *

     *

     *

     * FAILED – the execution failed to complete.
     *

     *

     *

     *

     * TIMED_OUT – the execution did not complete in the alloted time and was automatically timed out.
     *

     *

     *

     *

     * CONTINUED_AS_NEW – the execution is logically continued. This means the current execution was
     * completed and a new execution was started to carry on the workflow.
     *

     *

     *

     *
     * @param closeStatus
     *        If the execution status is closed then this specifies how the execution was closed:

     *

     *

     *

     *        COMPLETED – the execution was successfully completed.
     *

     *

     *

     *

     *        CANCELED – the execution was canceled.Cancellation allows the implementation to gracefully
     *        clean up before the execution is closed.
     *

     *

     *

     *

     *        TERMINATED – the execution was force terminated.
     *

     *

     *

     *

     *        FAILED – the execution failed to complete.
     *

     *

     *

     *

     *        TIMED_OUT – the execution did not complete in the alloted time and was automatically timed
     *        out.
     *

     *

     *

     *

     *        CONTINUED_AS_NEW – the execution is logically continued. This means the current execution was
     *        completed and a new execution was started to carry on the workflow.
     *

     *

     * @see CloseStatus
     */

    public void setCloseStatus(String closeStatus) {
        this.closeStatus = closeStatus;
    }

    /**
     *

     * If the execution status is closed then this specifies how the execution was closed:
     *

     *

     *

     *

     * COMPLETED – the execution was successfully completed.
     *

     *

     *

     *

     * CANCELED – the execution was canceled.Cancellation allows the implementation to gracefully clean up
     * before the execution is closed.
     *

     *

     *

     *

     * TERMINATED – the execution was force terminated.
     *

     *

     *

     *

     * FAILED – the execution failed to complete.
     *

     *

     *

     *

     * TIMED_OUT – the execution did not complete in the alloted time and was automatically timed out.
     *

     *

     *

     *

     * CONTINUED_AS_NEW – the execution is logically continued. This means the current execution was
     * completed and a new execution was started to carry on the workflow.
     *

     *

     *

     *
     * @return If the execution status is closed then this specifies how the execution was closed:

     *

     *

     *

     *         COMPLETED – the execution was successfully completed.
     *

     *

     *

     *

     *         CANCELED – the execution was canceled.Cancellation allows the implementation to gracefully
     *         clean up before the execution is closed.
     *

     *

     *

     *

     *         TERMINATED – the execution was force terminated.
     *

     *

     *

     *

     *         FAILED – the execution failed to complete.
     *

     *

     *

     *

     *         TIMED_OUT – the execution did not complete in the alloted time and was automatically timed
     *         out.
     *

     *

     *

     *

     *         CONTINUED_AS_NEW – the execution is logically continued. This means the current execution
     *         was completed and a new execution was started to carry on the workflow.
     *

     *

     * @see CloseStatus
     */

    public String getCloseStatus() {
        return this.closeStatus;
    }

    /**
     *

     * If the execution status is closed then this specifies how the execution was closed:
     *

     *

     *

     *

     * COMPLETED – the execution was successfully completed.
     *

     *

     *

     *

     * CANCELED – the execution was canceled.Cancellation allows the implementation to gracefully clean up
     * before the execution is closed.
     *

     *

     *

     *

     * TERMINATED – the execution was force terminated.
     *

     *

     *

     *

     * FAILED – the execution failed to complete.
     *

     *

     *

     *

     * TIMED_OUT – the execution did not complete in the alloted time and was automatically timed out.
     *

     *

     *

     *

     * CONTINUED_AS_NEW – the execution is logically continued. This means the current execution was
     * completed and a new execution was started to carry on the workflow.
     *

     *

     *

     *
     * @param closeStatus
     *        If the execution status is closed then this specifies how the execution was closed:

     *

     *

     *

     *        COMPLETED – the execution was successfully completed.
     *

     *

     *

     *

     *        CANCELED – the execution was canceled.Cancellation allows the implementation to gracefully
     *        clean up before the execution is closed.
     *

     *

     *

     *

     *        TERMINATED – the execution was force terminated.
     *

     *

     *

     *

     *        FAILED – the execution failed to complete.
     *

     *

     *

     *

     *        TIMED_OUT – the execution did not complete in the alloted time and was automatically timed
     *        out.
     *

     *

     *

     *

     *        CONTINUED_AS_NEW – the execution is logically continued. This means the current execution was
     *        completed and a new execution was started to carry on the workflow.
     *

     *

     * @return Returns a reference to this object so that method calls can be chained together.
     * @see CloseStatus
     */

    public WorkflowExecutionInfo withCloseStatus(String closeStatus) {
        setCloseStatus(closeStatus);
        return this;
    }

    /**
     *

     * If the execution status is closed then this specifies how the execution was closed:
     *

     *

     *

     *

     * COMPLETED – the execution was successfully completed.
     *

     *

     *

     *

     * CANCELED – the execution was canceled.Cancellation allows the implementation to gracefully clean up
     * before the execution is closed.
     *

     *

     *

     *

     * TERMINATED – the execution was force terminated.
     *

     *

     *

     *

     * FAILED – the execution failed to complete.
     *

     *

     *

     *

     * TIMED_OUT – the execution did not complete in the alloted time and was automatically timed out.
     *

     *

     *

     *

     * CONTINUED_AS_NEW – the execution is logically continued. This means the current execution was
     * completed and a new execution was started to carry on the workflow.
     *

     *

     *

     *
     * @param closeStatus
     *        If the execution status is closed then this specifies how the execution was closed:

     *

     *

     *

     *        COMPLETED – the execution was successfully completed.
     *

     *

     *

     *

     *        CANCELED – the execution was canceled.Cancellation allows the implementation to gracefully
     *        clean up before the execution is closed.
     *

     *

     *

     *

     *        TERMINATED – the execution was force terminated.
     *

     *

     *

     *

     *        FAILED – the execution failed to complete.
     *

     *

     *

     *

     *        TIMED_OUT – the execution did not complete in the alloted time and was automatically timed
     *        out.
     *

     *

     *

     *

     *        CONTINUED_AS_NEW – the execution is logically continued. This means the current execution was
     *        completed and a new execution was started to carry on the workflow.
     *

     *

     * @see CloseStatus
     */

    public void setCloseStatus(CloseStatus closeStatus) {
        withCloseStatus(closeStatus);
    }

    /**
     *

     * If the execution status is closed then this specifies how the execution was closed:
     *

     *

     *

     *

     * COMPLETED – the execution was successfully completed.
     *

     *

     *

     *

     * CANCELED – the execution was canceled.Cancellation allows the implementation to gracefully clean up
     * before the execution is closed.
     *

     *

     *

     *

     * TERMINATED – the execution was force terminated.
     *

     *

     *

     *

     * FAILED – the execution failed to complete.
     *

     *

     *

     *

     * TIMED_OUT – the execution did not complete in the alloted time and was automatically timed out.
     *

     *

     *

     *

     * CONTINUED_AS_NEW – the execution is logically continued. This means the current execution was
     * completed and a new execution was started to carry on the workflow.
     *

     *

     *

     *
     * @param closeStatus
     *        If the execution status is closed then this specifies how the execution was closed:

     *

     *

     *

     *        COMPLETED – the execution was successfully completed.
     *

     *

     *

     *

     *        CANCELED – the execution was canceled.Cancellation allows the implementation to gracefully
     *        clean up before the execution is closed.
     *

     *

     *

     *

     *        TERMINATED – the execution was force terminated.
     *

     *

     *

     *

     *        FAILED – the execution failed to complete.
     *

     *

     *

     *

     *        TIMED_OUT – the execution did not complete in the alloted time and was automatically timed
     *        out.
     *

     *

     *

     *

     *        CONTINUED_AS_NEW – the execution is logically continued. This means the current execution was
     *        completed and a new execution was started to carry on the workflow.
     *

     *

     * @return Returns a reference to this object so that method calls can be chained together.
     * @see CloseStatus
     */

    public WorkflowExecutionInfo withCloseStatus(CloseStatus closeStatus) {
        this.closeStatus = closeStatus.toString();
        return this;
    }

    /**
     *

     * If this workflow execution is a child of another execution then contains the workflow execution that started this
     * execution.
     *

     *
     * @param parent
     *        If this workflow execution is a child of another execution then contains the workflow execution that
     *        started this execution.
     */

    public void setParent(WorkflowExecution parent) {
        this.parent = parent;
    }

    /**
     *

     * If this workflow execution is a child of another execution then contains the workflow execution that started this
     * execution.
     *

     *
     * @return If this workflow execution is a child of another execution then contains the workflow execution that
     *         started this execution.
     */

    public WorkflowExecution getParent() {
        return this.parent;
    }

    /**
     *

     * If this workflow execution is a child of another execution then contains the workflow execution that started this
     * execution.
     *

     *
     * @param parent
     *        If this workflow execution is a child of another execution then contains the workflow execution that
     *        started this execution.
     * @return Returns a reference to this object so that method calls can be chained together.
     */

    public WorkflowExecutionInfo withParent(WorkflowExecution parent) {
        setParent(parent);
        return this;
    }

    /**
     *

     * The list of tags associated with the workflow execution. Tags can be used to identify and list workflow
     * executions of interest through the visibility APIs. A workflow execution can have a maximum of 5 tags.
     *

     *
     * @return The list of tags associated with the workflow execution. Tags can be used to identify and list workflow
     *         executions of interest through the visibility APIs. A workflow execution can have a maximum of 5 tags.
     */

    public java.util.List<String> getTagList() {
        return tagList;
    }

    /**
     *

     * The list of tags associated with the workflow execution. Tags can be used to identify and list workflow
     * executions of interest through the visibility APIs. A workflow execution can have a maximum of 5 tags.
     *

     *
     * @param tagList
     *        The list of tags associated with the workflow execution. Tags can be used to identify and list workflow
     *        executions of interest through the visibility APIs. A workflow execution can have a maximum of 5 tags.
     */

    public void setTagList(java.util.Collection<String> tagList) {
        if (tagList == null) {
            this.tagList = null;
            return;
        }

        this.tagList = new java.util.ArrayList<String>(tagList);
    }

    /**
     *

     * The list of tags associated with the workflow execution. Tags can be used to identify and list workflow
     * executions of interest through the visibility APIs. A workflow execution can have a maximum of 5 tags.
     *

     *

     * NOTE: This method appends the values to the existing list (if any). Use
     * {@link #setTagList(java.util.Collection)} or {@link #withTagList(java.util.Collection)} if you want to override
     * the existing values.
     *

     *
     * @param tagList
     *        The list of tags associated with the workflow execution. Tags can be used to identify and list workflow
     *        executions of interest through the visibility APIs. A workflow execution can have a maximum of 5 tags.
     * @return Returns a reference to this object so that method calls can be chained together.
     */

    public WorkflowExecutionInfo withTagList(String... tagList) {
        if (this.tagList == null) {
            setTagList(new java.util.ArrayList<String>(tagList.length));
        }
        for (String ele : tagList) {
            this.tagList.add(ele);
        }
        return this;
    }

    /**
     *

     * The list of tags associated with the workflow execution. Tags can be used to identify and list workflow
     * executions of interest through the visibility APIs. A workflow execution can have a maximum of 5 tags.
     *

     *
     * @param tagList
     *        The list of tags associated with the workflow execution. Tags can be used to identify and list workflow
     *        executions of interest through the visibility APIs. A workflow execution can have a maximum of 5 tags.
     * @return Returns a reference to this object so that method calls can be chained together.
     */

    public WorkflowExecutionInfo withTagList(java.util.Collection<String> tagList) {
        setTagList(tagList);
        return this;
    }

    /**
     *

     * Set to true if a cancellation is requested for this workflow execution.
     *

     *
     * @param cancelRequested
     *        Set to true if a cancellation is requested for this workflow execution.
     */

    public void setCancelRequested(Boolean cancelRequested) {
        this.cancelRequested = cancelRequested;
    }

    /**
     *

     * Set to true if a cancellation is requested for this workflow execution.
     *

     *
     * @return Set to true if a cancellation is requested for this workflow execution.
     */

    public Boolean getCancelRequested() {
        return this.cancelRequested;
    }

    /**
     *

     * Set to true if a cancellation is requested for this workflow execution.
     *

     *
     * @param cancelRequested
     *        Set to true if a cancellation is requested for this workflow execution.
     * @return Returns a reference to this object so that method calls can be chained together.
     */

    public WorkflowExecutionInfo withCancelRequested(Boolean cancelRequested) {
        setCancelRequested(cancelRequested);
        return this;
    }

    /**
     *

     * Set to true if a cancellation is requested for this workflow execution.
     *

     *
     * @return Set to true if a cancellation is requested for this workflow execution.
     */

    public Boolean isCancelRequested() {
        return this.cancelRequested;
    }

    /**
     * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
     * redacted from this string using a placeholder value.
     *
     * @return A string representation of this object.
     *
     * @see java.lang.Object#toString()
     */
    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append("{");
        if (getExecution() != null)
            sb.append("Execution: ").append(getExecution()).append(",");
        if (getWorkflowType() != null)
            sb.append("WorkflowType: ").append(getWorkflowType()).append(",");
        if (getStartTimestamp() != null)
            sb.append("StartTimestamp: ").append(getStartTimestamp()).append(",");
        if (getCloseTimestamp() != null)
            sb.append("CloseTimestamp: ").append(getCloseTimestamp()).append(",");
        if (getExecutionStatus() != null)
            sb.append("ExecutionStatus: ").append(getExecutionStatus()).append(",");
        if (getCloseStatus() != null)
            sb.append("CloseStatus: ").append(getCloseStatus()).append(",");
        if (getParent() != null)
            sb.append("Parent: ").append(getParent()).append(",");
        if (getTagList() != null)
            sb.append("TagList: ").append(getTagList()).append(",");
        if (getCancelRequested() != null)
            sb.append("CancelRequested: ").append(getCancelRequested());
        sb.append("}");
        return sb.toString();
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;

        if (obj instanceof WorkflowExecutionInfo == false)
            return false;
        WorkflowExecutionInfo other = (WorkflowExecutionInfo) obj;
        if (other.getExecution() == null ^ this.getExecution() == null)
            return false;
        if (other.getExecution() != null && other.getExecution().equals(this.getExecution()) == false)
            return false;
        if (other.getWorkflowType() == null ^ this.getWorkflowType() == null)
            return false;
        if (other.getWorkflowType() != null && other.getWorkflowType().equals(this.getWorkflowType()) == false)
            return false;
        if (other.getStartTimestamp() == null ^ this.getStartTimestamp() == null)
            return false;
        if (other.getStartTimestamp() != null && other.getStartTimestamp().equals(this.getStartTimestamp()) == false)
            return false;
        if (other.getCloseTimestamp() == null ^ this.getCloseTimestamp() == null)
            return false;
        if (other.getCloseTimestamp() != null && other.getCloseTimestamp().equals(this.getCloseTimestamp()) == false)
            return false;
        if (other.getExecutionStatus() == null ^ this.getExecutionStatus() == null)
            return false;
        if (other.getExecutionStatus() != null && other.getExecutionStatus().equals(this.getExecutionStatus()) == false)
            return false;
        if (other.getCloseStatus() == null ^ this.getCloseStatus() == null)
            return false;
        if (other.getCloseStatus() != null && other.getCloseStatus().equals(this.getCloseStatus()) == false)
            return false;
        if (other.getParent() == null ^ this.getParent() == null)
            return false;
        if (other.getParent() != null && other.getParent().equals(this.getParent()) == false)
            return false;
        if (other.getTagList() == null ^ this.getTagList() == null)
            return false;
        if (other.getTagList() != null && other.getTagList().equals(this.getTagList()) == false)
            return false;
        if (other.getCancelRequested() == null ^ this.getCancelRequested() == null)
            return false;
        if (other.getCancelRequested() != null && other.getCancelRequested().equals(this.getCancelRequested()) == false)
            return false;
        return true;
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int hashCode = 1;

        hashCode = prime * hashCode + ((getExecution() == null) ? 0 : getExecution().hashCode());
        hashCode = prime * hashCode + ((getWorkflowType() == null) ? 0 : getWorkflowType().hashCode());
        hashCode = prime * hashCode + ((getStartTimestamp() == null) ? 0 : getStartTimestamp().hashCode());
        hashCode = prime * hashCode + ((getCloseTimestamp() == null) ? 0 : getCloseTimestamp().hashCode());
        hashCode = prime * hashCode + ((getExecutionStatus() == null) ? 0 : getExecutionStatus().hashCode());
        hashCode = prime * hashCode + ((getCloseStatus() == null) ? 0 : getCloseStatus().hashCode());
        hashCode = prime * hashCode + ((getParent() == null) ? 0 : getParent().hashCode());
        hashCode = prime * hashCode + ((getTagList() == null) ? 0 : getTagList().hashCode());
        hashCode = prime * hashCode + ((getCancelRequested() == null) ? 0 : getCancelRequested().hashCode());
        return hashCode;
    }

    @Override
    public WorkflowExecutionInfo clone() {
        try {
            return (WorkflowExecutionInfo) super.clone();
        } catch (CloneNotSupportedException e) {
            throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
        }
    }

    @com.amazonaws.annotation.SdkInternalApi
    @Override
    public void marshall(ProtocolMarshaller protocolMarshaller) {
        com.amazonaws.services.simpleworkflow.model.transform.WorkflowExecutionInfoMarshaller.getInstance().marshall(this, protocolMarshaller);
    }
}


text:
source environ.sh

BROKEN

SRC=http://sourceforge.net/projects/freeciv/files/Freeciv%202.0/2.0.4/freeciv-2.0.4.tar.bz2
DIR=freeciv-2.0.4

AUTOGEN_ARGS="--host=${HOST} --prefix=${PREFIX} --with-libiconv-prefix=${PREFIX} --with-sdl-prefix=${PREFIX} --enable-client=sdl"
autogen_template $*

redpajama_set_name: RedPajamaGithub


text:
<?php

/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */

/**
 * Doozr - Request - Interface.
 *
 * Interface.php - Contract for Doozr request implementations.
 *
 * PHP versions 5.5
 *
 * LICENSE:
 * Doozr - The lightweight PHP-Framework for high-performance websites
 *
 * Copyright (c) 2005 - 2016, Benjamin Carl - All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * - Redistributions of source code must retain the above copyright notice,
 *   this list of conditions and the following disclaimer.
 * - Redistributions in binary form must reproduce the above copyright notice,
 *   this list of conditions and the following disclaimer in the documentation
 *   and/or other materials provided with the distribution.
 * - All advertising materials mentioning features or use of this software
 *   must display the following acknowledgment: This product includes software
 *   developed by Benjamin Carl and other contributors.
 * - Neither the name Benjamin Carl nor the names of other contributors
 *   may be used to endorse or promote products derived from this
 *   software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGE.
 *
 * Please feel free to contact us via e-mail: opensource@clickalicious.de
 *
 * @category   Doozr
 *
 * @author     Benjamin Carl <opensource@clickalicious.de>
 * @copyright  2005 - 2016 Benjamin Carl
 * @license    http://www.opensource.org/licenses/bsd-license.php The BSD License
 *
 * @version    Git: $Id$
 *
 * @link       http://clickalicious.github.com/Doozr/
 */

/**
 * Doozr - Request - Interface.
 *
 * Contract for Doozr request implementations.
 *
 * @category   Doozr
 *
 * @author     Benjamin Carl <opensource@clickalicious.de>
 * @copyright  2005 - 2016 Benjamin Carl
 * @license    http://www.opensource.org/licenses/bsd-license.php The BSD License
 *
 * @version    Git: $Id$
 *
 * @link       http://clickalicious.github.com/Doozr/
 */
interface Doozr_Request_Interface
{
    /**
     * Marshalling of request. Each of our request implementations must have a retrieve() method which triggers
     * the retrieval/marshalling of request data (header, body, files, ...).
     *
     * @return bool TRUE on success, otherwise FALSE
     *
     * @throws Doozr_Request_Exception
     */
    public function receive();

    /**
     * Must return the type of the request implementation.
     *
     * @return mixed
     */
    public function getType();
}


text:
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>W29754_text</title>
        <link rel="stylesheet" type="text/css" href="style.css" />

                «

    <p class="styleSans11.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">BIT RECORD Avalanche 36-15 TF1

    <p class="styleSans8.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">

    <p class="styleSans7.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">BIT SIZE
8.75 8.75 8.75

    <p class="styleSans6.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">13

    <p class="styleSans7.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">BIT MF GR
Reed Reed Reed
Reed

    <p class="styleSans8.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">BIT TYPE
Reed Reed SKHS 16D-P2B SKI-I613 -D2C

    <p class="styleSans8.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">SERIAL N_0-
A20599O E207994DB A202 124
A18597O

    <p class="styleSans7.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">JEI' SIZE
6x16 6x16 5x18
3x183x20

    <p class="styleSans8.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">DEPTH
MM 8286 6306 10460 2174 11278 818
15531 4253

    <p class="styleSans8.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">HRS RUN
425 23.5 18.0
52.0

    <p class="styleSans8.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">ACC HRS
42.5 66.0 84.0
136.0

    <p class="styleSans8.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">MUD

    <p class="styleSans7.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">FT/HR WOB M
...___..___

148.4 25 65 92.5 25 75 45.4 22.8 0
81.8 30 51

    <p class="styleSans8.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">M 70/70 70/70 70/70 104

    <p class="styleSans7.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">It! 4&0!!! <
90
90

    <p class="styleSans7.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">3210 3525 3250
3650

    <p class="styleSans8.0000<enum PANGO_WEIGHT_NORMAL of type PangoWeight><enum PANGO_STYLE_NORMAL of type PangoStyle>">m 9.9/54 9.9/46 10.1/57 9.8/28


text:
/* Do not include this file directly. Instead, include sylvan.h */

#ifndef SYLVAN_LDD_H
#define SYLVAN_LDD_H

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */

typedef uint64_t MDD;       // Note: low 40 bits only

#define lddmc_false         ((MDD)0)
#define lddmc_true          ((MDD)1)

/* Initialize LDD functionality */
void sylvan_init_ldd();

/* Primitives */
MDD lddmc_makenode(uint32_t value, MDD ifeq, MDD ifneq);
MDD lddmc_extendnode(MDD mdd, uint32_t value, MDD ifeq);
uint32_t lddmc_getvalue(MDD mdd);
MDD lddmc_getdown(MDD mdd);
MDD lddmc_getright(MDD mdd);
MDD lddmc_follow(MDD mdd, uint32_t value);

/**
 * Copy nodes in relations.
 * A copy node represents 'read x, then write x' for every x.
 * In a read-write relation, use copy nodes twice, once on read level, once on write level.
 * Copy nodes are only supported by relprod, relprev and union.
 */

/* Primitive for special 'copy node' (for relprod/relprev) */
MDD lddmc_make_copynode(MDD ifeq, MDD ifneq);
int lddmc_iscopy(MDD mdd);
MDD lddmc_followcopy(MDD mdd);

/* Add or remove external reference to MDD */
MDD lddmc_ref(MDD a);
void lddmc_deref(MDD a);

/* For use in custom mark functions */
VOID_TASK_DECL_1(lddmc_gc_mark_rec, MDD)
#define lddmc_gc_mark_rec(mdd) CALL(lddmc_gc_mark_rec, mdd)

/* Return the number of external references */
size_t lddmc_count_refs();

/* Mark MDD for "notify on dead" */
#define lddmc_notify_ondead(mdd) llmsset_notify_ondead(nodes, mdd)

/* Sanity check - returns depth of MDD including 'true' terminal or 0 for empty set */
#ifndef NDEBUG
size_t lddmc_test_ismdd(MDD mdd);
#endif

/* Operations for model checking */
TASK_DECL_2(MDD, lddmc_union, MDD, MDD);
#define lddmc_union(a, b) CALL(lddmc_union, a, b)

TASK_DECL_2(MDD, lddmc_minus, MDD, MDD);
#define lddmc_minus(a, b) CALL(lddmc_minus, a, b)

TASK_DECL_3(MDD, lddmc_zip, MDD, MDD, MDD*);
#define lddmc_zip(a, b, res) CALL(lddmc_zip, a, b, res)

TASK_DECL_2(MDD, lddmc_intersect, MDD, MDD);
#define lddmc_intersect(a, b) CALL(lddmc_intersect, a, b)

TASK_DECL_3(MDD, lddmc_match, MDD, MDD, MDD);
#define lddmc_match(a, b, proj) CALL(lddmc_match, a, b, proj)

MDD lddmc_union_cube(MDD a, uint32_t* values, size_t count);
int lddmc_member_cube(MDD a, uint32_t* values, size_t count);
MDD lddmc_cube(uint32_t* values, size_t count);

MDD lddmc_union_cube_copy(MDD a, uint32_t* values, int* copy, size_t count);
int lddmc_member_cube_copy(MDD a, uint32_t* values, int* copy, size_t count);
MDD lddmc_cube_copy(uint32_t* values, int* copy, size_t count);

TASK_DECL_3(MDD, lddmc_relprod, MDD, MDD, MDD);
#define lddmc_relprod(a, b, proj) CALL(lddmc_relprod, a, b, proj)

TASK_DECL_4(MDD, lddmc_relprod_union, MDD, MDD, MDD, MDD);
#define lddmc_relprod_union(a, b, meta, un) CALL(lddmc_relprod_union, a, b, meta, un)

/**
 * Calculate all predecessors to a in uni according to rel[proj]
 * <proj> follows the same semantics as relprod
 * i.e. 0 (not in rel), 1 (read+write), 2 (read), 3 (write), -1 (end; rest=0)
 */
TASK_DECL_4(MDD, lddmc_relprev, MDD, MDD, MDD, MDD);
#define lddmc_relprev(a, rel, proj, uni) CALL(lddmc_relprev, a, rel, proj, uni)

// so: proj: -2 (end; quantify rest), -1 (end; keep rest), 0 (quantify), 1 (keep)
TASK_DECL_2(MDD, lddmc_project, MDD, MDD);
#define lddmc_project(mdd, proj) CALL(lddmc_project, mdd, proj)

TASK_DECL_3(MDD, lddmc_project_minus, MDD, MDD, MDD);
#define lddmc_project_minus(mdd, proj, avoid) CALL(lddmc_project_minus, mdd, proj, avoid)

TASK_DECL_4(MDD, lddmc_join, MDD, MDD, MDD, MDD);
#define lddmc_join(a, b, a_proj, b_proj) CALL(lddmc_join, a, b, a_proj, b_proj)

/* Write a DOT representation */
void lddmc_printdot(MDD mdd);
void lddmc_fprintdot(FILE *out, MDD mdd);

void lddmc_fprint(FILE *out, MDD mdd);
void lddmc_print(MDD mdd);

void lddmc_printsha(MDD mdd);
void lddmc_fprintsha(FILE *out, MDD mdd);
void lddmc_getsha(MDD mdd, char *target); // at least 65 bytes...

/**
 * Calculate number of satisfying variable assignments.
 * The set of variables must be >= the support of the MDD.
 * (i.e. all variables in the MDD must be in variables)
 *
 * The cached version uses the operation cache, but is limited to 64-bit floating point numbers.
 */

typedef double lddmc_satcount_double_t;
// if this line below gives an error, modify the above typedef until fixed ;)
typedef char __lddmc_check_float_is_8_bytes[(sizeof(lddmc_satcount_double_t) == sizeof(uint64_t))?1:-1];

TASK_DECL_1(lddmc_satcount_double_t, lddmc_satcount_cached, MDD);
#define lddmc_satcount_cached(mdd) CALL(lddmc_satcount_cached, mdd)

TASK_DECL_1(long double, lddmc_satcount, MDD);
#define lddmc_satcount(mdd) CALL(lddmc_satcount, mdd)

/**
 * A callback for enumerating functions like sat_all_par, collect and match
 * Example:
 * TASK_3(void*, my_function, uint32_t*, values, size_t, count, void*, context) ...
 * For collect, use:
 * TASK_3(MDD, ...)
 */
LACE_TYPEDEF_CB(void, lddmc_enum_cb, uint32_t*, size_t, void*);
LACE_TYPEDEF_CB(MDD, lddmc_collect_cb, uint32_t*, size_t, void*);

VOID_TASK_DECL_5(lddmc_sat_all_par, MDD, lddmc_enum_cb, void*, uint32_t*, size_t);
#define lddmc_sat_all_par(mdd, cb, context) CALL(lddmc_sat_all_par, mdd, cb, context, 0, 0)

VOID_TASK_DECL_3(lddmc_sat_all_nopar, MDD, lddmc_enum_cb, void*);
#define lddmc_sat_all_nopar(mdd, cb, context) CALL(lddmc_sat_all_nopar, mdd, cb, context)

TASK_DECL_5(MDD, lddmc_collect, MDD, lddmc_collect_cb, void*, uint32_t*, size_t);
#define lddmc_collect(mdd, cb, context) CALL(lddmc_collect, mdd, cb, context, 0, 0)

VOID_TASK_DECL_5(lddmc_match_sat_par, MDD, MDD, MDD, lddmc_enum_cb, void*);
#define lddmc_match_sat_par(mdd, match, proj, cb, context) CALL(lddmc_match_sat_par, mdd, match, proj, cb, context)

int lddmc_sat_one(MDD mdd, uint32_t *values, size_t count);
MDD lddmc_sat_one_mdd(MDD mdd);
#define lddmc_pick_cube lddmc_sat_one_mdd

/**
 * Callback functions for visiting nodes.
 * lddmc_visit_seq sequentially visits nodes, down first, then right.
 * lddmc_visit_par visits nodes in parallel (down || right)
 */
LACE_TYPEDEF_CB(int, lddmc_visit_pre_cb, MDD, void*); // int pre(MDD, context)
LACE_TYPEDEF_CB(void, lddmc_visit_post_cb, MDD, void*); // void post(MDD, context)
LACE_TYPEDEF_CB(void, lddmc_visit_init_context_cb, void*, void*, int); // void init_context(context, parent, is_down)

typedef struct lddmc_visit_node_callbacks {
    lddmc_visit_pre_cb lddmc_visit_pre;
    lddmc_visit_post_cb lddmc_visit_post;
    lddmc_visit_init_context_cb lddmc_visit_init_context;
} lddmc_visit_callbacks_t;

VOID_TASK_DECL_4(lddmc_visit_par, MDD, lddmc_visit_callbacks_t*, size_t, void*);
#define lddmc_visit_par(mdd, cbs, ctx_size, context) CALL(lddmc_visit_par, mdd, cbs, ctx_size, context);

VOID_TASK_DECL_4(lddmc_visit_seq, MDD, lddmc_visit_callbacks_t*, size_t, void*);
#define lddmc_visit_seq(mdd, cbs, ctx_size, context) CALL(lddmc_visit_seq, mdd, cbs, ctx_size, context);

size_t lddmc_nodecount(MDD mdd);
void lddmc_nodecount_levels(MDD mdd, size_t *variables);

/**
 * Functional composition
 * For every node at depth <depth>, call function cb (MDD -> MDD).
 * and replace the node by the result of the function
 */
LACE_TYPEDEF_CB(MDD, lddmc_compose_cb, MDD, void*);
TASK_DECL_4(MDD, lddmc_compose, MDD, lddmc_compose_cb, void*, int);
#define lddmc_compose(mdd, cb, context, depth) CALL(lddmc_compose, mdd, cb, context, depth)

/**
 * SAVING:
 * use lddmc_serialize_add on every MDD you want to store
 * use lddmc_serialize_get to retrieve the key of every stored MDD
 * use lddmc_serialize_tofile
 *
 * LOADING:
 * use lddmc_serialize_fromfile (implies lddmc_serialize_reset)
 * use lddmc_serialize_get_reversed for every key
 *
 * MISC:
 * use lddmc_serialize_reset to free all allocated structures
 * use lddmc_serialize_totext to write a textual list of tuples of all MDDs.
 *         format: [(<key>,<level>,<key_low>,<key_high>,<complement_high>),...]
 *
 * for the old lddmc_print functions, use lddmc_serialize_totext
 */
size_t lddmc_serialize_add(MDD mdd);
size_t lddmc_serialize_get(MDD mdd);
MDD lddmc_serialize_get_reversed(size_t value);
void lddmc_serialize_reset();
void lddmc_serialize_totext(FILE *out);
void lddmc_serialize_tofile(FILE *out);
void lddmc_serialize_fromfile(FILE *in);

/* Infrastructure for internal markings */
typedef struct lddmc_refs_internal
{
    size_t r_size, r_count;
    size_t s_size, s_count;
    MDD *results;
    Task **spawns;
} *lddmc_refs_internal_t;

extern DECLARE_THREAD_LOCAL(lddmc_refs_key, lddmc_refs_internal_t);

static inline MDD
lddmc_refs_push(MDD ldd)
{
    LOCALIZE_THREAD_LOCAL(lddmc_refs_key, lddmc_refs_internal_t);
    if (lddmc_refs_key->r_count >= lddmc_refs_key->r_size) {
        lddmc_refs_key->r_size *= 2;
        lddmc_refs_key->results = (MDD*)realloc(lddmc_refs_key->results, sizeof(MDD) * lddmc_refs_key->r_size);
    }
    lddmc_refs_key->results[lddmc_refs_key->r_count++] = ldd;
    return ldd;
}

static inline void
lddmc_refs_pop(int amount)
{
    LOCALIZE_THREAD_LOCAL(lddmc_refs_key, lddmc_refs_internal_t);
    lddmc_refs_key->r_count-=amount;
}

static inline void
lddmc_refs_spawn(Task *t)
{
    LOCALIZE_THREAD_LOCAL(lddmc_refs_key, lddmc_refs_internal_t);
    if (lddmc_refs_key->s_count >= lddmc_refs_key->s_size) {
        lddmc_refs_key->s_size *= 2;
        lddmc_refs_key->spawns = (Task**)realloc(lddmc_refs_key->spawns, sizeof(Task*) * lddmc_refs_key->s_size);
    }
    lddmc_refs_key->spawns[lddmc_refs_key->s_count++] = t;
}

static inline MDD
lddmc_refs_sync(MDD result)
{
    LOCALIZE_THREAD_LOCAL(lddmc_refs_key, lddmc_refs_internal_t);
    lddmc_refs_key->s_count--;
    return result;
}

#ifdef __cplusplus
}
#endif /* __cplusplus */

#endif


text:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@android:id/background"
        android:drawable="@drawable/ic_rating_bar_red_off">
    </item>
    <item
        android:id="@android:id/secondaryProgress"
        android:drawable="@drawable/ic_rating_bar_red_half">
    </item>
    <item
        android:id="@android:id/progress"
        android:drawable="@drawable/ic_rating_bar_red_on">
    </item>

</layer-list>


text:
@interface VisualEffectViewController ()
@property (nonatomic,strong)UIImageView* imageView;
@property (nonatomic,strong)UIVisualEffectView *blurEffectView;
@property (nonatomic,strong)UIVisualEffectView *vibrancyEffectView;
@end

@implementation VisualEffectViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    self.view.backgroundColor=[UIColor colorWithPatternImage:[UIImage imageNamed:@"tile_1"]];
    [self createToolbar];

    self.imageView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"ring_2"]];
    self.imageView.frame = CGRectMake(0, 0, 208, 208);
    self.imageView.backgroundColor = [UIColor redColor];
    [self.view addSubview:self.imageView];
    self.imageView.center=self.view.center;

}

-(void)createToolbar{
    CGRect frame = CGRectMake(0, self.view.bounds.size.height - self.tabBarController.tabBar.frame.size.height*2, self.view.bounds.size.width, self.tabBarController.tabBar.frame.size.height);
    UIToolbar* toolbar = [[UIToolbar alloc] initWithFrame:frame];
    toolbar.translucent = NO;
    toolbar.tintColor = [UIColor greenColor];
    toolbar.barTintColor = [UIColor whiteColor];
    // Creating segment control
    UISegmentedControl *aSegmentControl = [[UISegmentedControl alloc]initWithItems:@[@"Light Blur",@"Extra Light Blur",@"Dark Blur",@"Vibrant Blur"]];
    aSegmentControl.frame = toolbar.bounds;
    [aSegmentControl addTarget:self action:@selector(segmentControlValueDidChange:) forControlEvents:UIControlEventValueChanged];
    [aSegmentControl setSelectedSegmentIndex:0];
    [toolbar addSubview:aSegmentControl];

    [toolbar setAutoresizingMask:UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleTopMargin];
    [self.view addSubview:toolbar];
}
#pragma marks Segmented Control Value changed

- (void)segmentControlValueDidChange:(UISegmentedControl *)segment{
    switch (segment.selectedSegmentIndex) {
        case 0:
        {
            [self.blurEffectView removeFromSuperview];
            // 1. Create effect
            UIBlurEffect *blur = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight];
            // 2. Add effect to an effect view
            self.blurEffectView = [[UIVisualEffectView alloc]initWithEffect:blur];
            // 3. Set frames
            self.blurEffectView.frame = self.imageView.bounds;
            //effectView.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height - self.tabBarController.tabBar.frame.size.height*2);
            // 4. Add effect view to base view
            [self.imageView addSubview:self.blurEffectView];
        }
            break;
        case 1:
        {
            [self.blurEffectView removeFromSuperview];
            // 1. Create effect
            UIBlurEffect *blur = [UIBlurEffect effectWithStyle:UIBlurEffectStyleExtraLight];
            // 2. Add effect to an effect view
            self.blurEffectView = [[UIVisualEffectView alloc]initWithEffect:blur];
            // 3. Set frames
            self.blurEffectView.frame = self.imageView.bounds;
            //effectView.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height - self.tabBarController.tabBar.frame.size.height*2);
            // 4. Add effect view to base view
            [self.imageView addSubview:self.blurEffectView];

        }
            break;
        case 2:
        {
            [self.blurEffectView removeFromSuperview];
            // 1. Create effect
            UIBlurEffect *blur = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];
            // 2. Add effect to an effect view
            self.blurEffectView = [[UIVisualEffectView alloc]initWithEffect:blur];
            // 3. Set frames
            //effectView.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height - self.tabBarController.tabBar.frame.size.height*2);
            self.blurEffectView.frame = self.imageView.bounds;
            // 4. Add effect view to base view
            [self.imageView addSubview:self.blurEffectView];
        }
            break;
        case 3:
        {
            //TODO: Need to revalidate the output of below code.
            [self.blurEffectView removeFromSuperview];
            [self.vibrancyEffectView removeFromSuperview];
            // 1. Create Blur Effect
            UIBlurEffect *blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];
            self.blurEffectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];
            [self.blurEffectView setFrame:self.imageView.bounds];
            [self.imageView addSubview:self.blurEffectView];
            // 2. Create Vibrancy Effect
            UIVibrancyEffect *vibrancyEffect = [UIVibrancyEffect effectForBlurEffect:blurEffect];
            self.vibrancyEffectView = [[UIVisualEffectView alloc] initWithEffect:vibrancyEffect];
            [self.vibrancyEffectView setFrame:self.imageView.bounds];
            // Add Vibrancy View to Blur View
            [self.blurEffectView.contentView addSubview:self.vibrancyEffectView];
        }
            break;
        default:
            break;
    }
}
@end


text:
package org.grails.web.servlet.mvc;

import org.grails.core.artefact.ControllerArtefactHandler;
import grails.core.GrailsApplication;
import grails.core.GrailsControllerClass;
import org.springframework.beans.factory.annotation.Autowired;

/**
 * Default implementation that uses the web request to obtain information about the currently
 * executing request.
 *
 * @author Graeme Rocher
 * @since 2.0
 */
public class DefaultRequestStateLookupStrategy implements GrailsRequestStateLookupStrategy {

    public static final String DEFAULT_REQUEST_ENCODING = "UTF-8";
    private GrailsApplication grailsApplication;
    private GrailsWebRequest webRequest;

    public DefaultRequestStateLookupStrategy() {
        // default
    }

    public DefaultRequestStateLookupStrategy(GrailsWebRequest webRequest) {
        this.webRequest = webRequest;
    }

    @Autowired
    public void setGrailsApplication(GrailsApplication grailsApplication) {
        this.grailsApplication = grailsApplication;
    }

    public String getContextPath() {
        final GrailsWebRequest req = getWebRequest();
        if (req != null) {
            return req.getContextPath();
        }
        return null;
    }

    public String getCharacterEncoding() {
        final GrailsWebRequest req = getWebRequest();
        if (req != null) {
            return req.getCurrentRequest().getCharacterEncoding();
        }
        return DEFAULT_REQUEST_ENCODING;
    }

    @Override
    public String getHttpMethod() {
        final GrailsWebRequest req = getWebRequest();
        if (req != null) {
            return req.getCurrentRequest().getMethod();
        }
        return null;
    }

    public String getControllerName() {
        final GrailsWebRequest req = getWebRequest();
        return getControllerNameInternal(req);
    }

    private String getControllerNameInternal(GrailsWebRequest req) {
        if (req != null) {
            return req.getControllerName();
        }
        return null;
    }

    public String getControllerNamespace() {
        final GrailsWebRequest req = getWebRequest();
        if (req != null) {
            return req.getControllerNamespace();
        }
        return null;
    }

    public String getActionName() {
        final GrailsWebRequest req = getWebRequest();
        if (req != null) {
            String actionName = req.getActionName();
            if (actionName == null) {
                if (grailsApplication == null) {
                    grailsApplication = req.getAttributes().getGrailsApplication();
                }
                if (grailsApplication != null) {
                    final String controllerName = getControllerNameInternal(req);
                    return getActionName(grailsApplication,controllerName);
                }
            }
        }
        return null;
    }

    private String getActionName(GrailsApplication application, String controllerName) {
        if (application != null) {
            final GrailsControllerClass controllerClass = (GrailsControllerClass) application.getArtefactByLogicalPropertyName(ControllerArtefactHandler.TYPE, controllerName);
            if (controllerClass != null) {
                return controllerClass.getDefaultAction();
            }
        }
        return null;
    }

    public String getActionName(String controllerName) {
        if (controllerName != null) {
            if (grailsApplication == null) {
                final GrailsWebRequest grailsWebRequest = getWebRequest();
                if (grailsWebRequest!= null)
                    grailsApplication = grailsWebRequest.getAttributes().getGrailsApplication();

            }
            return getActionName(grailsApplication, controllerName);
        }
        return null;
    }

    public GrailsWebRequest getWebRequest() {
        return webRequest != null ? webRequest : GrailsWebRequest.lookup();
    }
}


text:
namespace orbit_user_space_instrumentation {

extern "C" int SomethingToDisassemble() {
  std::random_device rd;
  std::mt19937 gen(rd());
  std::uniform_int_distribution<int> dis(1, 6);
  return dis(gen);
}

TEST(TestUtilTest, Disassemble) {
  pid_t pid = fork();
  ORBIT_CHECK(pid != -1);
  if (pid == 0) {
    prctl(PR_SET_PDEATHSIG, SIGTERM);

    // Endless loops without side effects are UB and recent versions of clang optimize
    // it away. Making `sum` volatile avoids that problem.
    [[maybe_unused]] volatile int sum = 0;
    while (true) {
      sum += SomethingToDisassemble();
    }
  }

  // Stop the child process using our tooling.
  ORBIT_CHECK(!AttachAndStopProcess(pid).has_error());

  constexpr const char* kFunctionName = "SomethingToDisassemble";
  const AddressRange range = GetFunctionAbsoluteAddressRangeOrDie(kFunctionName);
  auto function_code_or_error = ReadTraceesMemory(pid, range.start, range.end - range.start);
  ORBIT_CHECK(!function_code_or_error.has_error());

  DumpDisassembly(function_code_or_error.value(), range.start);

  ORBIT_CHECK(!DetachAndContinueProcess(pid).has_error());

  // End child process.
  kill(pid, SIGKILL);
  waitpid(pid, nullptr, 0);
}

TEST(TestUtilTest, GetFunctionAddressRangeInFile) {
  constexpr const char* kFunctionName = "SomethingToDisassemble";
  AddressRange range = FindFunctionOrDie(kFunctionName).relative_address_range;
  EXPECT_NE(0, range.start);
  EXPECT_LT(range.start, range.end);
}

}  // namespace orbit_user_space_instrumentation


text:
import test from 'blue-tape';
import { Maybe } from 'ramda-fantasy';
import urlMatch from '../lib/url-match';

test('match should return { url: "/some/stuff", params: { name : "stuff"} } when matched against /some/:name', expect=>{

    const route = '/some/:name',
          url = 'http://somehost.com/some/stuff',
          expectedResult = {url, params: {name: 'stuff'}, query: {}};
          expect.looseEqual(Maybe.maybe(null, x=>x, urlMatch(route, url)), expectedResult);
          expect.end();
});

test('match should accept query parameters', expect=>{
    const route = '/some/:name',
          url = 'http://somehost.com/some/stuff?test1=1&test2=2',
          result = Maybe.maybe(null, x=>x, urlMatch(route, url));
          expect.equal(result.query.test1, '1');
          expect.equal(result.query.test2, '2');
          expect.end();
});

test('match should suppor multiple named params in path', expect=>{
    const route = '/sample/:route/:multi/param/:name',
          url = 'http://somehost.com/sample/gg/my/param/coolness',
          result = Maybe.maybe(null, x=>x, urlMatch(route, url));
          expect.equal(result.params.route, 'gg');
          expect.equal(result.params.multi, 'my');
          expect.equal(result.params.name, 'coolness');
          expect.end();
});

test('match should return Nothing when there is no match for path', expect=>{
    const route = '/',
          path = '/not_found';
          expect.ok(Maybe.isNothing(urlMatch(route, path)));
          expect.end();
});

test('match shoulf accept routes without params or query', expect=>{
    const route = '/simple/route',
          url = 'http://somehost.com/simple/route';
          expect.ok(Maybe.maybe(null, x=>x, urlMatch(route, url)).url);
          expect.end();
});


text:
var BinaryTree = function(value) {
  this.value = value;
  this.left = null;
  this.right = null;
};

var validateBST = function(bt) {
  // traverse the tree depth first, while
  // using a array with stack like behavior to check each node's validity
  // * assume values do not repeat
  var validateRecurse = function(currBt, stackArr) {
    for (var i = 0; i < stackArr.length; i++) {
      if (stackArr[i].side === 'left' && currBt.value > stackArr[i].node.value) {
        return false;
      } else if (stackArr[i].side === 'right' && currBt.value < stackArr[i].node.value) {
        return false;
      }
    }
    var left = currBt.left === null ? true : validateRecurse(currBt.left, stackArr.concat([{ node:currBt, side:'left'}]));
    var right = currBt.right === null ? true : validateRecurse(currBt.right, stackArr.concat([{ node:currBt, side:'right'}]));
    return true && left && right;
  };
  return validateRecurse(bt, []);
};

/* TESTS */

var bt1a = new BinaryTree(5);
var bt1b = new BinaryTree(4);
var bt1c = new BinaryTree(6);
var bt1d = new BinaryTree(1);
var bt1e = new BinaryTree(100);

bt1a.left = bt1b;
bt1a.right = bt1c;
bt1b.left = bt1d;
bt1b.right = bt1e;

console.log(validateBST(bt1a), false);

var bt2a = new BinaryTree(5);
var bt2b = new BinaryTree(3);
var bt2c = new BinaryTree(6);
var bt2d = new BinaryTree(1);
var bt2e = new BinaryTree(4);

bt2a.left = bt2b;
bt2a.right = bt2c;
bt2b.left = bt2d;
bt2b.right = bt2e;

console.log(validateBST(bt2a), true);


text:
<!doctype html>

  <link rel="shortcut icon" href="static/images/favicon.ico" type="image/x-icon">
  <title>strokeandfillelement.js (Closure Library API Documentation - JavaScript)</title>
  <link rel="stylesheet" href="static/css/base.css">
  <link rel="stylesheet" href="static/css/doc.css">
  <link rel="stylesheet" href="static/css/sidetree.css">
  <link rel="stylesheet" href="static/css/prettify.css">

  <meta charset="utf8">

      Closure Library API Documentation

        Go to class or file:
        <input type="text" id="ac">

       strokeandfillelement.js

    A thin wrapper around the DOM element for elements with a
 stroke and fill.

Useful links

Source Code

File Location

graphics/strokeandfillelement.js

Classes

          goog.graphics.StrokeAndFillElement

Interface for a graphics element with a stroke and fill.
This is the base interface for ellipse, rectangle and other
shape interfaces.
You should not construct objects from this constructor. The graphics
will return an implementation of this interface for you.

Directory graphics

File Reference


text:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="admu.thesis.secureauthenticator"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="15"
        android:targetSdkVersion="17" />

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

    <application
        android:name="admu.thesis.secureauthenticator.OTPItem"
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="admu.thesis.secureauthenticator.MainActivity"
            android:label="@string/app_name" >
        </activity>
        <activity
            android:name="admu.thesis.secureauthenticator.AppPasswordActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>


text:
$(function () {

    module("text", {
       setup: function() {
           fx = $('#async-fixture');
           $.support.transition = false;
       }
   });

     test("option 'placeholder'", function () {
        var  e = $(' ').appendTo('#qunit-fixture').editable();

        e.click();
        var p = tip(e);
        equal(p.find('input[type=text]').attr('placeholder'), 'abc', 'placeholder exists');
        p.find('.editable-cancel').click();
        ok(!p.is(':visible'), 'popover was removed');
      });

     asyncTest("should load correct value and save new entered text (and value)", function () {
        var  v = 'ab"',
             esc_v = $('
').text(v).html(),
             e = $(''+esc_v+'').appendTo(fx).editable({
             success: function(response, newValue) {
                  equal(newValue, newText, 'new value in success correct');
             }
          }),
          data,
          newText = 'cd>e>;"';

          $.mockjax({
              url: 'post-text-main.php',
              response: function(settings) {
                  data = settings.data;
              }
          });

        e.click()
        var p = tip(e);
        ok(p.is(':visible'), 'popover visible');
        ok(p.find('.editableform-loading').length, 'loading class exists');
        ok(!p.find('.editableform-loading').is(':visible'), 'loading class is hidden');
        ok(p.find('input[type=text]').length, 'input exists');
        equal(p.find('input[type=text]').val(), v, 'input contain correct value');
        p.find('input').val(newText);
        p.find('form').submit();
        ok(p.find('.editableform-loading').is(':visible'), 'loading class is visible');

        setTimeout(function() {
           ok(!p.is(':visible'), 'popover closed');
           equal(e.data('editable').value, newText, 'new text saved to value');
           equal(e.text(), newText, 'new text shown');
           ok(data, 'ajax performed');
           equal(data.name, 'text1', 'name sent');
           equal(data.pk, 1, 'pk sent');
           equal(data.value, newText, 'value sent');
           equal(data.q, 'w', 'params sent');

           e.remove();
           start();
        }, timeout);
      });

     asyncTest("should show error on server validation", function () {
        var msg = "required\nfield",
           e = $('abc').appendTo(fx).editable({
              validate: function(value) {
                  ok(this === e[0], 'scope is ok');
                  if(value == '') return msg;
              }
          }),
          newText = '';

        e.click();
        var p = tip(e);
        ok(p.is(':visible'), 'popover shown');
        p.find('input').val(newText);
        p.find('form').submit();

        setTimeout(function() {
           ok(p.is(':visible'), 'popover still shown');
           ok(p.find('.editable-error-block').length, 'class "editable-error-block" exists');
           equal(p.find('.editable-error-block').text().toLowerCase(), msg.replace('\n', ''), 'error msg shown');
           equal(p.find('.editable-error-block').html().toLowerCase(), msg.replace('\n', '
'), 'newline replaced with br');
           p.find('.editable-cancel').click();
           ok(!p.is(':visible'), 'popover was removed');
           e.remove();
           start();
        }, timeout);
     });

     /*
     test("test validation map", function () {
        var e = $('abc').appendTo('#qunit-fixture'),
            e1 = $('abc').appendTo('#qunit-fixture'),
            newText = '';

            $('.map').editable({
                validate: {
                    e: function(value) { if(value == '') return 'required1';
                    },
                    e1:function(value) { if(value == '') return 'required2';
                    },
                    e2: 'qwerty' //this should not throw error
                }
            });

        e.click();
        var p = tip(e);
        p.find('input').val(newText);
        p.find('form').submit();
        ok(p.is(':visible'), 'popover still shown');
        ok(p.find('.error').length, 'class "error" exists');
        equal(p.find('.editable-error-block').text(), 'required1', 'error msg shown');
        p.find('.editable-cancel').click();
        ok(!p.is(':visible'), 'popover was removed');

        e = e1;
        e.click();
        var p = tip(e);
        p.find('input').val(newText);
        p.find('form').submit();
        ok(p.is(':visible'), 'popover still shown');
        ok(p.find('.error').length, 'class "error" exists');
        equal(p.find('.editable-error-block').text(), 'required2', 'error msg shown');
        p.find('.editable-cancel').click();
        ok(!p.is(':visible'), 'popover was removed');
     });
      */

     asyncTest("should show error if success callback returns string", function () {
        var newText = 'cd<e>;"',
            e = $('abc').appendTo(fx).editable({
             success: function(response, newValue) {
                 ok(this === e[0], 'scope is ok');
                 equal(newValue, newText, 'value in success passed correctly');
                 return 'error';
             }
          });

        e.click()
        var p = tip(e);

        ok(p.find('input[type=text]').length, 'input exists')
        p.find('input').val(newText);
        p.find('form').submit();

        setTimeout(function() {
           ok(p.is(':visible'), 'popover still shown');
           ok(p.find('.editable-error-block').length, 'class "editable-error-block" exists');
           equal(p.find('.editable-error-block').text(), 'error', 'error msg shown');
           p.find('.editable-cancel').click();
           ok(!p.is(':visible'), 'popover was removed');
           e.remove();
           start();
        }, timeout);

      });

     asyncTest("should show new value if success callback returns object", function () {
        var newText = 'cd<e>;"',
            e = $('abc').appendTo(fx).editable({
             success: function(response, newValue) {
                 equal(newValue, newText, 'value in success passed correctly');
                 return {newValue: 'xyz'};
             }
          });

        e.click()
        var p = tip(e);

        ok(p.find('input[type=text]').length, 'input exists')
        p.find('input').val(newText);
        p.find('form').submit();

        setTimeout(function() {
           ok(!p.is(':visible'), 'popover closed');
           equal(p.find('.editable-error-block').text(), '', 'no error msg');
           equal(e.data('editable').value, 'xyz', 'value ok');
           equal(e.text(), 'xyz', 'text ok');

           p.find('.editable-cancel').click();
           ok(!p.is(':visible'), 'popover was removed');
           e.remove();
           start();
        }, timeout);

      });

      asyncTest("should show custom error if `error` callback returns string", function () {
        var newText = 'cd<e>;"',
            e = $('abc').appendTo(fx).editable({
             error: function(response, newValue) {
                 ok(this === e[0], 'scope is ok');
                 equal(response.status, 500, 'response status ok');
                 equal(newValue, newText, 'value in success passed correctly');
                 return 'error';
             }
          });

        e.click()
        var p = tip(e);

        ok(p.find('input[type=text]').length, 'input exists')
        p.find('input').val(newText);
        p.find('form').submit();

        setTimeout(function() {
           ok(p.is(':visible'), 'popover still shown');
           ok(p.find('.editable-error-block').length, 'class "editable-error-block" exists');
           equal(p.find('.editable-error-block').text(), 'error', 'error msg shown');
           p.find('.editable-cancel').click();
           ok(!p.is(':visible'), 'popover was removed');
           e.remove();
           start();
        }, timeout);

      });

     asyncTest("ajaxOptions", function () {
        var e = $('abc').appendTo(fx).editable({
             name: 'username',
             ajaxOptions: {
                 dataType: 'html'
             }
          }),
          newText = 'cd<e>;"'

          $.mockjax({
              url: 'post-options.php',
              response: function(settings) {
                 equal(settings.dataType, 'html', 'dataType key ok');
              }
          });

        e.click()
        var p = tip(e);

        ok(p.find('input[type=text]').length, 'input exists')
        p.find('input').val(newText);
        p.find('form').submit();

        setTimeout(function() {
           e.remove();
           start();
        }, timeout);

      });

     asyncTest("should show emptytext if entered text is empty", function () {
            var emptytext = 'blabla',
                e = $('abc').appendTo(fx).editable(),
                newText = ' ';

            e.click()
            var p = tip(e);
            ok(p.find('input').length, 'input exists')
            p.find('input').val(newText);
            p.find('form').submit();

            setTimeout(function() {
               ok(!p.is(':visible'), 'popover closed')
               equal(e.data('editable').value, newText, 'value is empty')
               equal(e.text(), emptytext, 'emptytext shown')
               e.remove();
               start();
            }, timeout);
      });

     asyncTest("should show responseText on response != 200", function () {
            var e = $('abc').appendTo(fx).editable({
              url: 'error.php'
            }),
            newText = 'cde';

            e.click()
            var p = tip(e);
            ok(p.find('input').length, 'input exists')
            p.find('input').val(newText);
            p.find('form').submit();

            setTimeout(function() {
               ok(p.is(':visible'), 'popover visible')
               ok(p.find('.editable-error-block').length, 'class "error" exists')
               equal(p.find('.editable-error-block').text(), 'customtext', 'error shown')

               p.find('.editable-cancel').click();
               ok(!p.is(':visible'), 'popover was removed')

               e.remove();
               start();
            }, timeout);
      });

    //error callback deprecated in 2.0
    /*
     asyncTest("'error' callback on response != 200", function () {
            var e = $('abc').appendTo(fx).editable({
              url: 'error.php',
              error: function(xhr) {
                  if(xhr.status == 500) return 'Internal server error';
              }
            }),
            newText = 'cde';

            e.click()
            var p = tip(e);
            ok(p.find('input').length, 'input exists')
            p.find('input').val(newText);
            p.find('form').submit();

            setTimeout(function() {
               ok(p.is(':visible'), 'popover visible')
               ok(p.find('.error').length, 'class "error" exists')
               equal(p.find('.editable-error-block').text(), 'Internal server error', 'error shown')

               p.find('.editable-cancel').click();
               ok(!p.is(':visible'), 'popover was removed')

               e.remove();
               start();
            }, timeout);
      });
     */

     test("send: 'auto'. if pk = null --> should save new entered text and value, but no ajax", function () {
            var e = $('abc').appendTo('#qunit-fixture').editable({
              send: 'auto'
            }),
            newText = 'cde';

            e.click()
            var p = tip(e);
            ok(p.find('input').length, 'input exists');
            p.find('input').val(newText);
            p.find('form').submit();

            ok(!p.is(':visible'), 'popover was removed');
            equal(e.data('editable').value, newText, 'new text saved to value');
            equal(e.text(), newText, 'new text shown');
            ok(e.hasClass($.fn.editable.defaults.unsavedclass), 'has class editable-unsaved');
      });

     test("send = 'never'. if pk defined --> should save new entered text and value, but no ajax", function () {
            var e = $('abc').appendTo('#qunit-fixture').editable({
               pk: 123,
               send: 'never',
               unsavedclass: 'qq'
            }),
            newText = 'cde';

            e.click()
            var p = tip(e);
            ok(p.find('input').length, 'input exists');
            p.find('input').val(newText);
            p.find('form').submit();

            ok(!p.is(':visible'), 'popover was removed');
            equal(e.data('editable').value, newText, 'new text saved to value');
            equal(e.text(), newText, 'new text shown');
            ok(e.hasClass('qq'), 'has class editable-unsaved');
      });

      test("if name not defined --> should be taken from id", function () {
            delete $.fn.editable.defaults.name;
            var e = $('abc').appendTo('#qunit-fixture').editable();
            equal(e.data('editable').options.name, 'cde', 'name is taken from id');
      });

     asyncTest("'display' callback", function () {
        var newText = 'cd<e>;"',
            counter = 0,
            initialVal = 'abc',
            e = $('123').appendTo(fx).editable({
              ajaxOptions: {
                 dataType: 'json'
              },
              display: function(value, response) {
                 if(counter === 0) {
                     ok(response === undefined, 'initial autotext ok as display is func');
                     $(this).text(initialVal);
                 } else {
                     ok(this === e[0], 'updating, scope is ok');
                     ok(response.success, 'response param ok');
                     $(this).text('qq'+value);
                 }
                 counter++;
              }
            });

        equal(e.text(), initialVal, 'initial autotext ok');

        e.click()
        var p = tip(e);

        ok(p.find('input[type=text]').length, 'input exists')
        p.find('input').val(newText);
        p.find('form').submit();

        setTimeout(function() {
           ok(!p.is(':visible'), 'popover was removed');
           equal(e.text(), 'qq'+newText, 'custom display ok');
           e.remove();
           start();
        }, timeout);

      });

     asyncTest("display: false", function () {
        var newText = 'cd<e>;"',
            e = $('').appendTo(fx).editable({
              display: false
          });

        ok(!e.text().length, 'element still empty, autotext did not display value');

        e.click()
        var p = tip(e);

        p.find('input').val(newText);
        p.find('form').submit();

        setTimeout(function() {
           ok(!p.is(':visible'), 'popover was removed');
           ok(!e.text().length, 'element still empty, new value was not displayed');
           equal(e.data('editable').value, newText, 'new text saved to value');
           ok(!e.hasClass($.fn.editable.defaults.unsavedclass), 'no unsaved css');
           e.remove();
           start();
        }, timeout);

    });

    test("'display' returning html only (img)", function () {
        var html = '',
            e = $('0').appendTo('#qunit-fixture').editable({
              display: function(value, response) {
          	      $(this).html(html);
              }
            });

        equal(e.html(), html, 'html ok');

        c = 1;
 		e.click()
        var p = tip(e);
        p.find('input').val(1);
        p.find('form').submit();

		equal(e.html(), html, 'html again ok');
    });

   test("password", function () {
          var v = '123', v1 = '456';

          var e = $('').appendTo('#qunit-fixture').editable({
                type: 'password',
                url: function(params) {
                   equal(params.value, v1, 'submitted value correct');
                }
            });

            equal(e.text(), '[hidden]', 'text is hidden');

            e.click()
            var p = tip(e);
            ok(p.is(':visible'), 'popover visible');
            var $input = p.find('input[type="password"]');
            ok($input.length, 'input exists');
            equal($input.val(), v, 'input contains correct value');
            $input.val(v1);
            p.find('form').submit();

            ok(!p.is(':visible'), 'popover closed');
            equal(e.data('editable').value, v1, 'new value saved to value');
            equal(e.text(), '[hidden]', 'new text shown');
  });

   test("html5 types", function () {

        var types = ['email', 'url', 'tel', 'number', 'range'],
            v = '12',
            v1 = '45';

        expect(8*types.length);

        for(var i = 0; i< types.length; i++) {
            var e = $(''+v+'').appendTo('#qunit-fixture').editable({
                type: types[i],
                url: function(params) {
                   equal(params.value, v1, 'submitted value correct');
                }
            });

            equal(e.data('editable').value, v, 'value correct');

            e.click()
            var p = tip(e);
            ok(p.is(':visible'), 'popover visible');
            var $input = p.find('input[type='+types[i]+']');
            ok($input.length, 'input exists');
            equal($input.val(), v, 'input contain correct value');
            $input.val(v1);
            p.find('form').submit();

            ok(!p.is(':visible'), 'popover closed');
            equal(e.data('editable').value, v1, 'new value saved to value');
            equal(e.text(), v1, 'new text shown');
        }

  });

   test("`clear` option", function () {
        var e = $('abc').appendTo('#qunit-fixture').editable({
          clear: true,
          send: 'never'
        });

        e.click()
        var p = tip(e);

        var c = p.find('.editable-clear-x');
        ok(c.is(':visible'), 'clear shown');

        //now clear shown with delay..
        /*
        p.find('input').val('').trigger('keyup');
        ok(!c.is(':visible'), 'clear hidden for empty input');
        p.find('input').val('cde').trigger('keyup');
        ok(c.is(':visible'), 'clear shown on keyboard input');
        */
        c.click();
        ok(!c.is(':visible'), 'clear hidden after click');
        ok(!p.find('input').val(), 'input empty');

        p.find('form').submit();

        //reopen with empty
        e.click();
        ok(!c.is(':visible'), 'clear hidden for empty input');
  });

    test("defaultValue", function () {
        var e = $('').appendTo('#qunit-fixture').editable({
          defaultValue: '123'
        }),
        e1 = $('').appendTo('#qunit-fixture').editable({
          value: null,
          defaultValue: '123'
        });
        e2 = $('qwe').appendTo('#qunit-fixture').editable({
          defaultValue: '123'
        });

        //empty text
        e.click()
        var p = tip(e);
        ok(p.find('input').length, 'input exists');
        equal(p.find('input').val(), '123', 'default text ok');

        //empty value from js
        e1.click()
        p = tip(e1);
        ok(p.find('input').length, 'input exists');
        equal(p.find('input').val(), '123', 'default text ok');

        //not empty
        e2.click()
        p = tip(e2);
        ok(p.find('input').length, 'input exists');
        equal(p.find('input').val(), 'qwe', 'default text not set as element not empty');
    });

    test("should able to submit a value which changed 0 to ''(empty string)", function () {
        var e = $('').appendTo('#qunit-fixture').editable({
          value: '0'
        });

        //empty text
        e.click();
        var p = tip(e);
        equal(p.find('input').val(), '0', 'text value is 0 ok');
        p.find('input').val('');
        p.find('form').submit();
        e.click();
        equal(p.find('input').val(), '', 'text changed to \'\' ok');
    });

});


text:
import sys, os
import audfprint

config_file = None
if len(sys.argv) < 2:
    print "Usage:", sys.argv[0], "[-C config.txt] fileList4db dir4db"
    sys.exit()

else:
    if sys.argv[1] == "-C":
        config_file = sys.argv[2]
        fileList4db = sys.argv[3]
        dir4db = sys.argv[4]
    else:
        fileList4db = sys.argv[1]
        dir4db = sys.argv[2]

# Default params
defaults = {'density': "70",
            'fanout': "8",
            'bucketsize': "500",
            'ncores': "8"}

# Parse input file
import ConfigParser
import errno
config = ConfigParser.ConfigParser(defaults)
section = 'dpwe_builder'
config.add_section(section)

if config_file:
    if len(config.read(config_file)) == 0:
        raise IOError(errno.ENOENT, "Cannot read config file", config_file)

density = config.getint(section, 'density')
fanout = config.getint(section, 'fanout')
bucketsize = config.getint(section, 'bucketsize')
ncores = config.getint(section, 'ncores')

print sys.argv[0], "density:", density, "fanout:", fanout, \
    "bucketsize:", bucketsize, "ncores:", ncores

# Ensure the database directory exists
audfprint.ensure_dir(dir4db)

# Run the command
argv = ["audfprint", "new",
        "-d", os.path.join(dir4db, "data.fpdb"),
        "--density", str(density),
        "--fanout", str(fanout),
        "--bucketsize", str(bucketsize),
        "--ncores", str(ncores),
        "--list", fileList4db]

# Run audfprint
audfprint.main(argv)


text:
      <button class="navbar-toggle" type="button" ng-init="isCollapsed = true" ng-click="isCollapsed = !isCollapsed">
        Toggle navigation

      </button>

				<progressbar value="usage.used" type="{{usage.state}}" max="usage.total">{{usage.percentage}}%</progressbar>

					<button ng-click="open()" class="btn btn-primary navbar-btn" style="margin-right:15px;">Upload new file</button>

					<button ng-click="open()" class="btn btn-primary btn-block navbar-btn" style="margin-right:15px;">Upload new file</button>

 Settings

 Log out user

user

 Settings

 Log out

{{readable(usage.used)}} / {{readable(usage.total)}}

				<progressbar value="usage.used" type="{{usage.state}}" max="usage.total">{{usage.percentage}}%</progressbar>

					Filename

					Size

					Uploaded

				{{file.name}}

				{{readable(file.size)}}

				<time datetime="{{file.modified *1000 | date:'yyyy-MM-ddTHH:mm:ssZ'}}">
					{{file.modified *1000 | date:'yyyy-MM-dd'}}
				</time>

Filename

{{file.name}}

Size

{{readable(file.size)}}

Last modified

								<time datetime="{{file.modified *1000 | date:'yyyy-MM-ddTHH:mm:ssZ'}}">
									{{file.modified *1000 | date:'longDate'}}
								</time>

Mimetype

{{file.mimetype}}

			    Share


text:
<!DOCTYPE html>

{% include head.html %}

      {% include header.html %}

        {{ content }}


text:
function tr(text, code)
{
	if(code == "")
		return text;
	console.log("tr" + "." + code + "." + text);
	var translatedText = translator[code][text];
	console.log("translatedText = (" + translatedText + ")");
	if(translatedText == undefined)
		return text;
	return translatedText;
}

var translator =
{
	"ge": {
		"and join a club or group to get the most from the page.": "und einem Verein beitreten oder eine Gruppe, die meisten von der Seite zu gelangen.",
		"Add New Events": "Fugen Neue Geschehen",
		"Add New Results": "Fugen Neue Ergebnisse",
		"Administrator": "Verwalter",
		"Advertisement": "Anzeige",
		"Ammend Events": "Andern Événements",
		"Ammend Post": "Andern Nachricht",
		"Ammend Results": "Andern Geschehen",
		"Club Page": "Clubseite",
		"Create An Account": "Ein Konto Erstellen",
		"Create New Post": "Erstellen Neue Nachricht",
		"Events": "Geschehen",
		"Forgot Your Password?": "Haben Sie Ihr Passwort Vergessen?",
		"Hello": "Hallo",
		"Home Page": "Startseite",
		"Join Page": "Beizutreten Seite",
		"Login": "Login",
		"LOGIN..... ": "LOGIN..... ",
		"Manage Club Details": "Verwalter Verein Informationen",
		"Manage Club Sessions": "Verwalter Verein Sitzungen",
		"Manage Events Page": "Verwalter Événements Seite",
		"Manage Group Sessions": "Verwalter Gruppe Sitzungen",
		"Manage Results Page": "Verwalter Ergebnisse Seite",
		"Moderator": "Mäßigen",
		"Password": "Passwort",
		"Please Login to your account": "Bitte Login auf Ihr Konto",
		"Remember Me": "Erinnere Dich an Mich",
		"Results": "Ergebnisse",
		"+ Register ": "+ Registrieren  ",
		"Search Preferences": "Sucheinstellungen",
		"Username": "Benutzername"
		},
	"fr": {
		"and join a club or group to get the most from the page.": "et adhérer à un club ou d'un groupe pour tirer le meilleur de la page.",
		"Add New Events": "Adjouter Nouveaux Événements",
		"Add New Results": "Adjouter Nouveaux Résultats",
		"Administrator": "Administrateur",
		"Advertisement": "Publicité",
		"Ammend Events": "Modifier Événements",
		"Ammend Post": "Modifier Message",
		"Ammend Results": "Modifier Résultats",
		"Club Page": "Club Page",
		"Create An Account": "Créer un Compte",
		"Create New Post": "Créer Nouveau Message",
		"Events": "Événements",
		"Forgot Your Password?": "Mot de Passe Oublié?",
		"Hello": "Bonjour",
		"Home Page": "Accueil",
		"Join Page": "Joignez Page",
		"Login": "Connexion",
		"LOGIN..... ": "CONNEXION..... ",
		"Manage Club Details": "Faire Club Détails",
		"Manage Club Sessions": "Faire Club Sessions",
		"Manage Events Page": "Faire Événements Page",
		"Manage Group Sessions": "Faire Groupe Sessions",
		"Manage Results Page": "Faire Résultats Page",
		"Moderator": "Modérateur",
		"Password": "Mot de Passe",
		"Please Login to your account": "S'il vous plaît vous connecter à votre compte",
		"Remember Me": "Souviens-Toi de Moi",
		"Results": "Résultats",
		"+ Register ": "+ Registre  ",
		"Search Preferences": "Recherche Préférences",
		"Username": "Nom d'utilisateur"
		},
	"en": {
		"and join a club or group to get the most from the page.": "and join a club or group to get the most from the page.",
		"Add New Events": "Add New Events",
		"Add New Results": "Add New Results",
		"Administrator": "Administrator",
		"Advertisement": "Advertisement",
		"Ammend Events": "Ammend Events",
		"Ammend Post": "Ammend Post",
		"Ammend Results": "Ammend Results",
		"Club Page": "Club Page",
		"Create An Account": "Create An Account",
		"Create New Post": "Create New Post",
		"Events": "Events",
		"Forgot Your Password?": "Forgot Your Password?",
		"Hello": "Hello",
		"Home Page": "Home Page",
		"Join Page": "Join Page",
		"Login": "Login",
		"LOGIN..... ": "LOGIN..... ",
		"Manage Club Details": "Manage Club Details",
		"Manage Club Sessions": "Manage Club Sessions",
		"Manage Events Page": "Manage Events Page",
		"Manage Group Sessions": "Manage Group Sessions",
		"Manage Results Page": "Manage Results Page",
		"Moderator": "Moderator",
		"Password": "Password",
		"Please Login to your account": "Please Login to your account",
		"Remember Me": "Remember Me",
		"Results": "Results",
		"+ Register ": "+ Register ",
		"Search Preferences": "Search Preferences",
		"Username": "Username"
		}
};


text:
#ifndef __tubeSegmentTubes_h
#define __tubeSegmentTubes_h

// ITK Includes
#include "itkProcessObject.h"

// TubeTK Includes
#include "tubeWrappingMacros.h"

#include "itktubeTubeExtractor.h"
#include "itktubeTubeExtractorIO.h"

namespace tube
{
/** \class SegmentTubes
 *
 *  \ingroup TubeTK
 */

template< class TInputImage >
class SegmentTubes:
  public itk::ProcessObject
{
public:
  /** Standard class typedefs. */
  typedef SegmentTubes                                 Self;
  typedef itk::ProcessObject                           Superclass;
  typedef itk::SmartPointer< Self >                    Pointer;
  typedef itk::SmartPointer< const Self >              ConstPointer;

  typedef TInputImage                                  ImageType;
  typedef typename ImageType::PixelType                PixelType;
  typedef typename ImageType::IndexType                IndexType;

  typedef itk::tube::TubeExtractor< ImageType >        FilterType;
  typedef typename FilterType::TubeMaskImageType       TubeMaskImageType;
  typedef typename FilterType::TubeType                TubeType;
  typedef typename FilterType::TubeGroupType           TubeGroupType;

  typedef typename FilterType::ContinuousIndexType     ContinuousIndexType;

  typedef itk::tube::TubeExtractorIO< ImageType >      TubeExtractorIOType;

  /** Method for creation through the object factory. */
  itkNewMacro( Self );

  /** Run-time type information ( and related methods ). */
  itkTypeMacro( SegmentTubes, ProcessObject );

  /** Set the source image. */
  tubeWrapSetObjectMacro( InputImage, ImageType, Filter );

  /** Set the radius image. */
  tubeWrapSetObjectMacro( RadiusInputImage, ImageType, Filter );

  /** Set/Get radius value */
  tubeWrapSetMacro( Radius, double, Filter );
  tubeWrapGetMacro( Radius, double, Filter );

  /** Set the tube mask image. */
  tubeWrapSetObjectMacro( TubeMaskImage, TubeMaskImageType, Filter );
  tubeWrapGetObjectMacro( TubeMaskImage, TubeMaskImageType, Filter );

  /** Add a tube */
  bool AddTube( TubeType * tube );

  /** Delete a tube */
  bool DeleteTube( TubeType * tube );

  /** Set/Get debug status */
  tubeWrapSetMacro( Debug, bool, Filter );
  tubeWrapGetMacro( Debug, bool, Filter );

  /** Set ExtractBound Minimum */
  tubeWrapSetMacro( ExtractBoundMinInIndexSpace, IndexType, Filter );
  tubeWrapGetMacro( ExtractBoundMinInIndexSpace, IndexType, Filter );

  /** Set ExtractBound Maximum */
  tubeWrapSetMacro( ExtractBoundMaxInIndexSpace, IndexType, Filter );
  tubeWrapGetMacro( ExtractBoundMaxInIndexSpace, IndexType, Filter );

  void SetParameterFile( const char *filename );

  /*** Extract the ND tube given the position of the first point
   * and the tube ID */
  typename itk::tube::TubeExtractor< TInputImage >::TubeType *
    ExtractTube( const ContinuousIndexType & x,
    unsigned int tubeID,
    bool verbose = false );

  /** Get the list of tubes that have been extracted */
  tubeWrapGetConstObjectMacro( TubeGroup, TubeGroupType, Filter );

protected:
  SegmentTubes( void );
  ~SegmentTubes() {}
  void PrintSelf( std::ostream & os, itk::Indent indent ) const;

private:
  /** itktubeTubeExtractor parameters **/
  SegmentTubes( const Self & );
  void operator=( const Self & );

  // To remove warning "was hidden [-Woverloaded-virtual]"
  void SetInput( const DataObjectIdentifierType &, itk::DataObject * ) {};

  typename FilterType::Pointer m_Filter;

};
} // End namespace tube

#ifndef ITK_MANUAL_INSTANTIATION
#include "tubeSegmentTubes.hxx"
#endif

#endif // End !defined( __tubeSegmentTubes_h )


text:
Create [net](https://nodejs.org/api/net.html) style servers, connections between browser-tabs.

Using an ... ugly hack, messsages are sent between browser tabs/windows from the same domain.

Just pretend it's a net server unix socket...

> Note, this can currently only connect to servers located on _other_ tabs.
> this is incorrect, compared to the net module, because it should be possible
> to connect to a server created within the same process, but this feature is not important
> currently.

## Example

``` js

var tab = require('tab-stream')

tab.createServer(function (stream) {
  //SERVER
}).listen('socket')

//CLIENT
tab.connect('socket')
```

Instead of a numerical port, passing a string will work.
The idea is to make this as close to [net](https://nodejs.org/api/net.html) as possible.

See also, [autonode](https://github.com/dominictarr/autonode)

## License

MIT


text:
/* File generated automatically by dynamo */
/* Entity table that enumerates all known database tables */
CREATE TABLE IF NOT EXISTS ado_entity_type (
  /* the database table unique entity index */
  `id` INTEGER  AUTO_INCREMENT,
  /* the database entity name */
  `name` VARCHAR(127) BINARY UNIQUE ,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
/* Sequence generator */
CREATE TABLE IF NOT EXISTS ado_sequence (
  /* the sequence name */
  `name` VARCHAR(127) UNIQUE NOT NULL,
  /* the sequence record version */
  `version` INTEGER NOT NULL,
  /* the sequence value */
  `value` BIGINT NOT NULL,
  /* the sequence block size */
  `block_size` BIGINT NOT NULL,
  PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
/* Database schema version (per module) */
CREATE TABLE IF NOT EXISTS ado_version (
  /* the module name */
  `name` VARCHAR(127) UNIQUE NOT NULL,
  /* the database version schema for this module */
  `version` INTEGER NOT NULL,
  PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT IGNORE INTO ado_entity_type (name) VALUES
("ado_entity_type"), ("ado_sequence"), ("ado_version");
INSERT IGNORE INTO ado_version (name, version) VALUES ("ado", 2);


text:
package com.shevart.google_map.data.net.response;

import com.shevart.google_map.models.google_route.GoogleMapRoute;

import java.util.List;

public class GetGoogleMapRouteResponse {
    private String status;
    private List<GoogleMapRoute> routes;

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public List<GoogleMapRoute> getRoutes() {
        return routes;
    }

    public void setRoutes(List<GoogleMapRoute> routes) {
        this.routes = routes;
    }
}


text:
order: 3
title:
  zh-CN: 回复框
  en-US: Reply Editor
---

## zh-CN

评论编辑器组件提供了相同样式的封装以支持自定义评论编辑器。

## en-US

Comment can be used as an editor, so the user can customize the contents of the component.

```tsx
import { Avatar, Button, Comment, Form, Input, List } from 'antd';
import moment from 'moment';
import React, { useState } from 'react';

const { TextArea } = Input;

interface CommentItem {
  author: string;
  avatar: string;
  content: React.ReactNode;
  datetime: string;
}

interface EditorProps {
  onChange: (e: React.ChangeEvent<HTMLTextAreaElement>) => void;
  onSubmit: () => void;
  submitting: boolean;
  value: string;
}

const CommentList = ({ comments }: { comments: CommentItem[] }) => (
  <List
    dataSource={comments}
    header={`${comments.length} ${comments.length > 1 ? 'replies' : 'reply'}`}
    itemLayout="horizontal"
    renderItem={props => <Comment {...props} />}
  />
);

const Editor = ({ onChange, onSubmit, submitting, value }: EditorProps) => (
  <>
    <Form.Item>
      <TextArea rows={4} onChange={onChange} value={value} />
    </Form.Item>
    <Form.Item>
      <Button htmlType="submit" loading={submitting} onClick={onSubmit} type="primary">
        Add Comment
      </Button>
    </Form.Item>
  </>
);

const App: React.FC = () => {
  const [comments, setComments] = useState<CommentItem[]>([]);
  const [submitting, setSubmitting] = useState(false);
  const [value, setValue] = useState('');

  const handleSubmit = () => {
    if (!value) return;

    setSubmitting(true);

    setTimeout(() => {
      setSubmitting(false);
      setValue('');
      setComments([
        ...comments,
        {
          author: 'Han Solo',
          avatar: 'https://joeschmoe.io/api/v1/random',
          content: <p>{value}</p>,
          datetime: moment().fromNow(),
        },
      ]);
    }, 1000);
  };

  const handleChange = (e: React.ChangeEvent<HTMLTextAreaElement>) => {
    setValue(e.target.value);
  };

  return (
    <>
      {comments.length > 0 && <CommentList comments={comments} />}
      <Comment
        avatar={<Avatar src="https://joeschmoe.io/api/v1/random" alt="Han Solo" />}
        content={
          <Editor
            onChange={handleChange}
            onSubmit={handleSubmit}
            submitting={submitting}
            value={value}
          />
        }
      />
    </>
  );
};

export default App;
```