text:
default_target: all
.PHONY : default_target

#=============================================================================
# Special targets provided by cmake.

# Disable implicit rules so canoncical targets will work.
.SUFFIXES:

# Remove some rules from gmake that .SUFFIXES does not remove.
SUFFIXES =

.SUFFIXES: .hpux_make_needs_suffix_list

# Suppress display of executed commands.
$(VERBOSE).SILENT:

# A target that is always out of date.
cmake_force:
.PHONY : cmake_force

#=============================================================================
# Set environment variables for the build.

# The shell in which to execute make rules.
SHELL = /bin/sh

# The CMake executable.
CMAKE_COMMAND = /usr/bin/cmake

# The command to remove a file.
RM = /usr/bin/cmake -E remove -f

# The top-level source directory on which CMake was run.
CMAKE_SOURCE_DIR = /home/sumedh/kfs

# The top-level build directory on which CMake was run.
CMAKE_BINARY_DIR = /home/sumedh/kfs

#=============================================================================
# Targets provided globally by CMake.

# Special rule for the target edit_cache
edit_cache:
	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running interactive CMake command-line interface..."
	/usr/bin/cmake -i .
.PHONY : edit_cache

# Special rule for the target edit_cache
edit_cache/fast: edit_cache
.PHONY : edit_cache/fast

# Special rule for the target install
install: preinstall
	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
	/usr/bin/cmake -P cmake_install.cmake
.PHONY : install

# Special rule for the target install
install/fast: preinstall/fast
	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
	/usr/bin/cmake -P cmake_install.cmake
.PHONY : install/fast

# Special rule for the target install/local
install/local: preinstall
	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
	/usr/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
.PHONY : install/local

# Special rule for the target install/local
install/local/fast: install/local
.PHONY : install/local/fast

# Special rule for the target install/strip
install/strip: preinstall
	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
	/usr/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
.PHONY : install/strip

# Special rule for the target install/strip
install/strip/fast: install/strip
.PHONY : install/strip/fast

# Special rule for the target list_install_components
list_install_components:
	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
.PHONY : list_install_components

# Special rule for the target list_install_components
list_install_components/fast: list_install_components
.PHONY : list_install_components/fast

# Special rule for the target rebuild_cache
rebuild_cache:
	@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
	/usr/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
.PHONY : rebuild_cache

# Special rule for the target rebuild_cache
rebuild_cache/fast: rebuild_cache
.PHONY : rebuild_cache/fast

# The main all target
all: cmake_check_build_system
	cd /home/sumedh/kfs && $(CMAKE_COMMAND) -E cmake_progress_start /home/sumedh/kfs/CMakeFiles /home/sumedh/kfs/src/cc/libkfsIO/CMakeFiles/progress.marks
	cd /home/sumedh/kfs && $(MAKE) -f CMakeFiles/Makefile2 src/cc/libkfsIO/all
	$(CMAKE_COMMAND) -E cmake_progress_start /home/sumedh/kfs/CMakeFiles 0
.PHONY : all

# The main clean target
clean:
	cd /home/sumedh/kfs && $(MAKE) -f CMakeFiles/Makefile2 src/cc/libkfsIO/clean
.PHONY : clean

# The main clean target
clean/fast: clean
.PHONY : clean/fast

# Prepare targets for installation.
preinstall: all
	cd /home/sumedh/kfs && $(MAKE) -f CMakeFiles/Makefile2 src/cc/libkfsIO/preinstall
.PHONY : preinstall

# Prepare targets for installation.
preinstall/fast:
	cd /home/sumedh/kfs && $(MAKE) -f CMakeFiles/Makefile2 src/cc/libkfsIO/preinstall
.PHONY : preinstall/fast

# clear depends
depend:
	cd /home/sumedh/kfs && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
.PHONY : depend

# Convenience name for target.
src/cc/libkfsIO/CMakeFiles/kfsIO.dir/rule:
	cd /home/sumedh/kfs && $(MAKE) -f CMakeFiles/Makefile2 src/cc/libkfsIO/CMakeFiles/kfsIO.dir/rule
.PHONY : src/cc/libkfsIO/CMakeFiles/kfsIO.dir/rule

# Convenience name for target.
kfsIO: src/cc/libkfsIO/CMakeFiles/kfsIO.dir/rule
.PHONY : kfsIO

# fast build rule for target.
kfsIO/fast:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build
.PHONY : kfsIO/fast

# Convenience name for target.
src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/rule:
	cd /home/sumedh/kfs && $(MAKE) -f CMakeFiles/Makefile2 src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/rule
.PHONY : src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/rule

# Convenience name for target.
kfsIO-shared: src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/rule
.PHONY : kfsIO-shared

# fast build rule for target.
kfsIO-shared/fast:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build
.PHONY : kfsIO-shared/fast

# target to build an object file
Acceptor.o:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/Acceptor.o
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/Acceptor.o
.PHONY : Acceptor.o

# target to preprocess a source file
Acceptor.i:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/Acceptor.i
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/Acceptor.i
.PHONY : Acceptor.i

# target to generate assembly for a file
Acceptor.s:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/Acceptor.s
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/Acceptor.s
.PHONY : Acceptor.s

# target to build an object file
BufferedSocket.o:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/BufferedSocket.o
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/BufferedSocket.o
.PHONY : BufferedSocket.o

# target to preprocess a source file
BufferedSocket.i:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/BufferedSocket.i
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/BufferedSocket.i
.PHONY : BufferedSocket.i

# target to generate assembly for a file
BufferedSocket.s:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/BufferedSocket.s
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/BufferedSocket.s
.PHONY : BufferedSocket.s

# target to build an object file
Checksum.o:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/Checksum.o
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/Checksum.o
.PHONY : Checksum.o

# target to preprocess a source file
Checksum.i:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/Checksum.i
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/Checksum.i
.PHONY : Checksum.i

# target to generate assembly for a file
Checksum.s:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/Checksum.s
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/Checksum.s
.PHONY : Checksum.s

# target to build an object file
Counter.o:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/Counter.o
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/Counter.o
.PHONY : Counter.o

# target to preprocess a source file
Counter.i:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/Counter.i
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/Counter.i
.PHONY : Counter.i

# target to generate assembly for a file
Counter.s:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/Counter.s
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/Counter.s
.PHONY : Counter.s

# target to build an object file
EventManager.o:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/EventManager.o
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/EventManager.o
.PHONY : EventManager.o

# target to preprocess a source file
EventManager.i:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/EventManager.i
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/EventManager.i
.PHONY : EventManager.i

# target to generate assembly for a file
EventManager.s:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/EventManager.s
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/EventManager.s
.PHONY : EventManager.s

# target to build an object file
Globals.o:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/Globals.o
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/Globals.o
.PHONY : Globals.o

# target to preprocess a source file
Globals.i:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/Globals.i
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/Globals.i
.PHONY : Globals.i

# target to generate assembly for a file
Globals.s:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/Globals.s
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/Globals.s
.PHONY : Globals.s

# target to build an object file
IOBuffer.o:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/IOBuffer.o
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/IOBuffer.o
.PHONY : IOBuffer.o

# target to preprocess a source file
IOBuffer.i:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/IOBuffer.i
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/IOBuffer.i
.PHONY : IOBuffer.i

# target to generate assembly for a file
IOBuffer.s:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/IOBuffer.s
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/IOBuffer.s
.PHONY : IOBuffer.s

# target to build an object file
NetConnection.o:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/NetConnection.o
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/NetConnection.o
.PHONY : NetConnection.o

# target to preprocess a source file
NetConnection.i:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/NetConnection.i
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/NetConnection.i
.PHONY : NetConnection.i

# target to generate assembly for a file
NetConnection.s:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/NetConnection.s
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/NetConnection.s
.PHONY : NetConnection.s

# target to build an object file
NetErrorSimulator.o:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/NetErrorSimulator.o
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/NetErrorSimulator.o
.PHONY : NetErrorSimulator.o

# target to preprocess a source file
NetErrorSimulator.i:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/NetErrorSimulator.i
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/NetErrorSimulator.i
.PHONY : NetErrorSimulator.i

# target to generate assembly for a file
NetErrorSimulator.s:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/NetErrorSimulator.s
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/NetErrorSimulator.s
.PHONY : NetErrorSimulator.s

# target to build an object file
NetManager.o:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/NetManager.o
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/NetManager.o
.PHONY : NetManager.o

# target to preprocess a source file
NetManager.i:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/NetManager.i
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/NetManager.i
.PHONY : NetManager.i

# target to generate assembly for a file
NetManager.s:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/NetManager.s
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/NetManager.s
.PHONY : NetManager.s

# target to build an object file
TcpSocket.o:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/TcpSocket.o
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/TcpSocket.o
.PHONY : TcpSocket.o

# target to preprocess a source file
TcpSocket.i:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/TcpSocket.i
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/TcpSocket.i
.PHONY : TcpSocket.i

# target to generate assembly for a file
TcpSocket.s:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/TcpSocket.s
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/TcpSocket.s
.PHONY : TcpSocket.s

# target to build an object file
TelemetryClient.o:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/TelemetryClient.o
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/TelemetryClient.o
.PHONY : TelemetryClient.o

# target to preprocess a source file
TelemetryClient.i:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/TelemetryClient.i
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/TelemetryClient.i
.PHONY : TelemetryClient.i

# target to generate assembly for a file
TelemetryClient.s:
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO.dir/TelemetryClient.s
	cd /home/sumedh/kfs && $(MAKE) -f src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/build.make src/cc/libkfsIO/CMakeFiles/kfsIO-shared.dir/TelemetryClient.s
.PHONY : TelemetryClient.s

# Help Target
help:
	@echo "The following are some of the valid targets for this Makefile:"
	@echo "... all (the default if no target is provided)"
	@echo "... clean"
	@echo "... depend"
	@echo "... edit_cache"
	@echo "... install"
	@echo "... install/local"
	@echo "... install/strip"
	@echo "... kfsIO"
	@echo "... kfsIO-shared"
	@echo "... list_install_components"
	@echo "... rebuild_cache"
	@echo "... Acceptor.o"
	@echo "... Acceptor.i"
	@echo "... Acceptor.s"
	@echo "... BufferedSocket.o"
	@echo "... BufferedSocket.i"
	@echo "... BufferedSocket.s"
	@echo "... Checksum.o"
	@echo "... Checksum.i"
	@echo "... Checksum.s"
	@echo "... Counter.o"
	@echo "... Counter.i"
	@echo "... Counter.s"
	@echo "... EventManager.o"
	@echo "... EventManager.i"
	@echo "... EventManager.s"
	@echo "... Globals.o"
	@echo "... Globals.i"
	@echo "... Globals.s"
	@echo "... IOBuffer.o"
	@echo "... IOBuffer.i"
	@echo "... IOBuffer.s"
	@echo "... NetConnection.o"
	@echo "... NetConnection.i"
	@echo "... NetConnection.s"
	@echo "... NetErrorSimulator.o"
	@echo "... NetErrorSimulator.i"
	@echo "... NetErrorSimulator.s"
	@echo "... NetManager.o"
	@echo "... NetManager.i"
	@echo "... NetManager.s"
	@echo "... TcpSocket.o"
	@echo "... TcpSocket.i"
	@echo "... TcpSocket.s"
	@echo "... TelemetryClient.o"
	@echo "... TelemetryClient.i"
	@echo "... TelemetryClient.s"
.PHONY : help

#=============================================================================
# Special targets to cleanup operation of make.

# Special rule to run CMake to check the build system integrity.
# No rule that depends on this can have commands that come from listfiles
# because they might be regenerated.
cmake_check_build_system:
	cd /home/sumedh/kfs && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
.PHONY : cmake_check_build_system


text:
import {System} from "./generic";

export default class DockingPort extends System {
  constructor(params = {}) {
    super(params);
    this.class = "DockingPort";
    this.templateId = params.templateId || null;
    // Type can be 'dockingport', 'shuttlebay', or 'specialized'
    this.type = params.type || "shuttlebay";
    if (this.type === "shuttlebay") {
      this.clamps = params.clamps || true;
      this.compress = params.compress || true;
      this.doors = params.doors || true; // Doors are closed
      this.image = params.image || "/Docking Images/Default.png";
      this.docked = params.docked || true;
    } else {
      this.clamps = params.clamps || false;
      this.compress = params.compress || false;
      this.doors = params.doors || false; // Doors are closed
      this.image = params.image || "/Docking Images/Default.png";
      this.docked = params.docked || false;
    }

    this.shipName = params.shipName || "";

    this.direction = params.direction || "unspecified"; // or 'arriving' or 'departing'

    this.deckId = params.deckId || null;
    // Position on the top image of the ship. A number between 0 and 1
    // so it can be easily scaled to the size of the image if it is bigger
    // or smaller.`
    this.position = params.position || {x: 0, y: 0};
  }
  get displayName() {
    return this.name;
  }
  set displayName(name) {
    return;
  }
  updateDockingPort({
    name,
    shipName,
    type,
    clamps,
    compress,
    doors,
    image,
    docked,
    direction,
    deckId,
    position,
  }) {
    if (name || name === "") {
      this.name = name;
    }
    if (shipName || shipName === "") {
      this.shipName = shipName;
    }
    if (type) {
      this.type = type;
    }
    if (clamps || clamps === false) {
      this.clamps = clamps;
    }
    if (compress || compress === false) {
      this.compress = compress;
    }
    if (doors || doors === false) {
      this.doors = doors;
    }
    if (image) {
      this.image = image;
    }
    if (docked || docked === false) {
      this.docked = docked;
    }
    if (direction) {
      this.direction = direction;
    }
    if (deckId || deckId === false) {
      this.deckId = deckId;
    }
    if (position) {
      this.position = position;
    }
  }
}

redpajama_set_name: RedPajamaGithub


text:
=begin
#The Plaid API

#The Plaid REST API. Please see https://plaid.com/docs/api for more details.

The version of the OpenAPI document: 2020-09-14_1.205.3

Generated by: https://openapi-generator.tech
OpenAPI Generator version: 5.1.1

=end

require 'date'
require 'time'

module Plaid
  # A grouping of the Plaid produced transaction enhancement fields.
  class Enhancements
    # The name of the primary counterparty, such as the merchant or the financial institution, as extracted by Plaid from the raw description.
    attr_accessor :merchant_name

    # The website associated with this transaction.
    attr_accessor :website

    # A link to the logo associated with this transaction. The logo will always be 100x100 resolution.
    attr_accessor :logo_url

    # The check number of the transaction. This field is only populated for check transactions.
    attr_accessor :check_number

    attr_accessor :payment_channel

    # The ID of the category to which this transaction belongs. For a full list of categories, see [`/categories/get`](https://plaid.com/docs/api/products/transactions/#categoriesget).
    attr_accessor :category_id

    # A hierarchical array of the categories to which this transaction belongs. For a full list of categories, see [`/categories/get`](https://plaid.com/docs/api/products/transactions/#categoriesget).
    attr_accessor :category

    attr_accessor :location

    attr_accessor :personal_finance_category

    # A link to the icon associated with the primary personal finance category. The logo will always be 100x100 resolution.
    attr_accessor :personal_finance_category_icon_url

    # The counterparties present in the transaction. Counterparties, such as the merchant or the financial institution, are extracted by Plaid from the raw description.
    attr_accessor :counterparties

    # Attribute mapping from ruby-style variable name to JSON key.
    def self.attribute_map
      {
        :'merchant_name' => :'merchant_name',
        :'website' => :'website',
        :'logo_url' => :'logo_url',
        :'check_number' => :'check_number',
        :'payment_channel' => :'payment_channel',
        :'category_id' => :'category_id',
        :'category' => :'category',
        :'location' => :'location',
        :'personal_finance_category' => :'personal_finance_category',
        :'personal_finance_category_icon_url' => :'personal_finance_category_icon_url',
        :'counterparties' => :'counterparties'
      }
    end

    # Returns all the JSON keys this model knows about
    def self.acceptable_attributes
      attribute_map.values
    end

    # Attribute type mapping.
    def self.openapi_types
      {
        :'merchant_name' => :'String',
        :'website' => :'String',
        :'logo_url' => :'String',
        :'check_number' => :'String',
        :'payment_channel' => :'PaymentChannel',
        :'category_id' => :'String',
        :'category' => :'Array<String>',
        :'location' => :'Location',
        :'personal_finance_category' => :'PersonalFinanceCategory',
        :'personal_finance_category_icon_url' => :'String',
        :'counterparties' => :'Array<Counterparty>'
      }
    end

    # List of attributes with nullable: true
    def self.openapi_nullable
      Set.new([
        :'merchant_name',
        :'website',
        :'logo_url',
        :'check_number',
        :'category_id',
        :'personal_finance_category',
      ])
    end

    # Initializes the object
    # @param [Hash] attributes Model attributes in the form of hash
    def initialize(attributes = {})
      if (!attributes.is_a?(Hash))
        fail ArgumentError, "The input argument (attributes) must be a hash in `Plaid::Enhancements` initialize method"
      end

      # check to see if the attribute exists and convert string to symbol for hash key
      attributes = attributes.each_with_object({}) { |(k, v), h|
        if (!self.class.attribute_map.key?(k.to_sym))
          fail ArgumentError, "`#{k}` is not a valid attribute in `Plaid::Enhancements`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
        end
        h[k.to_sym] = v
      }

      if attributes.key?(:'merchant_name')
        self.merchant_name = attributes[:'merchant_name']
      end

      if attributes.key?(:'website')
        self.website = attributes[:'website']
      end

      if attributes.key?(:'logo_url')
        self.logo_url = attributes[:'logo_url']
      end

      if attributes.key?(:'check_number')
        self.check_number = attributes[:'check_number']
      end

      if attributes.key?(:'payment_channel')
        self.payment_channel = attributes[:'payment_channel']
      end

      if attributes.key?(:'category_id')
        self.category_id = attributes[:'category_id']
      end

      if attributes.key?(:'category')
        if (value = attributes[:'category']).is_a?(Array)
          self.category = value
        end
      end

      if attributes.key?(:'location')
        self.location = attributes[:'location']
      end

      if attributes.key?(:'personal_finance_category')
        self.personal_finance_category = attributes[:'personal_finance_category']
      end

      if attributes.key?(:'personal_finance_category_icon_url')
        self.personal_finance_category_icon_url = attributes[:'personal_finance_category_icon_url']
      end

      if attributes.key?(:'counterparties')
        if (value = attributes[:'counterparties']).is_a?(Array)
          self.counterparties = value
        end
      end
    end

    # Show invalid properties with the reasons. Usually used together with valid?
    # @return Array for valid properties with the reasons
    def list_invalid_properties
      invalid_properties = Array.new
      if @payment_channel.nil?
        invalid_properties.push('invalid value for "payment_channel", payment_channel cannot be nil.')
      end

      if @category.nil?
        invalid_properties.push('invalid value for "category", category cannot be nil.')
      end

      if @location.nil?
        invalid_properties.push('invalid value for "location", location cannot be nil.')
      end

      invalid_properties
    end

    # Check to see if the all the properties in the model are valid
    # @return true if the model is valid
    def valid?
      return false if @payment_channel.nil?
      return false if @category.nil?
      return false if @location.nil?
      true
    end

    # Checks equality by comparing each attribute.
    # @param [Object] Object to be compared
    def ==(o)
      return true if self.equal?(o)
      self.class == o.class &&
          merchant_name == o.merchant_name &&
          website == o.website &&
          logo_url == o.logo_url &&
          check_number == o.check_number &&
          payment_channel == o.payment_channel &&
          category_id == o.category_id &&
          category == o.category &&
          location == o.location &&
          personal_finance_category == o.personal_finance_category &&
          personal_finance_category_icon_url == o.personal_finance_category_icon_url &&
          counterparties == o.counterparties
    end

    # @see the `==` method
    # @param [Object] Object to be compared
    def eql?(o)
      self == o
    end

    # Calculates hash code according to all attributes.
    # @return [Integer] Hash code
    def hash
      [merchant_name, website, logo_url, check_number, payment_channel, category_id, category, location, personal_finance_category, personal_finance_category_icon_url, counterparties].hash
    end

    # Builds the object from hash
    # @param [Hash] attributes Model attributes in the form of hash
    # @return [Object] Returns the model itself
    def self.build_from_hash(attributes)
      new.build_from_hash(attributes)
    end

    # Builds the object from hash
    # @param [Hash] attributes Model attributes in the form of hash
    # @return [Object] Returns the model itself
    def build_from_hash(attributes)
      return nil unless attributes.is_a?(Hash)
      self.class.openapi_types.each_pair do |key, type|
        if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
          self.send("#{key}=", nil)
        elsif type =~ /\AArray<(.*)>/i
          # check to ensure the input is an array given that the attribute
          # is documented as an array but the input is not
          if attributes[self.class.attribute_map[key]].is_a?(Array)
            self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
          end
        elsif !attributes[self.class.attribute_map[key]].nil?
          self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
        end
      end

      self
    end

    # Deserializes the data based on type
    # @param string type Data type
    # @param string value Value to be deserialized
    # @return [Object] Deserialized data
    def _deserialize(type, value)
      case type.to_sym
      when :Time
        Time.parse(value)
      when :Date
        Date.parse(value)
      when :String
        value.to_s
      when :Integer
        value.to_i
      when :Float
        value.to_f
      when :Boolean
        if value.to_s =~ /\A(true|t|yes|y|1)\z/i
          true
        else
          false
        end
      when :Object
        # generic object (usually a Hash), return directly
        value
      when /\AArray<(?<inner_type>.+)>\z/
        inner_type = Regexp.last_match[:inner_type]
        value.map { |v| _deserialize(inner_type, v) }
      when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
        k_type = Regexp.last_match[:k_type]
        v_type = Regexp.last_match[:v_type]
        {}.tap do |hash|
          value.each do |k, v|
            hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
          end
        end
      else # model
        # models (e.g. Pet) or oneOf
        klass = Plaid.const_get(type)
        klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
      end
    end

    # Returns the string representation of the object
    # @return [String] String presentation of the object
    def to_s
      to_hash.to_s
    end

    # to_body is an alias to to_hash (backward compatibility)
    # @return [Hash] Returns the object in the form of hash
    def to_body
      to_hash
    end

    # Returns the object in the form of hash
    # @return [Hash] Returns the object in the form of hash
    def to_hash
      hash = {}
      self.class.attribute_map.each_pair do |attr, param|
        value = self.send(attr)
        if value.nil?
          is_nullable = self.class.openapi_nullable.include?(attr)
          next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
        end

        hash[param] = _to_hash(value)
      end
      hash
    end

    # Outputs non-array value in the form of hash
    # For object, use to_hash. Otherwise, just return the value
    # @param [Object] value Any valid value
    # @return [Hash] Returns the value in the form of hash
    def _to_hash(value)
      if value.is_a?(Array)
        value.compact.map { |v| _to_hash(v) }
      elsif value.is_a?(Hash)
        {}.tap do |hash|
          value.each { |k, v| hash[k] = _to_hash(v) }
        end
      elsif value.respond_to? :to_hash
        value.to_hash
      else
        value
      end
    end

  end

end


text:
"use strict";

/** Flattens an n-dimensional-array (deep)
 * @param {Array} a Array to flatten
 * @return {Array} Flattened array
 */
const flattenArray = (a) =>
    a.reduce((flat, toFlatten) =>
        flat.concat(Array.isArray(toFlatten) ? flattenArray(toFlatten) : toFlatten)
    , []);

module.exports = flattenArray;


text:
import { Ability } from './ability.interface';
import { GameInfo } from './game-info';
import { Hero } from './hero.interface';
import { Enemy } from './enemy.interface';
import { HeroSlot } from './hero-slot';
import { EnemySlot } from './enemy-slot';
import { EffectInfo } from './effect-info.interface';
import { Effect } from './effect.interface';

export class Blizzard implements Ability {
	name: string;
	cooldown: number;
	ticks: number;
	power: number;
	targets: string;

	constructor(cd: number, pwr: number, trg: string) {
		this.name = 'Blizzard';
		this.cooldown = cd;
		this.ticks = 0;
		this.power = pwr;
		this.targets = trg;
	}
	nextTick(spd: number, game: GameInfo, user: any): void {
		this.ticks += spd;
		while (this.ticks >= this.cooldown) {
			this.ticks -= this.cooldown;
			this.useAbility(game, user);
		}
	}
	useAbility(game: GameInfo, user: any): void {
		if (!user.bounty) {
			for (let x of game.enemies) {
				x.takeHit(this.power, []);
			}
		}
		else {
			for (let x of game.heroes) {
				x.takeHit(this.power, []);
			}
		}
	}
}


text:
from __future__ import absolute_import, division, print_function

__metaclass__ = type

################################################################################
# Documentation
################################################################################

ANSIBLE_METADATA = {'metadata_version': '1.1', 'status': ["preview"], 'supported_by': 'community'}

DOCUMENTATION = '''
---
module: gcp_compute_interconnect_attachment
description:
- Represents an InterconnectAttachment (VLAN attachment) resource. For more information,
  see Creating VLAN Attachments.
short_description: Creates a GCP InterconnectAttachment
version_added: 2.8
author: Google Inc. (@googlecloudplatform)
requirements:
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
options:
  state:
    description:
    - Whether the given object should exist in GCP
    choices:
    - present
    - absent
    default: present
  interconnect:
    description:
    - URL of the underlying Interconnect object that this attachment's traffic will
      traverse through. Required if type is DEDICATED, must not be set if type is
      PARTNER.
    required: false
  description:
    description:
    - An optional description of this resource.
    required: false
  edge_availability_domain:
    description:
    - Desired availability domain for the attachment. Only available for type PARTNER,
      at creation time. For improved reliability, customers should configure a pair
      of attachments with one per availability domain. The selected availability domain
      will be provided to the Partner via the pairing key so that the provisioned
      circuit will lie in the specified domain. If not specified, the value will default
      to AVAILABILITY_DOMAIN_ANY.
    required: false
  type:
    description:
    - The type of InterconnectAttachment you wish to create. Defaults to DEDICATED.
    required: false
    choices:
    - DEDICATED
    - PARTNER
    - PARTNER_PROVIDER
  router:
    description:
    - URL of the cloud router to be used for dynamic routing. This router must be
      in the same region as this InterconnectAttachment. The InterconnectAttachment
      will automatically connect the Interconnect to the network & region within which
      the Cloud Router is configured.
    - 'This field represents a link to a Router resource in GCP. It can be specified
      in two ways. First, you can place a dictionary with key ''selfLink'' and value
      of your resource''s selfLink Alternatively, you can add `register: name-of-resource`
      to a gcp_compute_router task and then set this router field to "{{ name-of-resource
      }}"'
    required: true
  name:
    description:
    - Name of the resource. Provided by the client when the resource is created. The
      name must be 1-63 characters long, and comply with RFC1035. Specifically, the
      name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`
      which means the first character must be a lowercase letter, and all following
      characters must be a dash, lowercase letter, or digit, except the last character,
      which cannot be a dash.
    required: true
  candidate_subnets:
    description:
    - Up to 16 candidate prefixes that can be used to restrict the allocation of cloudRouterIpAddress
      and customerRouterIpAddress for this attachment.
    - All prefixes must be within link-local address space (169.254.0.0/16) and must
      be /29 or shorter (/28, /27, etc). Google will attempt to select an unused /29
      from the supplied candidate prefix(es). The request will fail if all possible
      /29s are in use on Google's edge. If not supplied, Google will randomly select
      an unused /29 from all of link-local space.
    required: false
  vlan_tag8021q:
    description:
    - The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4094.
    required: false
  region:
    description:
    - Region where the regional interconnect attachment resides.
    required: true
extends_documentation_fragment: gcp
'''

EXAMPLES = '''
- name: create a interconnect attachment
  gcp_compute_interconnect_attachment:
    name: test_object
    region: us-central1
    project: test_project
    auth_kind: serviceaccount
    interconnect: https://googleapis.com/compute/v1/projects/test_project/global/interconnects/...
    router: https://googleapis.com/compute/v1/projects/test_project/regions/us-central1/routers/...
    service_account_file: "/tmp/auth.pem"
    state: present
  register: disk
'''

RETURN = '''
cloudRouterIpAddress:
  description:
  - IPv4 address + prefix length to be configured on Cloud Router Interface for this
    interconnect attachment.
  returned: success
  type: str
customerRouterIpAddress:
  description:
  - IPv4 address + prefix length to be configured on the customer router subinterface
    for this interconnect attachment.
  returned: success
  type: str
interconnect:
  description:
  - URL of the underlying Interconnect object that this attachment's traffic will
    traverse through. Required if type is DEDICATED, must not be set if type is PARTNER.
  returned: success
  type: str
description:
  description:
  - An optional description of this resource.
  returned: success
  type: str
edgeAvailabilityDomain:
  description:
  - Desired availability domain for the attachment. Only available for type PARTNER,
    at creation time. For improved reliability, customers should configure a pair
    of attachments with one per availability domain. The selected availability domain
    will be provided to the Partner via the pairing key so that the provisioned circuit
    will lie in the specified domain. If not specified, the value will default to
    AVAILABILITY_DOMAIN_ANY.
  returned: success
  type: str
pairingKey:
  description:
  - '[Output only for type PARTNER. Not present for DEDICATED]. The opaque identifier
    of an PARTNER attachment used to initiate provisioning with a selected partner.
    Of the form "XXXXX/region/domain" .'
  returned: success
  type: str
partnerAsn:
  description:
  - "[Output only for type PARTNER. Not present for DEDICATED]. Optional BGP ASN for
    the router that should be supplied by a layer 3 Partner if they configured BGP
    on behalf of the customer."
  returned: success
  type: str
privateInterconnectInfo:
  description:
  - Information specific to an InterconnectAttachment. This property is populated
    if the interconnect that this is attached to is of type DEDICATED.
  returned: success
  type: complex
  contains:
    tag8021q:
      description:
      - 802.1q encapsulation tag to be used for traffic between Google and the customer,
        going to and from this network and region.
      returned: success
      type: int
type:
  description:
  - The type of InterconnectAttachment you wish to create. Defaults to DEDICATED.
  returned: success
  type: str
state:
  description:
  - "[Output Only] The current state of this attachment's functionality."
  returned: success
  type: str
googleReferenceId:
  description:
  - Google reference ID, to be used when raising support tickets with Google or otherwise
    to debug backend connectivity issues.
  returned: success
  type: str
router:
  description:
  - URL of the cloud router to be used for dynamic routing. This router must be in
    the same region as this InterconnectAttachment. The InterconnectAttachment will
    automatically connect the Interconnect to the network & region within which the
    Cloud Router is configured.
  returned: success
  type: dict
creationTimestamp:
  description:
  - Creation timestamp in RFC3339 text format.
  returned: success
  type: str
id:
  description:
  - The unique identifier for the resource. This identifier is defined by the server.
  returned: success
  type: str
name:
  description:
  - Name of the resource. Provided by the client when the resource is created. The
    name must be 1-63 characters long, and comply with RFC1035. Specifically, the
    name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`
    which means the first character must be a lowercase letter, and all following
    characters must be a dash, lowercase letter, or digit, except the last character,
    which cannot be a dash.
  returned: success
  type: str
candidateSubnets:
  description:
  - Up to 16 candidate prefixes that can be used to restrict the allocation of cloudRouterIpAddress
    and customerRouterIpAddress for this attachment.
  - All prefixes must be within link-local address space (169.254.0.0/16) and must
    be /29 or shorter (/28, /27, etc). Google will attempt to select an unused /29
    from the supplied candidate prefix(es). The request will fail if all possible
    /29s are in use on Google's edge. If not supplied, Google will randomly select
    an unused /29 from all of link-local space.
  returned: success
  type: list
vlanTag8021q:
  description:
  - The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4094.
  returned: success
  type: int
region:
  description:
  - Region where the regional interconnect attachment resides.
  returned: success
  type: str
'''

################################################################################
# Imports
################################################################################

from ansible.module_utils.gcp_utils import navigate_hash, GcpSession, GcpModule, GcpRequest, remove_nones_from_dict, replace_resource_dict
import json
import re
import time

################################################################################
# Main
################################################################################

def main():
    """Main function"""

    module = GcpModule(
        argument_spec=dict(
            state=dict(default='present', choices=['present', 'absent'], type='str'),
            interconnect=dict(type='str'),
            description=dict(type='str'),
            edge_availability_domain=dict(type='str'),
            type=dict(type='str', choices=['DEDICATED', 'PARTNER', 'PARTNER_PROVIDER']),
            router=dict(required=True, type='dict'),
            name=dict(required=True, type='str'),
            candidate_subnets=dict(type='list', elements='str'),
            vlan_tag8021q=dict(type='int'),
            region=dict(required=True, type='str'),
        )
    )

    if not module.params['scopes']:
        module.params['scopes'] = ['https://www.googleapis.com/auth/compute']

    state = module.params['state']
    kind = 'compute#interconnectAttachment'

    fetch = fetch_resource(module, self_link(module), kind)
    changed = False

    if fetch:
        if state == 'present':
            if is_different(module, fetch):
                update(module, self_link(module), kind)
                fetch = fetch_resource(module, self_link(module), kind)
                changed = True
        else:
            delete(module, self_link(module), kind)
            fetch = {}
            changed = True
    else:
        if state == 'present':
            fetch = create(module, collection(module), kind)
            changed = True
        else:
            fetch = {}

    fetch.update({'changed': changed})

    module.exit_json(**fetch)

def create(module, link, kind):
    auth = GcpSession(module, 'compute')
    return wait_for_operation(module, auth.post(link, resource_to_request(module)))

def update(module, link, kind):
    module.fail_json(msg="InterconnectAttachment cannot be edited")

def delete(module, link, kind):
    auth = GcpSession(module, 'compute')
    return wait_for_operation(module, auth.delete(link))

def resource_to_request(module):
    request = {
        u'kind': 'compute#interconnectAttachment',
        u'interconnect': module.params.get('interconnect'),
        u'description': module.params.get('description'),
        u'edgeAvailabilityDomain': module.params.get('edge_availability_domain'),
        u'type': module.params.get('type'),
        u'router': replace_resource_dict(module.params.get(u'router', {}), 'selfLink'),
        u'name': module.params.get('name'),
        u'candidateSubnets': module.params.get('candidate_subnets'),
        u'vlanTag8021q': module.params.get('vlan_tag8021q'),
    }
    return_vals = {}
    for k, v in request.items():
        if v or v is False:
            return_vals[k] = v

    return return_vals

def fetch_resource(module, link, kind, allow_not_found=True):
    auth = GcpSession(module, 'compute')
    return return_if_object(module, auth.get(link), kind, allow_not_found)

def self_link(module):
    return "https://www.googleapis.com/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{name}".format(**module.params)

def collection(module):
    return "https://www.googleapis.com/compute/v1/projects/{project}/regions/{region}/interconnectAttachments".format(**module.params)

def return_if_object(module, response, kind, allow_not_found=False):
    # If not found, return nothing.
    if allow_not_found and response.status_code == 404:
        return None

    # If no content, return nothing.
    if response.status_code == 204:
        return None

    try:
        module.raise_for_status(response)
        result = response.json()
    except getattr(json.decoder, 'JSONDecodeError', ValueError):
        module.fail_json(msg="Invalid JSON response with error: %s" % response.text)

    if navigate_hash(result, ['error', 'errors']):
        module.fail_json(msg=navigate_hash(result, ['error', 'errors']))

    return result

def is_different(module, response):
    request = resource_to_request(module)
    response = response_to_hash(module, response)

    # Remove all output-only from response.
    response_vals = {}
    for k, v in response.items():
        if k in request:
            response_vals[k] = v

    request_vals = {}
    for k, v in request.items():
        if k in response:
            request_vals[k] = v

    return GcpRequest(request_vals) != GcpRequest(response_vals)

# Remove unnecessary properties from the response.
# This is for doing comparisons with Ansible's current parameters.
def response_to_hash(module, response):
    return {
        u'cloudRouterIpAddress': response.get(u'cloudRouterIpAddress'),
        u'customerRouterIpAddress': response.get(u'customerRouterIpAddress'),
        u'interconnect': response.get(u'interconnect'),
        u'description': response.get(u'description'),
        u'edgeAvailabilityDomain': response.get(u'edgeAvailabilityDomain'),
        u'pairingKey': response.get(u'pairingKey'),
        u'partnerAsn': response.get(u'partnerAsn'),
        u'privateInterconnectInfo': InterconnectAttachmentPrivateinterconnectinfo(response.get(u'privateInterconnectInfo', {}), module).from_response(),
        u'type': response.get(u'type'),
        u'state': response.get(u'state'),
        u'googleReferenceId': response.get(u'googleReferenceId'),
        u'router': response.get(u'router'),
        u'creationTimestamp': response.get(u'creationTimestamp'),
        u'id': response.get(u'id'),
        u'name': response.get(u'name'),
        u'candidateSubnets': response.get(u'candidateSubnets'),
        u'vlanTag8021q': response.get(u'vlanTag8021q'),
    }

def region_selflink(name, params):
    if name is None:
        return
    url = r"https://www.googleapis.com/compute/v1/projects/.*/regions/[a-z1-9\-]*"
    if not re.match(url, name):
        name = "https://www.googleapis.com/compute/v1/projects/{project}/regions/%s".format(**params) % name
    return name

def async_op_url(module, extra_data=None):
    if extra_data is None:
        extra_data = {}
    url = "https://www.googleapis.com/compute/v1/projects/{project}/regions/{region}/operations/{op_id}"
    combined = extra_data.copy()
    combined.update(module.params)
    return url.format(**combined)

def wait_for_operation(module, response):
    op_result = return_if_object(module, response, 'compute#operation')
    if op_result is None:
        return {}
    status = navigate_hash(op_result, ['status'])
    wait_done = wait_for_completion(status, op_result, module)
    return fetch_resource(module, navigate_hash(wait_done, ['targetLink']), 'compute#interconnectAttachment')

def wait_for_completion(status, op_result, module):
    op_id = navigate_hash(op_result, ['name'])
    op_uri = async_op_url(module, {'op_id': op_id})
    while status != 'DONE':
        raise_if_errors(op_result, ['error', 'errors'], module)
        time.sleep(1.0)
        op_result = fetch_resource(module, op_uri, 'compute#operation', False)
        status = navigate_hash(op_result, ['status'])
    return op_result

def raise_if_errors(response, err_path, module):
    errors = navigate_hash(response, err_path)
    if errors is not None:
        module.fail_json(msg=errors)

class InterconnectAttachmentPrivateinterconnectinfo(object):
    def __init__(self, request, module):
        self.module = module
        if request:
            self.request = request
        else:
            self.request = {}

    def to_request(self):
        return remove_nones_from_dict({})

    def from_response(self):
        return remove_nones_from_dict({})

if __name__ == '__main__':
    main()


text:
package org.newdawn.slick.tools.peditor;

import org.newdawn.slick.particles.ConfigurableEmitter;
import org.newdawn.slick.particles.ConfigurableEmitter.RandomValue;
import org.newdawn.slick.particles.ConfigurableEmitter.Range;
import org.newdawn.slick.particles.ConfigurableEmitter.SimpleValue;
import org.newdawn.slick.particles.ConfigurableEmitter.Value;

import java.util.HashMap;

/**
 * The common bits between all the different control panels. This gives a way to link controls to data elements within
 * the emitter. Plumbing it this way saves the effort of writing bespoke code for each editor type/
 *

 *
 * @author kevin
 */
public abstract class ControlPanel extends DefaultPanel implements InputPanelListener {

    /**
     * A map from visual control to data element
     */
    protected HashMap controlToData = new HashMap();

    /**
     * A map from name to visual control
     */
    protected HashMap named = new HashMap();

    /**
     * The emitter being configured
     */
    protected ConfigurableEmitter emitter;

    /**
     * The offset on the y axis for components
     */
    protected int yPos;

    /**
     * Create a new panel for controls
     */
    public ControlPanel() {
        setLayout(null);
    }

    /**
     * Add a configurable value to the mapping table
     *

     *
     * @param name       The name of the control
     * @param valuePanel The panel used to set the value in the emitter
     */
    protected void addValue(String name, ValuePanel valuePanel) {
        named.put(name, valuePanel);

        valuePanel.setBounds(0, 10 + yPos, 280, 63);
        valuePanel.addListener(this);
        add(valuePanel);

        yPos += 63;
    }

    /**
     * Add a configurable range panel to the mapping table
     *

     *
     * @param name   The name of the control
     * @param minMax The panel used to set the range in the emitter
     */
    protected void addMinMax(String name, MinMaxPanel minMax) {
        named.put(name, minMax);

        minMax.setBounds(0, 10 + yPos, 280, minMax.getOffset());
        minMax.addListener(this);
        add(minMax);

        yPos += minMax.getOffset();
    }

    /**
     * Set the emitter to be configured
     *

     *
     * @param emitter The emitter to be configured
     */
    public final void setTarget(ConfigurableEmitter emitter) {
        this.emitter = emitter;

        linkEmitterToFields(emitter);
    }

    /**
     * Link the fields in the emitter to the panels on this control panel
     *

     *
     * @param emitter The emitter to be configured
     */
    protected abstract void linkEmitterToFields(ConfigurableEmitter emitter);

    /**
     * Link a emitter configurable range to a named component
     *

     *
     * @param range The configurable range from the emitter
     * @param name  The name of the component to link to
     */
    protected void link(Range range, String name) {
        link(range, (MinMaxPanel) named.get(name));
    }

    /**
     * Link a emitter configurable value to a named component
     *

     *
     * @param value The configurable value from the emitter
     * @param name  The name of the component to link to
     */
    protected void link(Value value, String name) {
        link(value, (ValuePanel) named.get(name));
    }

    /**
     * Link a emitter configurable value to a value panel
     *

     *
     * @param value The configurable value from the emitter
     * @param panel The component to link against
     */
    private void link(Value value, ValuePanel panel) {
        controlToData.put(panel, value);

        if (value instanceof SimpleValue) {
            panel.setValue((int) ((SimpleValue) value).getValue(0));
        } else if (value instanceof RandomValue) {
            panel.setValue((int) ((RandomValue) value).getValue());
        }
    }

    /**
     * Link a emitter configurable range to a value panel
     *

     *
     * @param range The configurable range from the emitter
     * @param panel The component to link against
     */
    private void link(Range range, MinMaxPanel panel) {
        controlToData.put(panel, range);
        panel.setMax((int) range.getMax());
        panel.setMin((int) range.getMin());
        panel.setEnabledValue(range.isEnabled());
    }

    /**
     * @see InputPanelListener#minMaxUpdated(MinMaxPanel)
     */
    public void minMaxUpdated(MinMaxPanel source) {
        if (emitter == null) {
            return;
        }

        Range range = (Range) controlToData.get(source);
        if (range != null) {
            range.setMax(source.getMax());
            range.setMin(source.getMin());
            range.setEnabled(source.getEnabled());
        } else {
            throw new RuntimeException("No data set specified for the GUI source");
        }
    }

    /**
     * @see InputPanelListener#valueUpdated(ValuePanel)
     */
    public void valueUpdated(ValuePanel source) {
        if (emitter == null) {
            return;
        }

        Value value = (Value) controlToData.get(source);
        if (value != null) {
            if (value instanceof SimpleValue) {
                ((SimpleValue) value).setValue(source.getValue());
            } else if (value instanceof RandomValue) {
                ((RandomValue) value).setValue(source.getValue());
            }
        } else {
            throw new RuntimeException("No data set specified for the GUI source");
        }
    }

}


text:
package com.guhanjie.weixin.msg;

import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.apache.commons.lang.StringUtils;
import org.apache.http.HttpEntity;
import org.apache.http.entity.ContentType;
import org.apache.http.entity.StringEntity;
import org.dom4j.Document;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.alibaba.fastjson.JSONObject;
import com.guhanjie.model.Position;
import com.guhanjie.model.User;
import com.guhanjie.service.UserService;
import com.guhanjie.util.HttpUtil;
import com.guhanjie.util.SpringContextUtil;
import com.guhanjie.util.XmlUtil;
import com.guhanjie.weixin.WeixinConstants;
import com.guhanjie.weixin.WeixinHttpUtil;
import com.guhanjie.weixin.WeixinHttpUtil.WeixinHttpCallback;
import com.guhanjie.weixin.model.ErrorEntity;
import com.guhanjie.weixin.model.UserInfo;
import com.guhanjie.weixin.user.UserKit;

/**
 * Class Name:		MessageKit

 * Description:		[description]
 * @time				2016年8月28日 下午9:23:20
 * @author			guhanjie
 * @version			1.0.0
 * @since 			JDK 1.6
 */
public class MessageKit {

    private static final Logger LOGGER = LoggerFactory.getLogger(MessageKit.class);

    private static Map<String,String> replyMsgs = new HashMap<String,String>();
    static{
        replyMsgs.put("123", "你输入了123");
        replyMsgs.put("hello", "world");
        replyMsgs.put("run", "祝你一路平安!");
    }

    public static Map<String,String> reqMsg2Map(HttpServletRequest req) {
        try {
            Document xml = HttpUtil.getRequest2Xml(req);
            Map<String,String> maps = XmlUtil.xml2map(xml);
            return maps;
        } catch (Exception e) {
            LOGGER.error("error in parsing request to xml from weixin.", e);
        }
        return null;
    }

    /**
	 * Method Name:	handlerMsg

	 * Description:			[处理微信消息]
	 * @author				GUHANJIE
	 * @time					2016年9月2日 上午10:58:25
	 * @param msgMap
	 * @return
	 * @throws IOException
	 */
	public static String handlerMsg(Map<String, String> msgMap) {
	    String msgType = msgMap.get("MsgType");
	    try {
    	    //处理事件消息
    	    if(msgType.equals(WeixinConstants.MSG_TYPE_EVENT)) {
    	    	String eventType = msgMap.get("Event");
    	    	//订阅事件
    	        if(eventType.equals(WeixinConstants.EVENT_SUBSCRIBE)) {
    	        	return handleSubscribeEvent(msgMap);
    	        }
    	        //上报地址位置事件
//    	        else if(eventType.equals(WeixinConstants.EVENT_LOCATION)) {
//    	        	return handleLocationEvent(msgMap);
//    	        }
    	    }
    	    //处理文本消息
    	    else if(msgType.equals(WeixinConstants.MSG_TYPE_TEXT)) {
    	        return handleTextMsg(msgMap);
    	    }
    	    //处理图片消息
//    	    else if(msgType.equals(WeixinConstants.MSG_TYPE_IMAGE)) {
//    	        return handleImageMsg(msgMap,"_I53ClKoGvcQC4z1mWLf-O_nDJ_rw2p-LtfJOslSONSzUEtv8eKEvlDbn8m71d9m");
//    	    }
	    } catch(IOException e) {
	        LOGGER.error("error to handle msg for weixin.", e);
	    }
	    return "";
	}

	private static String handleImageMsg(Map<String, String> msgMap,String mediaId) throws IOException {
	    LOGGER.info("starting to handle image message....");
	    Map<String,String> map = new HashMap<String, String>();
        map.put("ToUserName", msgMap.get("FromUserName"));
        map.put("FromUserName", msgMap.get("ToUserName"));
        map.put("CreateTime", new Date().getTime()+"");
        map.put("MsgType", "image");
        map.put("Image", "<MediaId>"+mediaId+"</MediaId>");
        return XmlUtil.map2xmlstr(map);
    }

    private static String handleTextMsg(Map<String, String> msgMap) throws IOException {
        LOGGER.info("starting to handle text message....");
        Map<String,String> map = new HashMap<String, String>();
        map.put("ToUserName", msgMap.get("FromUserName"));
        map.put("FromUserName", msgMap.get("ToUserName"));
        map.put("CreateTime", new Date().getTime()+"");
        map.put("MsgType", "text");
        String replyContent = "你请求的消息的内容不正确!";
        String con = msgMap.get("Content");
        if(replyMsgs.containsKey(con)) {
            replyContent = replyMsgs.get(con);
        }
        map.put("Content", replyContent);
        return XmlUtil.map2xmlstr(map);
    }

    private static String handleSubscribeEvent(Map<String, String> msgMap) throws IOException {
        LOGGER.info("starting to handle subscribe event....");
        String openId = msgMap.get("FromUserName");
    	//自动添加关注用户
    	try {
    	    UserService userService = SpringContextUtil.getBean(UserService.class);
            User user = userService.getUserByOpenId(openId);
            if(user == null) {
                user = new User();
                user.setOpenId(openId);
                UserInfo userInfo = UserKit.getUserInfo(openId);
                user.setUnionid(userInfo.getUnionid());
                user.setName(userInfo.getNickname());
                user.setNickname(userInfo.getNickname());
                user.setSex(userInfo.getSex());
                user.setLanguage(userInfo.getLanguage());
                user.setCountry(userInfo.getCountry());
                user.setProvince(userInfo.getProvince());
                user.setCity(userInfo.getCity());
                if(StringUtils.isNumeric(userInfo.getSubscribe_time())) {
                    user.setSubscribeTime(new Date(Long.parseLong(userInfo.getSubscribe_time())));
                }
                userService.addUser(user);
            }
    	} catch(Exception e) {
    	    LOGGER.error("error happened in add user info, openId[{}].", openId, e);
    	}
        Map<String,String> map = new HashMap<String, String>();
        map.put("ToUserName", msgMap.get("FromUserName"));
        map.put("FromUserName", msgMap.get("ToUserName"));
        map.put("CreateTime", new Date().getTime()+"");
        map.put("MsgType", "text");
        map.put("Content", "您好,欢迎关注!");
    	return XmlUtil.map2xmlstr(map);
    }

    private static String handleLocationEvent(Map<String, String> msgMap) throws IOException {
        LOGGER.info("starting to handle location event....");
        String openId = msgMap.get("FromUserName");
        String lat = msgMap.get("Latitude");
    	String lng = msgMap.get("Longitude");
    	//获取用户上报的地址微信,并绑定到内存中
    	User user = new User();
    	user.setOpenId(openId);
    	Position p = new Position();
    	p.setGeoLat(lat);
    	p.setGeoLng(lng);
    	user.setPosition(p);
        UserService userService = SpringContextUtil.getBean(UserService.class);
    	userService.updateToCache(user);
    	return "";
    }

    public static void sendKFMsg(String openids, String content) {
        if(StringUtils.isBlank(openids)) {
            LOGGER.warn("send order msg to KF, but no kf openids.");
            return;
        }
        String [] ids = openids.split(",");
        for(final String openid : ids) {
            LOGGER.info("starting to send message to KF[{}]...", openid);
            try {
                String url = WeixinConstants.API_KF_SEND_MSG;
                String str = new String("{" +
                                                    "    \"touser\":\"OPENID\"," +
                                                    "    \"msgtype\":\"text\"," +
                                                    "    \"text\":" +
                                                    "    {" +
                                                    "         \"content\":\"ContentText\"" +
                                                    "    }" +
                                                    "}");
                str = str.replaceAll("OPENID", openid);
                str = str.replaceAll("ContentText", content);
                LOGGER.debug("message content: [{}]", str);
                HttpEntity entity = new StringEntity(str, ContentType.APPLICATION_JSON);
                WeixinHttpUtil.sendPost(url, entity, new WeixinHttpCallback() {
                        @Override
                        public void process(String json) {
                            ErrorEntity t = JSONObject.parseObject(json, ErrorEntity.class);
                            if(t!=null && t.getErrcode()!=null && t.getErrmsg()!=null) {
                                if(t.getErrcode().equals("0") && t.getErrmsg().equals("ok"))
                                LOGGER.info("Success to post message to KF[{}].", openid);
                                return;
                            }
                            LOGGER.error("Failed to post message to KF, error:[{}].", json);
                        }
                    });
            } catch (Exception e) {
                LOGGER.error("error to post message[{}] to KF[{}].", content, openid);
            }
        }
	}
}


text:
..
   Copyright 2012-2014, Continuuity, Inc.

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

.. _overview_design-goals:

============
Design Goals
============

.. _design-goals:

Highlights and Features
=======================

Continuuity Loom was designed to simplify and unify the
process of cluster provisioning across infrastructure systems,
while still allowing the flexibility to individually
specify cluster settings.

.. figure:: /_images/loom-diagram.png
    :width: 489px
    :align: center
    :height: 286px
    :alt: Design goals
    :figclass: align-center

Continuuity Loom streamlines the process of cluster provisioning, reducing
the amount of work necessary for administrators and users.
Continuuity Loom also allows cluster administrators to more easily manage and
monitor clusters through a higher level interface system.


text:
package internalversion

import (
	api "k8s.io/kubernetes/pkg/api"
	batch "k8s.io/kubernetes/pkg/apis/batch"
	v1 "k8s.io/kubernetes/pkg/apis/meta/v1"
	restclient "k8s.io/kubernetes/pkg/client/restclient"
	watch "k8s.io/kubernetes/pkg/watch"
)

// JobsGetter has a method to return a JobInterface.
// A group's client should implement this interface.
type JobsGetter interface {
	Jobs(namespace string) JobInterface
}

// JobInterface has methods to work with Job resources.
type JobInterface interface {
	Create(*batch.Job) (*batch.Job, error)
	Update(*batch.Job) (*batch.Job, error)
	UpdateStatus(*batch.Job) (*batch.Job, error)
	Delete(name string, options *api.DeleteOptions) error
	DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
	Get(name string, options v1.GetOptions) (*batch.Job, error)
	List(opts api.ListOptions) (*batch.JobList, error)
	Watch(opts api.ListOptions) (watch.Interface, error)
	Patch(name string, pt api.PatchType, data []byte, subresources ...string) (result *batch.Job, err error)
	JobExpansion
}

// jobs implements JobInterface
type jobs struct {
	client restclient.Interface
	ns     string
}

// newJobs returns a Jobs
func newJobs(c *BatchClient, namespace string) *jobs {
	return &jobs{
		client: c.RESTClient(),
		ns:     namespace,
	}
}

// Create takes the representation of a job and creates it.  Returns the server's representation of the job, and an error, if there is any.
func (c *jobs) Create(job *batch.Job) (result *batch.Job, err error) {
	result = &batch.Job{}
	err = c.client.Post().
		Namespace(c.ns).
		Resource("jobs").
		Body(job).
		Do().
		Into(result)
	return
}

// Update takes the representation of a job and updates it. Returns the server's representation of the job, and an error, if there is any.
func (c *jobs) Update(job *batch.Job) (result *batch.Job, err error) {
	result = &batch.Job{}
	err = c.client.Put().
		Namespace(c.ns).
		Resource("jobs").
		Name(job.Name).
		Body(job).
		Do().
		Into(result)
	return
}

// UpdateStatus was generated because the type contains a Status member.
// Add a +genclientstatus=false comment above the type to avoid generating UpdateStatus().

func (c *jobs) UpdateStatus(job *batch.Job) (result *batch.Job, err error) {
	result = &batch.Job{}
	err = c.client.Put().
		Namespace(c.ns).
		Resource("jobs").
		Name(job.Name).
		SubResource("status").
		Body(job).
		Do().
		Into(result)
	return
}

// Delete takes name of the job and deletes it. Returns an error if one occurs.
func (c *jobs) Delete(name string, options *api.DeleteOptions) error {
	return c.client.Delete().
		Namespace(c.ns).
		Resource("jobs").
		Name(name).
		Body(options).
		Do().
		Error()
}

// DeleteCollection deletes a collection of objects.
func (c *jobs) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
	return c.client.Delete().
		Namespace(c.ns).
		Resource("jobs").
		VersionedParams(&listOptions, api.ParameterCodec).
		Body(options).
		Do().
		Error()
}

// Get takes name of the job, and returns the corresponding job object, and an error if there is any.
func (c *jobs) Get(name string, options v1.GetOptions) (result *batch.Job, err error) {
	result = &batch.Job{}
	err = c.client.Get().
		Namespace(c.ns).
		Resource("jobs").
		Name(name).
		VersionedParams(&options, api.ParameterCodec).
		Do().
		Into(result)
	return
}

// List takes label and field selectors, and returns the list of Jobs that match those selectors.
func (c *jobs) List(opts api.ListOptions) (result *batch.JobList, err error) {
	result = &batch.JobList{}
	err = c.client.Get().
		Namespace(c.ns).
		Resource("jobs").
		VersionedParams(&opts, api.ParameterCodec).
		Do().
		Into(result)
	return
}

// Watch returns a watch.Interface that watches the requested jobs.
func (c *jobs) Watch(opts api.ListOptions) (watch.Interface, error) {
	return c.client.Get().
		Prefix("watch").
		Namespace(c.ns).
		Resource("jobs").
		VersionedParams(&opts, api.ParameterCodec).
		Watch()
}

// Patch applies the patch and returns the patched job.
func (c *jobs) Patch(name string, pt api.PatchType, data []byte, subresources ...string) (result *batch.Job, err error) {
	result = &batch.Job{}
	err = c.client.Patch(pt).
		Namespace(c.ns).
		Resource("jobs").
		SubResource(subresources...).
		Name(name).
		Body(data).
		Do().
		Into(result)
	return
}


text:
Imports SolidEdgeCommunity.Extensions ' https://github.com/SolidEdgeCommunity/SolidEdge.Community/wiki/Using-Extension-Methods
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text

Friend Class Program
    <STAThread> _
    Shared Sub Main(ByVal args() As String)
        Dim application As SolidEdgeFramework.Application = Nothing
        Dim partDocument As SolidEdgePart.PartDocument = Nothing
        Dim models As SolidEdgePart.Models = Nothing
        Dim model As SolidEdgePart.Model = Nothing
        Dim density As Double = 0
        Dim accuracy As Double = 0
        Dim volume As Double = 0
        Dim area As Double = 0
        Dim mass As Double = 0
        Dim cetnerOfGravity As Array = Array.CreateInstance(GetType(Double), 3)
        Dim centerOfVolumne As Array = Array.CreateInstance(GetType(Double), 3)
        Dim globalMomentsOfInteria As Array = Array.CreateInstance(GetType(Double), 6) ' Ixx, Iyy, Izz, Ixy, Ixz and Iyz
        Dim principalMomentsOfInteria As Array = Array.CreateInstance(GetType(Double), 3) ' Ixx, Iyy and Izz
        Dim principalAxes As Array = Array.CreateInstance(GetType(Double), 9) ' 3 axes x 3 coords
        Dim radiiOfGyration As Array = Array.CreateInstance(GetType(Double), 9) ' 3 axes x 3 coords
        Dim relativeAccuracyAchieved As Double = 0
        Dim status As Integer = 0

        Try
            ' Register with OLE to handle concurrency issues on the current thread.
            SolidEdgeCommunity.OleMessageFilter.Register()

            ' Connect to or start Solid Edge.
            application = SolidEdgeCommunity.SolidEdgeUtils.Connect(True, True)

            ' Get a reference to the active document.
            partDocument = application.GetActiveDocument(Of SolidEdgePart.PartDocument)(False)

            If partDocument IsNot Nothing Then
                density = 1
                accuracy = 0.05

                ' Get a reference to the Models collection.
                models = partDocument.Models

                ' Get a reference to the Model.
                model = models.Item(1)

                ' Compute the physical properties.
                model.ComputePhysicalProperties(Density:= density, Accuracy:= accuracy, Volume:= volume, Area:= area, Mass:= mass, CenterOfGravity:= cetnerOfGravity, CenterOfVolume:= centerOfVolumne, GlobalMomentsOfInteria:= globalMomentsOfInteria, PrincipalMomentsOfInteria:= principalMomentsOfInteria, PrincipalAxes:= principalAxes, RadiiOfGyration:= radiiOfGyration, RelativeAccuracyAchieved:= relativeAccuracyAchieved, Status:= status)

                Console.WriteLine("ComputePhysicalProperties() results:")

                ' Write results to screen.

                Console.WriteLine("Density: {0}", density)
                Console.WriteLine("Accuracy: {0}", accuracy)
                Console.WriteLine("Volume: {0}", volume)
                Console.WriteLine("Area: {0}", area)
                Console.WriteLine("Mass: {0}", mass)

                ' Convert from System.Array to double[].  double[] is easier to work with.
                Dim m() As Double = cetnerOfGravity.OfType(Of Double)().ToArray()

                Console.WriteLine("CenterOfGravity:")
                Console.WriteLine(ControlChars.Tab & "|{0}, {1}, {2}|", m(0), m(1), m(2))

                m = centerOfVolumne.OfType(Of Double)().ToArray()

                Console.WriteLine("CenterOfVolume:")
                Console.WriteLine(ControlChars.Tab & "|{0}, {1}, {2}|", m(0), m(1), m(2))

                m = globalMomentsOfInteria.OfType(Of Double)().ToArray()

                Console.WriteLine("GlobalMomentsOfInteria:")
                Console.WriteLine(ControlChars.Tab & "|{0}, {1}, {2}|", m(0), m(1), m(2))
                Console.WriteLine(ControlChars.Tab & "|{0}, {1}, {2}|", m(3), m(4), m(5))

                m = principalMomentsOfInteria.OfType(Of Double)().ToArray()

                Console.WriteLine("PrincipalMomentsOfInteria:")
                Console.WriteLine(ControlChars.Tab & "|{0}, {1}, {2}|", m(0), m(1), m(2))

                m = principalAxes.OfType(Of Double)().ToArray()

                Console.WriteLine("PrincipalAxes:")
                Console.WriteLine(ControlChars.Tab & "|{0}, {1}, {2}|", m(0), m(1), m(2))
                Console.WriteLine(ControlChars.Tab & "|{0}, {1}, {2}|", m(3), m(4), m(5))
                Console.WriteLine(ControlChars.Tab & "|{0}, {1}, {2}|", m(6), m(7), m(8))

                m = radiiOfGyration.OfType(Of Double)().ToArray()

                Console.WriteLine("RadiiOfGyration:")
                Console.WriteLine(ControlChars.Tab & "|{0}, {1}, {2}|", m(0), m(1), m(2))
                Console.WriteLine(ControlChars.Tab & "|{0}, {1}, {2}|", m(3), m(4), m(5))
                Console.WriteLine(ControlChars.Tab & "|{0}, {1}, {2}|", m(6), m(7), m(8))

                Console.WriteLine("RelativeAccuracyAchieved: {0}", relativeAccuracyAchieved)
                Console.WriteLine("Status: {0}", status)
                Console.WriteLine()

                ' Show physical properties window.
                application.StartCommand(SolidEdgeConstants.PartCommandConstants.PartToolsPhysicalProperties)
            Else
                Throw New System.Exception("No active document.")
            End If
        Catch ex As System.Exception
            Console.WriteLine(ex.Message)
        Finally
            SolidEdgeCommunity.OleMessageFilter.Unregister()
        End Try
    End Sub
End Class


text:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Configuration;
using System.Runtime.CompilerServices;
using System.Threading.Tasks;
using System.Web.OData.Query;
using MongoDB.Bson;
using MongoTodo.DTOs;
using MongoTodo.Models;
using MongoTodo.Repositories;

namespace MongoTodo.Controllers
{
    [RoutePrefix("api/todolist")]
    public class TodoListController : ApiController
    {
        //Usually I would get the repository via dependency injection...but that is not what this code example is about.
        private TodoListRepository GetRepository()
        {
            return new TodoListRepository(ConfigurationManager.ConnectionStrings["todoListDb"].ConnectionString);
        }

        // GET api/<controller>
        public async Task<IEnumerable<TodoListId>> Get(ODataQueryOptions opts)
        {
            var skip = opts.Skip == null ? 0 : opts.Skip.Value;
            var top = opts.Top == null ? 10 : opts.Top.Value;
            var todoLists = await GetRepository().GetAll(skip, top);
            return todoLists.Select(td => new TodoListId
            {
                Name = td.Name,
                Id = td.Id.ToString()
            });
        }

        // GET api/<controller>/5
        public async Task<TodoList> Get(string id)
        {
            var objectId = ObjectId.Parse(id);
            var todoList = await GetRepository().GetById(objectId);
            return todoList;
        }

        // POST api/<controller>
        public async Task<TodoList> Post(TodoList value)
        {
            return await GetRepository().Insert(value);
        }

        // PUT api/<controller>/5
        public async void Put(string id, TodoList value)
        {
            var objectId = ObjectId.Parse(id);
            await GetRepository().Update(objectId, value);
        }

        // DELETE api/<controller>/5
        public async void Delete(string id)
        {
            var objectId = ObjectId.Parse(id);
            await GetRepository().Delete(objectId);
        }

        [Route("savelistitem")]
        public async Task<TodoListItem> SaveListItem(string listId, TodoListItem item)
        {
            var objectId = ObjectId.Parse(listId);
            TodoListItem newItem = await GetRepository().SaveListItem(objectId, item);
            return newItem;
        }
    }
}


text:
push-mob
========

Push-mob is microlib that helps you to make push notifications to majority of popular devices.