#pragma once

// Disable off-by-default warnings
#pragma warning (disable: 4339)  // L4: 'type' : use of undefined type detected in WinRT or CLR meta-data - use of this type may lead to a runtime exception
#pragma warning (disable: 4365)  // L4: 'action' : conversion from 'type_1' to 'type_2', signed/unsigned mismatch
#pragma warning (disable: 4668)  // L4: 'symbol' is not defined as a preprocessor macro, replacing with '0' for 'directives'
#pragma warning (disable: 4820)  // L4: 'bytes' bytes padding added after construct 'member_name'

// On-by-default warnings at -W4 that we want off
#pragma warning (disable: 4127)  // L4: conditional expression is constant                                                 -- Constant conditional expressions are frequently useful in templates.


#pragma warning (push)

	// Warnings that should be disabled temporarily
	#pragma warning (disable: 4365)  // L4: 'action' : conversion from 'type_1' to 'type_2', signed/unsigned mismatch

	// Win32
	#include <windows.h>

	// CLR
	#include <assert.h>
	#include <vcclr.h>

#pragma warning (pop)


// FlowSshCpp
#include "FlowSshCpp.h"