Repository: nfrechette/acl (cpp)

Issue:
Use object space shell distance to detect constant and default sub-tracks instead of threshold
Partially implemented through #373, we need to push further and make sure to remove the constant sub-track thresholds in the compression settings.


Discussion:

Patch:
diff --git a/includes/acl/compression/impl/clip_context.h b/includes/acl/compression/impl/clip_context.h
--- a/includes/acl/compression/impl/clip_context.h
+++ b/includes/acl/compression/impl/clip_context.h
@@ -127,23 +127,64 @@ namespace acl
 			uint32_t			m_bone_index;
 		};
 
+		// Metadata per transform
 		struct transform_metadata
 		{
+			// The transform chain this transform belongs to (points into leaf_transform_chains in owner context)
 			const uint32_t* transform_chain				= nullptr;
+
+			// Parent transform index of this transform, invalid if at the root
 			uint32_t parent_index						= k_invalid_track_index;
+
+			// The precision value from the track description for this transform
 			float precision								= 0.0F;
+
+			// The local space shell distance from the track description for this transform
 			float shell_distance						= 0.0F;
 		};
 
+		// Rigid shell information per transform
+		struct rigid_shell_metadata_t
+		{
+			// Dominant local space shell distance (from transform tip)
+			float local_shell_distance;
+
+			// Parent space shell distance (from transform root)
+			float parent_shell_distance;
+
+			// Precision required on the surface of the rigid shell
+			float precision;
+		};
+
+		// Represents the working space for a clip (raw or lossy)
 		struct clip_context
 		{
+			// List of segments contained (num_segments present)
+			// Raw contexts only have a single segment
 			segment_context* segments					= nullptr;
+
+			// List of clip wide range information for each transform (num_bones present)
 			transform_range* ranges						= nullptr;
+
+			// List of metadata for each transform (num_bones present)
+			// TODO: Same for raw/lossy/additive clip context, can we share?
 			transform_metadata* metadata				= nullptr;
+
+			// List of bit sets for each leaf transform to track transform chains (num_leaf_transforms present)
+			// TODO: Same for raw/lossy/additive clip context, can we share?
 			uint32_t* leaf_transform_chains				= nullptr;
 
+			// List of transform indices sorted by parent first then sibling transforms are sorted by their transform index (num_bones present)
+			// TODO: Same for raw/lossy/additive clip context, can we share?
+			uint32_t* sorted_transforms_parent_first	= nullptr;
+
+			// List of shell metadata for each transform (num_bones present)
+			// Data is aggregate of whole clip
+			// Shared between all clip contexts, not owned
+			const rigid_shell_metadata_t* clip_shell_metadata	= nullptr;
+
 			uint32_t num_segments						= 0;
-			uint32_t num_bones							= 0;
+			uint32_t num_bones							= 0;	// TODO: Rename num_transforms
 			uint32_t num_samples_allocated				= 0;
 			uint32_t num_samples						= 0;
 			float sample_rate							= 0.0F;
@@ -151,6 +192,7 @@ namespace acl
 			float duration								= 0.0F;
 
 			sample_looping_policy looping_policy		= sample_looping_policy::non_looping;
+			additive_clip_format8 additive_format		= additive_clip_format8::none;
 
 			bool are_rotations_normalized				= false;
 			bool are_translations_normalized			= false;
@@ -192,6 +234,8 @@ namespace acl
 			out_clip_context.ranges = nullptr;
 			out_clip_context.metadata = allocate_type_array<transform_metadata>(allocator, num_transforms);
 			out_clip_context.leaf_transform_chains = nullptr;
+			out_clip_context.sorted_transforms_parent_first = allocate_type_array<uint32_t>(allocator, num_transforms);
+			out_clip_context.clip_shell_metadata = nullptr;
 			out_clip_context.num_segments = 1;
 			out_clip_context.num_bones = num_transforms;
 			out_clip_context.num_samples_allocated = num_samples;
@@ -199,6 +243,7 @@ namespace acl
 			out_clip_context.sample_rate = sample_rate;
 			out_clip_context.duration = track_list.get_finite_duration();
 			out_clip_context.looping_policy = looping_policy;
+			out_clip_context.additive_format = additive_format;
 			out_clip_context.are_rotations_normalized = false;
 			out_clip_context.are_translations_normalized = false;
 			out_clip_context.are_scales_normalized = false;
@@ -206,7 +251,6 @@ namespace acl
 			out_clip_context.num_leaf_transforms = 0;
 			out_clip_context.allocator = &allocator;
 
-			bool has_scale = false;
 			bool are_samples_valid = true;
 
 			segment_context& segment = out_clip_context.segments[0];
@@ -230,6 +274,14 @@ namespace acl
 				bone_stream.translations = translation_track_stream(allocator, num_samples, sizeof(rtm::vector4f), sample_rate, vector_format8::vector3f_full);
 				bone_stream.scales = scale_track_stream(allocator, num_samples, sizeof(rtm::vector4f), sample_rate, vector_format8::vector3f_full);
 
+				// Constant and default detection is handled during sub-track compacting
+				bone_stream.is_rotation_constant = false;
+				bone_stream.is_rotation_default = false;
+				bone_stream.is_translation_constant = false;
+				bone_stream.is_translation_default = false;
+				bone_stream.is_scale_constant = false;
+				bone_stream.is_scale_default = false;
+
 				for (uint32_t sample_index = 0; sample_index < num_samples; ++sample_index)
 				{
 					const rtm::qvvf& transform = track[sample_index];
@@ -251,92 +303,16 @@ namespace acl
 					bone_stream.scales.set_raw_sample(sample_index, transform.scale);
 				}
 
-				{
-					const rtm::qvvf& first_transform = num_samples != 0 ? track[0] : desc.default_value;
-
-					rtm::quatf first_rotation;
-					if (num_samples != 0)
-					{
-						first_rotation = track[0].rotation;
-
-						// If we request raw data and we are already normalized, retain the original value
-						// otherwise we normalize for safety
-						if (settings.rotation_format != rotation_format8::quatf_full || !rtm::quat_is_normalized(first_rotation))
-							first_rotation = rtm::quat_normalize(first_rotation);
-					}
-					else
-						first_rotation = desc.default_value.rotation;
-
-					// If we request raw data, use a 0.0 threshold for safety
-					const float constant_rotation_threshold_angle = settings.rotation_format != rotation_format8::quatf_full ? desc.constant_rotation_threshold_angle : 0.0F;
-					const float constant_translation_threshold = settings.translation_format != vector_format8::vector3f_full ? desc.constant_translation_threshold : 0.0F;
-					const float constant_scale_threshold = settings.scale_format != vector_format8::vector3f_full ? desc.constant_scale_threshold : 0.0F;
-
-					bone_stream.is_rotation_constant = num_samples <= 1;
-
-					if (bone_stream.is_rotation_constant)
-					{
-						const rtm::quatf default_bind_rotation = desc.default_value.rotation;
-
-						// If our error threshold is zero we want to test if we are binary exact
-						// This is used by raw clips, we must preserve the original values
-						if (constant_rotation_threshold_angle == 0.0F)
-							bone_stream.is_rotation_default = rtm::quat_are_equal(first_rotation, default_bind_rotation);
-						else
-							bone_stream.is_rotation_default = rtm::quat_near_identity(rtm::quat_normalize(rtm::quat_mul(first_rotation, rtm::quat_conjugate(default_bind_rotation))), constant_rotation_threshold_angle);
-					}
-					else
-					{
-						bone_stream.is_rotation_default = false;
-					}
-
-					bone_stream.is_translation_constant = num_samples <= 1;
-
-					if (bone_stream.is_translation_constant)
-					{
-						const rtm::vector4f default_bind_translation = desc.default_value.translation;
-
-						// If our error threshold is zero we want to test if we are binary exact
-						// This is used by raw clips, we must preserve the original values
-						if (constant_translation_threshold == 0.0F)
-							bone_stream.is_translation_default = rtm::vector_all_equal3(first_transform.translation, default_bind_translation);
-						else
-							bone_stream.is_translation_default = rtm::vector_all_near_equal3(first_transform.translation, default_bind_translation, constant_translation_threshold);
-					}
-					else
-					{
-						bone_stream.is_translation_default = false;
-					}
-
-					bone_stream.is_scale_constant = num_samples <= 1;
-
-					if (bone_stream.is_scale_constant)
-					{
-						const rtm::vector4f default_bind_scale = desc.default_value.scale;
-
-						// If our error threshold is zero we want to test if we are binary exact
-						// This is used by raw clips, we must preserve the original values
-						if (constant_scale_threshold == 0.0F)
-							bone_stream.is_scale_default = rtm::vector_all_equal3(first_transform.scale, default_bind_scale);
-						else
-							bone_stream.is_scale_default = rtm::vector_all_near_equal3(first_transform.scale, default_bind_scale, constant_scale_threshold);
-					}
-					else
-					{
-						bone_stream.is_scale_default = false;
-					}
-				}
-
-				has_scale |= !bone_stream.is_scale_default;
-
 				transform_metadata& metadata = out_clip_context.metadata[transform_index];
 				metadata.transform_chain = nullptr;
 				metadata.parent_index = desc.parent_index;
 				metadata.precision = desc.precision;
 				metadata.shell_distance = desc.shell_distance;
+
+				out_clip_context.sorted_transforms_parent_first[transform_index] = transform_index;
 			}
 
-			out_clip_context.has_scale = has_scale;
+			out_clip_context.has_scale = true;	// Scale detection is handled during sub-track compacting
 			out_clip_context.decomp_touched_bytes = 0;
 			out_clip_context.decomp_touched_cache_lines = 0;
 
@@ -429,6 +405,25 @@ namespace acl
 				ACL_ASSERT(num_root_bones > 0, "No root bone found. The root bones must have a parent index = 0xFFFF");
 				ACL_ASSERT(leaf_index == num_leaf_transforms, "Invalid number of leaf bone found");
 				deallocate_type_array(allocator, is_leaf_bitset, bitset_size);
+
+				// We sort our transform indices by parent first
+				// If two transforms have the same parent index, we sort them by their transform index
+				auto sort_predicate = [&out_clip_context](const uint32_t& lhs_transform_index, const uint32_t& rhs_transform_index)
+				{
+					const uint32_t lhs_parent_index = out_clip_context.metadata[lhs_transform_index].parent_index;
+					const uint32_t rhs_parent_index = out_clip_context.metadata[rhs_transform_index].parent_index;
+
+					// If the transforms don't have the same parent, sort by the parent index
+					// We add 1 to parent indices to cause the invalid index to wrap around to 0
+					// since parents come first, they'll have the lowest value
+					if (lhs_parent_index != rhs_parent_index)
+						return (lhs_parent_index + 1) < (rhs_parent_index + 1);
+
+					// Both transforms have the same parent, sort by their index
+					return lhs_transform_index < rhs_transform_index;
+				};
+
+				std::sort(out_clip_context.sorted_transforms_parent_first, out_clip_context.sorted_transforms_parent_first + num_transforms, sort_predicate);
 			}
 
 			return are_samples_valid;
@@ -450,6 +445,8 @@ namespace acl
 
 			bitset_description bone_bitset_desc = bitset_description::make_from_num_bits(context.num_bones);
 			deallocate_type_array(allocator, context.leaf_transform_chains, size_t(context.num_leaf_transforms) * bone_bitset_desc.get_size());
+
+			deallocate_type_array(allocator, context.sorted_transforms_parent_first, context.num_bones);
 		}
 
 		constexpr bool segment_context_has_scale(const segment_context& segment) { return segment.clip->has_scale; }
diff --git a/includes/acl/compression/impl/compact_constant_streams.h b/includes/acl/compression/impl/compact_constant_streams.h
--- a/includes/acl/compression/impl/compact_constant_streams.h
+++ b/includes/acl/compression/impl/compact_constant_streams.h
@@ -30,12 +30,29 @@
 #include "acl/core/impl/compiler_utils.h"
 #include "acl/core/error.h"
 #include "acl/compression/impl/clip_context.h"
+#include "acl/compression/impl/rigid_shell_utils.h"
+#include "acl/compression/transform_error_metrics.h"
 
-#include <rtm/quatf.h>
-#include <rtm/vector4f.h>
+#include <rtm/qvvf.h>
 
 #include <cstdint>
 
+//////////////////////////////////////////////////////////////////////////
+// Apply error correction after constant and default tracks are processed.
+// Notes:
+//     - original code was adapted and cleaned up a bit, but largely as contributed
+//     - zero scale isn't properly handled and needs to be guarded against
+//     - regression testing over large data sets shows that it is sometimes a win, sometimes not
+//     - overall, it seems to be a net loss over the memory footprint and quality does not
+//       measurably improve to justify the loss
+//     - I tried various tweaks and failed to make the code a consistent win, see https://github.com/nfrechette/acl/issues/353
+
+//#define ACL_IMPL_ENABLE_CONSTANT_ERROR_CORRECTION
+
+#ifdef ACL_IMPL_ENABLE_CONSTANT_ERROR_CORRECTION
+#include "acl/compression/impl/normalize_streams.h"
+#endif
+
 ACL_IMPL_FILE_PRAGMA_PUSH
 
 namespace acl
@@ -44,216 +61,584 @@ namespace acl
 
 	namespace acl_impl
 	{
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-		inline bool is_rotation_track_constant(const rotation_track_stream& rotations, float threshold_angle, rtm::quatf_arg0 ref_rotation)
-#else
-		inline bool is_rotation_track_constant(const rotation_track_stream& rotations, float threshold_angle)
-#endif
+		// To detect if a sub-track is constant, we grab the first sample as our reference.
+		// We then measure the object space error using the qvv error metric and our
+		// dominant shell distance. If the error remains within our dominant precision
+		// then the sub-track is constant. We perform the same test using the default
+		// sub-track value to determine if it is a default sub-track.
+
+		inline bool RTM_SIMD_CALL are_rotations_constant(const transform_streams& raw_transform_stream, rtm::quatf_arg0 reference, const rigid_shell_metadata_t& shell)
 		{
+			const uint32_t num_samples = raw_transform_stream.rotations.get_num_samples();
 
-#if !defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			// Calculating the average rotation and comparing every rotation in the track to it
-			// to determine if we are within the threshold seems overkill. We can't use the min/max for the range
-			// either because neither of those represents a valid rotation. Instead we grab
-			// the first rotation, and compare everything else to it.
-#endif
+			qvvf_transform_error_metric::calculate_error_args error_metric_args;
+			error_metric_args.construct_sphere_shell(shell.local_shell_distance);
+
+			const qvvf_transform_error_metric error_metric;
+
+			const rtm::scalarf precision = rtm::scalar_set(shell.precision);
 
-			auto sample_to_quat = [](const rotation_track_stream& track, uint32_t sample_index)
+			for (uint32_t sample_index = 0; sample_index < num_samples; ++sample_index)
 			{
-				const rtm::vector4f rotation = track.get_raw_sample<rtm::vector4f>(sample_index);
+				const rtm::quatf raw_rotation = raw_transform_stream.rotations.get_sample_clamped(sample_index);
+				const rtm::vector4f raw_translation = raw_transform_stream.translations.get_sample_clamped(sample_index);
+				const rtm::vector4f raw_scale = raw_transform_stream.scales.get_sample_clamped(sample_index);
 
-				switch (track.get_rotation_format())
-				{
-				case rotation_format8::quatf_full:
-					return rtm::vector_to_quat(rotation);
-				case rotation_format8::quatf_drop_w_full:
-				case rotation_format8::quatf_drop_w_variable:
-					// quat_from_positive_w might not yield an accurate quaternion because the square-root instruction
-					// isn't very accurate on small inputs, we need to normalize
-					return rtm::quat_normalize(rtm::quat_from_positive_w(rotation));
-				default:
-					ACL_ASSERT(false, "Invalid or unsupported rotation format: %s", get_rotation_format_name(track.get_rotation_format()));
-					return rtm::vector_to_quat(rotation);
-				}
-			};
+				const rtm::qvvf raw_transform = rtm::qvv_set(raw_rotation, raw_translation, raw_scale);
+				const rtm::qvvf lossy_transform = rtm::qvv_set(reference, raw_translation, raw_scale);
 
-			const uint32_t num_samples = rotations.get_num_samples();
-			if (num_samples <= 1)
-				return true;
+				error_metric_args.transform0 = &raw_transform;
+				error_metric_args.transform1 = &lossy_transform;
 
-#if !defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			const rtm::quatf ref_rotation = sample_to_quat(rotations, 0);
-#endif
+				const rtm::scalarf vtx_error = error_metric.calculate_error(error_metric_args);
 
-			const rtm::quatf inv_ref_rotation = rtm::quat_conjugate(ref_rotation);
+				// If our error exceeds the desired precision, we are not constant
+				if (rtm::scalar_greater_than(vtx_error, precision))
+					return false;
+			}
 
-			// If our error threshold is zero we want to test if we are binary exact
+			// All samples were tested against the reference value and the error remained within tolerance
+			return true;
+		}
+
+		inline bool are_rotations_constant(const compression_settings& settings, const clip_context& lossy_clip_context, const rigid_shell_metadata_t* shell_metadata, uint32_t transform_index)
+		{
+			if (lossy_clip_context.num_samples == 0)
+				return true;	// We are constant if we have no samples
+
+			// When we are using full precision, we are only constant if range.min == range.max, meaning
+			// we have a single unique and repeating sample
+			// We want to test if we are binary exact
 			// This is used by raw clips, we must preserve the original values
-			const bool is_threshold_zero = threshold_angle == 0.0F;
+			if (settings.rotation_format == rotation_format8::quatf_full)
+				return lossy_clip_context.ranges[transform_index].rotation.is_constant(0.0F);
+
+			const segment_context& segment = lossy_clip_context.segments[0];
+			const transform_streams& raw_transform_stream = segment.bone_streams[transform_index];
+
+			// Otherwise check every sample to make sure we fall within the desired tolerance
+			return are_rotations_constant(raw_transform_stream, raw_transform_stream.rotations.get_sample(0), shell_metadata[transform_index]);
+		}
+
+		inline bool are_rotations_default(const compression_settings& settings, const clip_context& lossy_clip_context, const rigid_shell_metadata_t* shell_metadata, const track_desc_transformf& desc, uint32_t transform_index)
+		{
+			if (lossy_clip_context.num_samples == 0)
+				return true;	// We are default if we have no samples
+
+			const rtm::quatf default_bind_rotation = desc.default_value.rotation;
+
+			const segment_context& segment = lossy_clip_context.segments[0];
+			const transform_streams& raw_transform_stream = segment.bone_streams[transform_index];
+
+			// When we are using full precision, we are only default if (sample 0 == default value), meaning
+			// we have a single unique and repeating default sample
+			// We want to test if we are binary exact
+			// This is used by raw clips, we must preserve the original values
+			if (settings.rotation_format == rotation_format8::quatf_full)
+			{
+				const rtm::vector4f rotation = raw_transform_stream.rotations.get_raw_sample<rtm::vector4f>(0);
+				return rtm::vector_all_equal(rotation, rtm::quat_to_vector(default_bind_rotation));
+			}
+
+			// Otherwise check every sample to make sure we fall within the desired tolerance
+			return are_rotations_constant(raw_transform_stream, default_bind_rotation, shell_metadata[transform_index]);
+		}
+
+		inline bool RTM_SIMD_CALL are_translations_constant(const transform_streams& raw_transform_stream, rtm::vector4f_arg0 reference, const rigid_shell_metadata_t& shell)
+		{
+			const uint32_t num_samples = raw_transform_stream.translations.get_num_samples();
+
+			qvvf_transform_error_metric::calculate_error_args error_metric_args;
+			error_metric_args.construct_sphere_shell(shell.local_shell_distance);
+
+			const qvvf_transform_error_metric error_metric;
+
+			const rtm::scalarf precision = rtm::scalar_set(shell.precision);
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
 			for (uint32_t sample_index = 0; sample_index < num_samples; ++sample_index)
-#else
-			for (uint32_t sample_index = 1; sample_index < num_samples; ++sample_index)
-#endif
+			{
+				const rtm::quatf raw_rotation = raw_transform_stream.rotations.get_sample_clamped(sample_index);
+				const rtm::vector4f raw_translation = raw_transform_stream.translations.get_sample_clamped(sample_index);
+				const rtm::vector4f raw_scale = raw_transform_stream.scales.get_sample_clamped(sample_index);
+
+				const rtm::qvvf raw_transform = rtm::qvv_set(raw_rotation, raw_translation, raw_scale);
+				const rtm::qvvf lossy_transform = rtm::qvv_set(raw_rotation, reference, raw_scale);
+
+				error_metric_args.transform0 = &raw_transform;
+				error_metric_args.transform1 = &lossy_transform;
+
+				const rtm::scalarf vtx_error = error_metric.calculate_error(error_metric_args);
+
+				// If our error exceeds the desired precision, we are not constant
+				if (rtm::scalar_greater_than(vtx_error, precision))
+					return false;
+			}
+
+			// All samples were tested against the reference value and the error remained within tolerance
+			return true;
+		}
+
+		inline bool are_translations_constant(const compression_settings& settings, const clip_context& lossy_clip_context, const rigid_shell_metadata_t* shell_metadata, uint32_t transform_index)
+		{
+			if (lossy_clip_context.num_samples == 0)
+				return true;	// We are constant if we have no samples
+
+			// When we are using full precision, we are only constant if range.min == range.max, meaning
+			// we have a single unique and repeating sample
+			// We want to test if we are binary exact
+			// This is used by raw clips, we must preserve the original values
+			if (settings.translation_format == vector_format8::vector3f_full)
+				return lossy_clip_context.ranges[transform_index].translation.is_constant(0.0F);
+
+			const segment_context& segment = lossy_clip_context.segments[0];
+			const transform_streams& raw_transform_stream = segment.bone_streams[transform_index];
 
+			// Otherwise check every sample to make sure we fall within the desired tolerance
+			return are_translations_constant(raw_transform_stream, raw_transform_stream.translations.get_sample(0), shell_metadata[transform_index]);
+		}
+
+		inline bool are_translations_default(const compression_settings& settings, const clip_context& lossy_clip_context, const rigid_shell_metadata_t* shell_metadata, const track_desc_transformf& desc, uint32_t transform_index)
+		{
+			if (lossy_clip_context.num_samples == 0)
+				return true;	// We are default if we have no samples
+
+			const rtm::vector4f default_bind_translation = desc.default_value.translation;
+
+			const segment_context& segment = lossy_clip_context.segments[0];
+			const transform_streams& raw_transform_stream = segment.bone_streams[transform_index];
+
+			// When we are using full precision, we are only default if (sample 0 == default value), meaning
+			// we have a single unique and repeating default sample
+			// We want to test if we are binary exact
+			// This is used by raw clips, we must preserve the original values
+			if (settings.translation_format == vector_format8::vector3f_full)
 			{
-				const rtm::quatf rotation = sample_to_quat(rotations, sample_index);
+				const rtm::vector4f translation = raw_transform_stream.translations.get_raw_sample<rtm::vector4f>(0);
+				return rtm::vector_all_equal(translation, default_bind_translation);
+			}
 
-				if (is_threshold_zero)
-				{
-					if (!rtm::quat_are_equal(rotation, ref_rotation))
-						return false;
-				}
-				else
-				{
-					const rtm::quatf delta = rtm::quat_normalize(rtm::quat_mul(inv_ref_rotation, rotation));
-					if (!rtm::quat_near_identity(delta, threshold_angle))
-						return false;
-				}
+			// Otherwise check every sample to make sure we fall within the desired tolerance
+			return are_translations_constant(raw_transform_stream, default_bind_translation, shell_metadata[transform_index]);
+		}
+
+		inline bool RTM_SIMD_CALL are_scales_constant(const transform_streams& raw_transform_stream, rtm::vector4f_arg0 reference, const rigid_shell_metadata_t& shell)
+		{
+			const uint32_t num_samples = raw_transform_stream.scales.get_num_samples();
+
+			qvvf_transform_error_metric::calculate_error_args error_metric_args;
+			error_metric_args.construct_sphere_shell(shell.local_shell_distance);
+
+			const qvvf_transform_error_metric error_metric;
+
+			const rtm::scalarf precision = rtm::scalar_set(shell.precision);
+
+			for (uint32_t sample_index = 0; sample_index < num_samples; ++sample_index)
+			{
+				const rtm::quatf raw_rotation = raw_transform_stream.rotations.get_sample_clamped(sample_index);
+				const rtm::vector4f raw_translation = raw_transform_stream.translations.get_sample_clamped(sample_index);
+				const rtm::vector4f raw_scale = raw_transform_stream.scales.get_sample_clamped(sample_index);
+
+				const rtm::qvvf raw_transform = rtm::qvv_set(raw_rotation, raw_translation, raw_scale);
+				const rtm::qvvf lossy_transform = rtm::qvv_set(raw_rotation, raw_translation, reference);
+
+				error_metric_args.transform0 = &raw_transform;
+				error_metric_args.transform1 = &lossy_transform;
+
+				const rtm::scalarf vtx_error = error_metric.calculate_error(error_metric_args);
+
+				// If our error exceeds the desired precision, we are not constant
+				if (rtm::scalar_greater_than(vtx_error, precision))
+					return false;
 			}
 
+			// All samples were tested against the reference value and the error remained within tolerance
 			return true;
 		}
 
-		inline void compact_constant_streams(iallocator& allocator, clip_context& context, const track_array_qvvf& track_list, const compression_settings& settings)
+		inline bool are_scales_constant(const compression_settings& settings, const clip_context& lossy_clip_context, const rigid_shell_metadata_t* shell_metadata, uint32_t transform_index)
+		{
+			if (lossy_clip_context.num_samples == 0)
+				return true;	// We are constant if we have no samples
+
+			if (!lossy_clip_context.has_scale)
+				return true;	// We are constant if we have no scale
+
+			// When we are using full precision, we are only constant if range.min == range.max, meaning
+			// we have a single unique and repeating sample
+			// We want to test if we are binary exact
+			// This is used by raw clips, we must preserve the original values
+			if (settings.scale_format == vector_format8::vector3f_full)
+				return lossy_clip_context.ranges[transform_index].scale.is_constant(0.0F);
+
+			const segment_context& segment = lossy_clip_context.segments[0];
+			const transform_streams& raw_transform_stream = segment.bone_streams[transform_index];
+
+			// Otherwise check every sample to make sure we fall within the desired tolerance
+			return are_scales_constant(raw_transform_stream, raw_transform_stream.scales.get_sample(0), shell_metadata[transform_index]);
+		}
+
+		inline bool are_scales_default(const compression_settings& settings, const clip_context& lossy_clip_context, const rigid_shell_metadata_t* shell_metadata, const track_desc_transformf& desc, uint32_t transform_index)
+		{
+			if (lossy_clip_context.num_samples == 0)
+				return true;	// We are default if we have no samples
+
+			if (!lossy_clip_context.has_scale)
+				return true;	// We are default if we have no scale
+
+			const rtm::vector4f default_bind_scale = desc.default_value.scale;
+
+			const segment_context& segment = lossy_clip_context.segments[0];
+			const transform_streams& raw_transform_stream = segment.bone_streams[transform_index];
+
+			// When we are using full precision, we are only default if (sample 0 == default value), meaning
+			// we have a single unique and repeating default sample
+			// We want to test if we are binary exact
+			// This is used by raw clips, we must preserve the original values
+			if (settings.scale_format == vector_format8::vector3f_full)
+			{
+				const rtm::vector4f scale = raw_transform_stream.scales.get_raw_sample<rtm::vector4f>(0);
+				return rtm::vector_all_equal(scale, default_bind_scale);
+			}
+
+			// Otherwise check every sample to make sure we fall within the desired tolerance
+			return are_scales_constant(raw_transform_stream, default_bind_scale, shell_metadata[transform_index]);
+		}
+
+		// Compacts constant sub-tracks
+		// A sub-track is constant if every sample can be replaced by a single unique sample without exceeding
+		// our error threshold.
+		// By default, constant sub-tracks will retain the first sample.
+		// A constant sub-track is a default sub-track if its unique sample can be replaced by the default value
+		// without exceed our error threshold.
+		inline void compact_constant_streams(iallocator& allocator, clip_context& context, clip_context& raw_clip_context, const track_array_qvvf& track_list, const compression_settings& settings)
 		{
 			ACL_ASSERT(context.num_segments == 1, "context must contain a single segment!");
+			ACL_ASSERT(raw_clip_context.num_segments == 1, "context must contain a single segment!");
+
 			segment_context& segment = context.segments[0];
 
-			const uint32_t num_bones = context.num_bones;
+			// We also update the raw data to match in case the values differ.
+			// This ensures that algorithms can reach the raw data when attempting to optimize towards it.
+			// This modifies the raw data copy, not the original data that lives in the raw track_array.
+			// As such, it is used internally when optimizing but not once compression is done to measure
+			// the final error. This can lead to a small divergence where ACL sees a better error than
+			// a user might but in practice this is generally not observable.
+			segment_context& raw_segment = raw_clip_context.segments[0];
+
+			const uint32_t num_transforms = context.num_bones;
 			const uint32_t num_samples = context.num_samples;
+			const uint32_t raw_num_samples = raw_clip_context.num_samples;
 
 			uint32_t num_default_bone_scales = 0;
 
-			// When a stream is constant, we only keep the first sample
-			for (uint32_t bone_index = 0; bone_index < num_bones; ++bone_index)
+#ifdef ACL_IMPL_ENABLE_CONSTANT_ERROR_CORRECTION
+			bool has_constant_bone_rotations = false;
+			bool has_constant_bone_translations = false;
+			bool has_constant_bone_scales = false;
+#endif
+
+			const rigid_shell_metadata_t* shell_metadata = raw_clip_context.clip_shell_metadata;
+
+			// Iterate in any order, doesn't matter
+			for (uint32_t transform_index = 0; transform_index < num_transforms; ++transform_index)
 			{
-				const track_desc_transformf& desc = track_list[bone_index].get_description();
+				const track_desc_transformf& desc = track_list[transform_index].get_description();
+
+				transform_streams& bone_stream = segment.bone_streams[transform_index];
+				transform_streams& raw_bone_stream = raw_segment.bone_streams[transform_index];
+
+				transform_range& bone_range = context.ranges[transform_index];
 
-				transform_streams& bone_stream = segment.bone_streams[bone_index];
-				transform_range& bone_range = context.ranges[bone_index];
+				ACL_ASSERT(bone_stream.rotations.get_num_samples() == num_samples, "Rotation sample mismatch!");
+				ACL_ASSERT(bone_stream.translations.get_num_samples() == num_samples, "Translation sample mismatch!");
+				ACL_ASSERT(bone_stream.scales.get_num_samples() == num_samples, "Scale sample mismatch!");
 
 				// We expect all our samples to have the same width of sizeof(rtm::vector4f)
 				ACL_ASSERT(bone_stream.rotations.get_sample_size() == sizeof(rtm::vector4f), "Unexpected rotation sample size. %u != %zu", bone_stream.rotations.get_sample_size(), sizeof(rtm::vector4f));
 				ACL_ASSERT(bone_stream.translations.get_sample_size() == sizeof(rtm::vector4f), "Unexpected translation sample size. %u != %zu", bone_stream.translations.get_sample_size(), sizeof(rtm::vector4f));
 				ACL_ASSERT(bone_stream.scales.get_sample_size() == sizeof(rtm::vector4f), "Unexpected scale sample size. %u != %zu", bone_stream.scales.get_sample_size(), sizeof(rtm::vector4f));
 
-				// If we request raw data, use a 0.0 threshold for safety
-				const float constant_rotation_threshold_angle = settings.rotation_format != rotation_format8::quatf_full ? desc.constant_rotation_threshold_angle : 0.0F;
-				const float constant_translation_threshold = settings.translation_format != vector_format8::vector3f_full ? desc.constant_translation_threshold : 0.0F;
-				const float constant_scale_threshold = settings.scale_format != vector_format8::vector3f_full ? desc.constant_scale_threshold : 0.0F;
-
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				if (is_rotation_track_constant(bone_stream.rotations, constant_rotation_threshold_angle, rtm::vector_to_quat(bone_range.rotation.get_weighted_average())))
-#else
-				if (is_rotation_track_constant(bone_stream.rotations, constant_rotation_threshold_angle))
-#endif
+				if (are_rotations_constant(settings, context, shell_metadata, transform_index))
 				{
 					rotation_track_stream constant_stream(allocator, 1, bone_stream.rotations.get_sample_size(), bone_stream.rotations.get_sample_rate(), bone_stream.rotations.get_rotation_format());
 
 					const rtm::vector4f default_bind_rotation = rtm::quat_to_vector(desc.default_value.rotation);
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-					rtm::vector4f rotation = num_samples != 0 ? bone_range.rotation.get_weighted_average() : default_bind_rotation;
-#else
 					rtm::vector4f rotation = num_samples != 0 ? bone_stream.rotations.get_raw_sample<rtm::vector4f>(0) : default_bind_rotation;
-#endif
 
 					bone_stream.is_rotation_constant = true;
 
-					// If our error threshold is zero we want to test if we are binary exact
-					// This is used by raw clips, we must preserve the original values
-					if (constant_rotation_threshold_angle == 0.0F)
-						bone_stream.is_rotation_default = rtm::vector_all_equal(rotation, default_bind_rotation);
-					else
-						bone_stream.is_rotation_default = rtm::quat_near_identity(rtm::quat_normalize(rtm::quat_mul(rtm::vector_to_quat(rotation), rtm::quat_conjugate(rtm::vector_to_quat(default_bind_rotation)))), constant_rotation_threshold_angle);
-
-					if (bone_stream.is_rotation_default)
+					if (are_rotations_default(settings, context, shell_metadata, desc, transform_index))
+					{
+						bone_stream.is_rotation_default = true;
 						rotation = default_bind_rotation;
+					}
 
 					constant_stream.set_raw_sample(0, rotation);
 					bone_stream.rotations = std::move(constant_stream);
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-					bone_range.rotation = track_stream_range::from_min_extent(rotation, rtm::vector_zero(), rotation);
-#else
 					bone_range.rotation = track_stream_range::from_min_extent(rotation, rtm::vector_zero());
+
+					// We also update the raw data to match in case the values differ
+					for (uint32_t sample_index = 0; sample_index < raw_num_samples; ++sample_index)
+						raw_bone_stream.rotations.set_raw_sample(sample_index, rotation);
+
+#ifdef ACL_IMPL_ENABLE_CONSTANT_ERROR_CORRECTION
+					has_constant_bone_rotations = true;
 #endif
 				}
 
-				if (bone_range.translation.is_constant(constant_translation_threshold))
+				if (are_translations_constant(settings, context, shell_metadata, transform_index))
 				{
 					translation_track_stream constant_stream(allocator, 1, bone_stream.translations.get_sample_size(), bone_stream.translations.get_sample_rate(), bone_stream.translations.get_vector_format());
 
 					const rtm::vector4f default_bind_translation = desc.default_value.translation;
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-					rtm::vector4f translation = num_samples != 0 ? bone_range.translation.get_weighted_average() : default_bind_translation;
-#else
 					rtm::vector4f translation = num_samples != 0 ? bone_stream.translations.get_raw_sample<rtm::vector4f>(0) : default_bind_translation;
-#endif
 
 					bone_stream.is_translation_constant = true;
 
-					// If our error threshold is zero we want to test if we are binary exact
-					// This is used by raw clips, we must preserve the original values
-					if (constant_translation_threshold == 0.0F)
-						bone_stream.is_translation_default = rtm::vector_all_equal3(translation, default_bind_translation);
-					else
-						bone_stream.is_translation_default = rtm::vector_all_near_equal3(translation, default_bind_translation, constant_translation_threshold);
-
-					if (bone_stream.is_translation_default)
+					if (are_translations_default(settings, context, shell_metadata, desc, transform_index))
+					{
+						bone_stream.is_translation_default = true;
 						translation = default_bind_translation;
+					}
 
 					constant_stream.set_raw_sample(0, translation);
 					bone_stream.translations = std::move(constant_stream);
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-					bone_range.translation = track_stream_range::from_min_extent(translation, rtm::vector_zero(), translation);
-#else
 					bone_range.translation = track_stream_range::from_min_extent(translation, rtm::vector_zero());
+
+					// We also update the raw data to match in case the values differ
+					for (uint32_t sample_index = 0; sample_index < raw_num_samples; ++sample_index)
+						raw_bone_stream.translations.set_raw_sample(sample_index, translation);
+
+#ifdef ACL_IMPL_ENABLE_CONSTANT_ERROR_CORRECTION
+					has_constant_bone_translations = true;
 #endif
 				}
 
-				if (bone_range.scale.is_constant(constant_scale_threshold))
+				if (are_scales_constant(settings, context, shell_metadata, transform_index))
 				{
 					scale_track_stream constant_stream(allocator, 1, bone_stream.scales.get_sample_size(), bone_stream.scales.get_sample_rate(), bone_stream.scales.get_vector_format());
 
 					const rtm::vector4f default_bind_scale = desc.default_value.scale;
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-					rtm::vector4f scale = (context.has_scale && (num_samples != 0)) ? bone_range.scale.get_weighted_average() : default_bind_scale;
-#else
 					rtm::vector4f scale = (context.has_scale && num_samples != 0) ? bone_stream.scales.get_raw_sample<rtm::vector4f>(0) : default_bind_scale;
-#endif
 
 					bone_stream.is_scale_constant = true;
 
-					// If our error threshold is zero we want to test if we are binary exact
-					// This is used by raw clips, we must preserve the original values
-					if (constant_scale_threshold == 0.0F)
-						bone_stream.is_scale_default = rtm::vector_all_equal3(scale, default_bind_scale);
-					else
-						bone_stream.is_scale_default = rtm::vector_all_near_equal3(scale, default_bind_scale, constant_scale_threshold);
-
-					if (bone_stream.is_scale_default)
+					if (are_scales_default(settings, context, shell_metadata, desc, transform_index))
+					{
+						bone_stream.is_scale_default = true;
 						scale = default_bind_scale;
+					}
 
 					constant_stream.set_raw_sample(0, scale);
 					bone_stream.scales = std::move(constant_stream);
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-					bone_range.scale = track_stream_range::from_min_extent(scale, rtm::vector_zero(), scale);
-#else
 					bone_range.scale = track_stream_range::from_min_extent(scale, rtm::vector_zero());
-#endif
 
 					num_default_bone_scales += bone_stream.is_scale_default ? 1 : 0;
+
+					// We also update the raw data to match in case the values differ
+					for (uint32_t sample_index = 0; sample_index < raw_num_samples; ++sample_index)
+						raw_bone_stream.scales.set_raw_sample(sample_index, scale);
+
+#ifdef ACL_IMPL_ENABLE_CONSTANT_ERROR_CORRECTION
+					has_constant_bone_scales = true;
+#endif
 				}
 			}
 
-			context.has_scale = num_default_bone_scales != num_bones;
+			const bool has_scale = num_default_bone_scales != num_transforms;
+			context.has_scale = has_scale;
+
+#ifdef ACL_IMPL_ENABLE_CONSTANT_ERROR_CORRECTION
+
+			// Only perform error compensation if our format isn't raw
+			const bool is_raw = settings.rotation_format == rotation_format8::quatf_full || settings.translation_format == vector_format8::vector3f_full || settings.scale_format == vector_format8::vector3f_full;
+
+			// Only perform error compensation if we are lossy due to constant sub-tracks
+			// In practice, even if we have no constant sub-tracks, we could be lossy if our rotations drop W
+			const bool is_lossy = has_constant_bone_rotations || has_constant_bone_translations || (has_scale && has_constant_bone_scales);
+
+			if (!context.has_additive_base && !is_raw && is_lossy)
+			{
+				// Apply error correction after constant and default tracks are processed.
+				// We use object space of the original data as ground truth, and only deviate for 2 reasons, and as briefly as possible.
+				//    -Replace an original local value with a new constant value.
+				//    -Correct for the manipulation of an original local value by an ancestor ASAP.
+				// We aren't modifying raw data here. We're modifying the raw channels generated from the raw data.
+				// The raw data is left alone, and is still used at the end of the process to do regression testing.
+
+				struct dirty_state_t
+				{
+					bool rotation = false;
+					bool translation = false;
+					bool scale = false;
+				};
+
+				dirty_state_t any_constant_changed;
+				dirty_state_t* dirty_states = allocate_type_array<dirty_state_t>(allocator, num_transforms);
+				rtm::qvvf* original_object_pose = allocate_type_array<rtm::qvvf>(allocator, num_transforms);
+				rtm::qvvf* adjusted_object_pose = allocate_type_array<rtm::qvvf>(allocator, num_transforms);
+
+				for (uint32_t sample_index = 0; sample_index < num_samples; ++sample_index)
+				{
+					// Iterate over parent transforms first
+					for (uint32_t bone_index : make_iterator(context.sorted_transforms_parent_first, num_transforms))
+					{
+						rtm::qvvf& original_object_transform = original_object_pose[bone_index];
+
+						const transform_range& bone_range = context.ranges[bone_index];
+						transform_streams& bone_stream = segment.bone_streams[bone_index];
+						transform_streams& raw_bone_stream = raw_segment.bone_streams[bone_index];
+
+						const track_desc_transformf& desc = track_list[bone_index].get_description();
+						const uint32_t parent_bone_index = desc.parent_index;
+						const rtm::qvvf original_local_transform = rtm::qvv_set(
+							raw_bone_stream.rotations.get_raw_sample<rtm::quatf>(sample_index),
+							raw_bone_stream.translations.get_raw_sample<rtm::vector4f>(sample_index),
+							raw_bone_stream.scales.get_raw_sample<rtm::vector4f>(sample_index));
+
+						if (parent_bone_index == k_invalid_track_index)
+							original_object_transform = original_local_transform;	// Just copy the root as-is, it has no parent and thus local and object space transforms are equal
+						else if (!has_scale)
+							original_object_transform = rtm::qvv_normalize(rtm::qvv_mul_no_scale(original_local_transform, original_object_pose[parent_bone_index]));
+						else
+							original_object_transform = rtm::qvv_normalize(rtm::qvv_mul(original_local_transform, original_object_pose[parent_bone_index]));
+
+						rtm::qvvf adjusted_local_transform = original_local_transform;
+
+						dirty_state_t& constant_changed = dirty_states[bone_index];
+						constant_changed.rotation = false;
+						constant_changed.translation = false;
+						constant_changed.scale = false;
+
+						if (bone_stream.is_rotation_constant)
+						{
+							const rtm::quatf constant_rotation = rtm::vector_to_quat(bone_range.rotation.get_min());
+							if (!rtm::vector_all_near_equal(rtm::quat_to_vector(adjusted_local_transform.rotation), rtm::quat_to_vector(constant_rotation), 0.0F))
+							{
+								any_constant_changed.rotation = true;
+								constant_changed.rotation = true;
+								adjusted_local_transform.rotation = constant_rotation;
+								raw_bone_stream.rotations.set_raw_sample(sample_index, constant_rotation);
+							}
+							ACL_ASSERT(bone_stream.rotations.get_num_samples() == 1, "Constant rotation stream mismatch!");
+							ACL_ASSERT(rtm::vector_all_near_equal(bone_stream.rotations.get_raw_sample<rtm::vector4f>(0), rtm::quat_to_vector(constant_rotation), 0.0F), "Constant rotation mismatch!");
+						}
+
+						if (bone_stream.is_translation_constant)
+						{
+							const rtm::vector4f constant_translation = bone_range.translation.get_min();
+							if (!rtm::vector_all_near_equal3(adjusted_local_transform.translation, constant_translation, 0.0F))
+							{
+								any_constant_changed.translation = true;
+								constant_changed.translation = true;
+								adjusted_local_transform.translation = constant_translation;
+								raw_bone_stream.translations.set_raw_sample(sample_index, constant_translation);
+							}
+							ACL_ASSERT(bone_stream.translations.get_num_samples() == 1, "Constant translation stream mismatch!");
+							ACL_ASSERT(rtm::vector_all_near_equal3(bone_stream.translations.get_raw_sample<rtm::vector4f>(0), constant_translation, 0.0F), "Constant translation mismatch!");
+						}
+
+						if (has_scale && bone_stream.is_scale_constant)
+						{
+							const rtm::vector4f constant_scale = bone_range.scale.get_min();
+							if (!rtm::vector_all_near_equal3(adjusted_local_transform.scale, constant_scale, 0.0F))
+							{
+								any_constant_changed.scale = true;
+								constant_changed.scale = true;
+								adjusted_local_transform.scale = constant_scale;
+								raw_bone_stream.scales.set_raw_sample(sample_index, constant_scale);
+							}
+							ACL_ASSERT(bone_stream.scales.get_num_samples() == 1, "Constant scale stream mismatch!");
+							ACL_ASSERT(rtm::vector_all_near_equal3(bone_stream.scales.get_raw_sample<rtm::vector4f>(0), constant_scale, 0.0F), "Constant scale mismatch!");
+						}
+
+						rtm::qvvf& adjusted_object_transform = adjusted_object_pose[bone_index];
+						if (parent_bone_index == k_invalid_track_index)
+						{
+							adjusted_object_transform = adjusted_local_transform;	// Just copy the root as-is, it has no parent and thus local and object space transforms are equal
+						}
+						else
+						{
+							const dirty_state_t& parent_constant_changed = dirty_states[parent_bone_index];
+							const rtm::qvvf& parent_adjusted_object_transform = adjusted_object_pose[parent_bone_index];
+
+							if (bone_stream.is_rotation_constant && !constant_changed.rotation)
+								constant_changed.rotation = parent_constant_changed.rotation;
+							if (bone_stream.is_translation_constant && !constant_changed.translation)
+								constant_changed.translation = parent_constant_changed.translation;
+							if (has_scale && bone_stream.is_scale_constant && !constant_changed.scale)
+								constant_changed.scale = parent_constant_changed.scale;
+
+							// Compensate for the constant changes in your ancestors.
+							if (!bone_stream.is_rotation_constant && parent_constant_changed.rotation)
+							{
+								ACL_ASSERT(any_constant_changed.rotation, "No rotations have changed!");
+								adjusted_local_transform.rotation = rtm::quat_normalize(rtm::quat_mul(original_object_transform.rotation, rtm::quat_conjugate(parent_adjusted_object_transform.rotation)));
+								raw_bone_stream.rotations.set_raw_sample(sample_index, adjusted_local_transform.rotation);
+								bone_stream.rotations.set_raw_sample(sample_index, adjusted_local_transform.rotation);
+							}
+
+							if (has_scale)
+							{
+								if (!bone_stream.is_translation_constant && (parent_constant_changed.rotation || parent_constant_changed.translation || parent_constant_changed.scale))
+								{
+									ACL_ASSERT(any_constant_changed.rotation || any_constant_changed.translation || any_constant_changed.scale, "No channels have changed!");
+									const rtm::quatf inv_rotation = rtm::quat_conjugate(parent_adjusted_object_transform.rotation);
+									const rtm::vector4f inv_scale = rtm::vector_reciprocal(parent_adjusted_object_transform.scale);
+									adjusted_local_transform.translation = rtm::vector_mul(rtm::quat_mul_vector3(rtm::vector_sub(original_object_transform.translation, parent_adjusted_object_transform.translation), inv_rotation), inv_scale);
+									raw_bone_stream.translations.set_raw_sample(sample_index, adjusted_local_transform.translation);
+									bone_stream.translations.set_raw_sample(sample_index, adjusted_local_transform.translation);
+								}
+
+								if (!bone_stream.is_scale_constant && parent_constant_changed.scale)
+								{
+									ACL_ASSERT(any_constant_changed.scale, "No scales have changed!");
+									adjusted_local_transform.scale = rtm::vector_mul(original_object_transform.scale, rtm::vector_reciprocal(parent_adjusted_object_transform.scale));
+									raw_bone_stream.scales.set_raw_sample(sample_index, adjusted_local_transform.scale);
+									bone_stream.scales.set_raw_sample(sample_index, adjusted_local_transform.scale);
+								}
+
+								adjusted_object_transform = rtm::qvv_normalize(rtm::qvv_mul(adjusted_local_transform, parent_adjusted_object_transform));
+							}
+							else
+							{
+								if (!bone_stream.is_translation_constant && (parent_constant_changed.rotation || parent_constant_changed.translation))
+								{
+									ACL_ASSERT(any_constant_changed.rotation || any_constant_changed.translation, "No channels have changed!");
+									const rtm::quatf inv_rotation = rtm::quat_conjugate(parent_adjusted_object_transform.rotation);
+									adjusted_local_transform.translation = rtm::quat_mul_vector3(rtm::vector_sub(original_object_transform.translation, parent_adjusted_object_transform.translation), inv_rotation);
+									raw_bone_stream.translations.set_raw_sample(sample_index, adjusted_local_transform.translation);
+									bone_stream.translations.set_raw_sample(sample_index, adjusted_local_transform.translation);
+								}
+
+								adjusted_object_transform = rtm::qvv_normalize(rtm::qvv_mul_no_scale(adjusted_local_transform, parent_adjusted_object_transform));
+							}
+						}
+					}
+				}
+				deallocate_type_array(allocator, adjusted_object_pose, num_transforms);
+				deallocate_type_array(allocator, original_object_pose, num_transforms);
+				deallocate_type_array(allocator, dirty_states, num_transforms);
+
+				// We need to do these again, to account for error correction.
+				if(any_constant_changed.rotation)
+				{
+					convert_rotation_streams(allocator, context, settings.rotation_format);
+				}
+
+				if (any_constant_changed.rotation || any_constant_changed.translation || any_constant_changed.scale)
+				{
+					deallocate_type_array(allocator, context.ranges, num_transforms);
+					extract_clip_bone_ranges(allocator, context);
+				}
+			}
+#endif
 		}
 	}
 
diff --git a/includes/acl/compression/impl/compress.transform.impl.h b/includes/acl/compression/impl/compress.transform.impl.h
--- a/includes/acl/compression/impl/compress.transform.impl.h
+++ b/includes/acl/compression/impl/compress.transform.impl.h
@@ -171,8 +171,17 @@ namespace acl
 			if (is_additive && !initialize_clip_context(allocator, *additive_base_track_list, settings, additive_format, additive_base_clip_context))
 				return error_result("Some base samples are not finite");
 
+			// Topology dependent data, not specific to clip context
+			const uint32_t num_input_transforms = raw_clip_context.num_bones;
+			rigid_shell_metadata_t* clip_shell_metadata = compute_clip_shell_distances(allocator, raw_clip_context, additive_base_clip_context);
+
+			raw_clip_context.clip_shell_metadata = clip_shell_metadata;
+			lossy_clip_context.clip_shell_metadata = clip_shell_metadata;
+			if (is_additive)
+				additive_base_clip_context.clip_shell_metadata = clip_shell_metadata;
+
 			// Wrap instead of clamp if we loop
-			optimize_looping(lossy_clip_context, track_list, settings);
+			optimize_looping(lossy_clip_context, settings);
 
 			// Convert our rotations if we need to
 			convert_rotation_streams(allocator, lossy_clip_context, settings.rotation_format);
@@ -181,7 +190,7 @@ namespace acl
 			extract_clip_bone_ranges(allocator, lossy_clip_context);
 
 			// Compact and collapse the constant streams
-			compact_constant_streams(allocator, lossy_clip_context, track_list, settings);
+			compact_constant_streams(allocator, lossy_clip_context, raw_clip_context, track_list, settings);
 
 			uint32_t clip_range_data_size = 0;
 			if (range_reduction != range_reduction_flags8::none)
@@ -519,6 +528,7 @@ namespace acl
 #endif
 
 			deallocate_type_array(allocator, output_bone_mapping, num_output_bones);
+			deallocate_type_array(allocator, clip_shell_metadata, num_input_transforms);
 			destroy_clip_context(lossy_clip_context);
 			destroy_clip_context(raw_clip_context);
 			destroy_clip_context(additive_base_clip_context);
diff --git a/includes/acl/compression/impl/normalize_streams.h b/includes/acl/compression/impl/normalize_streams.h
--- a/includes/acl/compression/impl/normalize_streams.h
+++ b/includes/acl/compression/impl/normalize_streams.h
@@ -50,19 +50,10 @@ namespace acl
 		{
 			const uint32_t num_samples = stream.get_num_samples();
 			if (num_samples == 0)
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				return track_stream_range::from_min_max(rtm::vector_zero(), rtm::vector_zero(), rtm::vector_zero());
-#else
 				return track_stream_range::from_min_max(rtm::vector_zero(), rtm::vector_zero());
-#endif
 
 			rtm::vector4f min = rtm::vector_set(1e10F);
 			rtm::vector4f max = rtm::vector_set(-1e10F);
-
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			rtm::vector4d weighted_average_d = rtm::vector_set(0.0);
-			const rtm::vector4d weight_d = rtm::vector_set(1.0 / num_samples);
-#endif
 			
 			for (uint32_t sample_index = 0; sample_index < num_samples; ++sample_index)
 			{
@@ -70,65 +61,19 @@ namespace acl
 
 				min = rtm::vector_min(min, sample);
 				max = rtm::vector_max(max, sample);
-
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				const rtm::vector4d sample_d = rtm::vector_cast(sample);
-				if (is_vector4 && (rtm::vector_dot(weighted_average_d, sample_d) < 0.0))
-				{
-					weighted_average_d = rtm::vector_neg_mul_sub(sample_d, weight_d, weighted_average_d);
-				}
-				else
-				{
-					weighted_average_d = rtm::vector_mul_add(sample_d, weight_d, weighted_average_d);
-				}
-			}
-
-			rtm::vector4f weighted_average = rtm::vector_cast(weighted_average_d);
-#else
 			}
-#endif
 
 			// Set the 4th component to zero if we don't need it
 			if (!is_vector4)
 			{
 				min = rtm::vector_set_w(min, 0.0F);
 				max = rtm::vector_set_w(max, 0.0F);
-
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				weighted_average = rtm::vector_clamp(weighted_average, min, max);
-			}
-			else
-			{
-				// We have a quaternion
-				if (num_samples > 0)
-				{
-					weighted_average = rtm::vector_clamp(weighted_average, min, max);
-
-					// Due to rounding and clamping, our weighted average might not represent a valid quaternion, make sure we do
-					weighted_average = rtm::quat_to_vector(rtm::quat_normalize(rtm::vector_to_quat(weighted_average)));
-				}
-				else
-				{
-					// No samples present, just the identity
-					weighted_average = rtm::quat_to_vector((rtm::quatf)rtm::quat_identity());
-				}
-#endif
 			}
 
-			// TODO: Make sure weighted average has W positive if that's our format
-
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			return track_stream_range::from_min_max(min, max, weighted_average);
-#else
 			return track_stream_range::from_min_max(min, max);
-#endif
 		}
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-		inline void extract_bone_ranges_impl(const segment_context& segment, transform_range* bone_ranges, bool are_rotations_normalized)
-#else
 		inline void extract_bone_ranges_impl(const segment_context& segment, transform_range* bone_ranges)
-#endif
 		{
 			const bool has_scale = segment_context_has_scale(segment);
 
@@ -137,12 +82,7 @@ namespace acl
 				const transform_streams& bone_stream = segment.bone_streams[bone_index];
 				transform_range& bone_range = bone_ranges[bone_index];
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				bone_range.rotation = calculate_track_range(bone_stream.rotations, !are_rotations_normalized);
-#else
 				bone_range.rotation = calculate_track_range(bone_stream.rotations, true);
-#endif
-
 				bone_range.translation = calculate_track_range(bone_stream.translations, false);
 
 				if (has_scale)
@@ -159,11 +99,7 @@ namespace acl
 			ACL_ASSERT(context.num_segments == 1, "context must contain a single segment!");
 			const segment_context& segment = context.segments[0];
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			acl_impl::extract_bone_ranges_impl(segment, context.ranges, false);
-#else
 			acl_impl::extract_bone_ranges_impl(segment, context.ranges);
-#endif
 		}
 
 		inline void extract_segment_bone_ranges(iallocator& allocator, clip_context& context)
@@ -213,22 +149,14 @@ namespace acl
 				const rtm::mask4f is_extent0_higher_mask = rtm::vector_greater_equal(padded_range_extent0, range_max);
 				const rtm::vector4f padded_range_extent = rtm::vector_select(is_extent0_higher_mask, padded_range_extent0, padded_range_extent1);
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				return track_stream_range::from_min_extent(padded_range_min, padded_range_extent, range.get_weighted_average());
-#else
 				return track_stream_range::from_min_extent(padded_range_min, padded_range_extent);
-#endif
 			};
 
 			for (segment_context& segment : context.segment_iterator())
 			{
 				segment.ranges = allocate_type_array<transform_range>(allocator, segment.num_bones);
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				acl_impl::extract_bone_ranges_impl(segment, segment.ranges, context.are_rotations_normalized);
-#else
 				acl_impl::extract_bone_ranges_impl(segment, segment.ranges);
-#endif
 
 				for (uint32_t bone_index = 0; bone_index < segment.num_bones; ++bone_index)
 				{
diff --git a/includes/acl/compression/impl/optimize_looping.h b/includes/acl/compression/impl/optimize_looping.h
--- a/includes/acl/compression/impl/optimize_looping.h
+++ b/includes/acl/compression/impl/optimize_looping.h
@@ -46,7 +46,7 @@ namespace acl
 
 	namespace acl_impl
 	{
-		inline void optimize_looping(clip_context& context, const track_array_qvvf& track_list, const compression_settings& settings)
+		inline void optimize_looping(clip_context& context, const compression_settings& settings)
 		{
 			if (!settings.optimize_loops)
 				return;	// We don't want to optimize loops, nothing to do
@@ -77,39 +77,42 @@ namespace acl
 			segment_context& segment = context.segments[0];
 			const uint32_t last_sample_index = segment.num_samples - 1;
 
+			qvvf_transform_error_metric::calculate_error_args error_metric_args;
+			const qvvf_transform_error_metric error_metric;
+
 			const uint32_t num_transforms = segment.num_bones;
 			for (uint32_t transform_index = 0; transform_index < num_transforms; ++transform_index)
 			{
-				const track_desc_transformf& desc = track_list[transform_index].get_description();
+				const rigid_shell_metadata_t& shell = context.clip_shell_metadata[transform_index];
 
-				const rtm::quatf first_rotation = segment.bone_streams[transform_index].rotations.get_raw_sample<rtm::quatf>(0);
-				const rtm::quatf inv_first_rotation = rtm::quat_conjugate(first_rotation);
-				const rtm::quatf last_rotation = segment.bone_streams[transform_index].rotations.get_raw_sample<rtm::quatf>(last_sample_index);
-				const rtm::quatf delta_rotation = rtm::quat_normalize(rtm::quat_mul(inv_first_rotation, last_rotation));
-				if (!rtm::quat_near_identity(delta_rotation, desc.constant_rotation_threshold_angle))
-				{
-					is_wrapping = false;
-					break;
-				}
+				error_metric_args.construct_sphere_shell(shell.local_shell_distance);
+
+				const rtm::scalarf precision = rtm::scalar_set(shell.precision);
+
+				const transform_streams& lossy_transform_stream = segment.bone_streams[transform_index];
+
+				const rtm::quatf first_rotation = lossy_transform_stream.rotations.get_sample_clamped(0);
+				const rtm::vector4f first_translation = lossy_transform_stream.translations.get_sample_clamped(0);
+				const rtm::vector4f first_scale = lossy_transform_stream.scales.get_sample_clamped(0);
 
-				const rtm::vector4f first_translation = segment.bone_streams[transform_index].translations.get_raw_sample<rtm::vector4f>(0);
-				const rtm::vector4f last_translation = segment.bone_streams[transform_index].translations.get_raw_sample<rtm::vector4f>(last_sample_index);
-				if (!rtm::vector_all_near_equal3(first_translation, last_translation, desc.constant_translation_threshold))
+				const rtm::quatf last_rotation = lossy_transform_stream.rotations.get_sample_clamped(last_sample_index);
+				const rtm::vector4f last_translation = lossy_transform_stream.translations.get_sample_clamped(last_sample_index);
+				const rtm::vector4f last_scale = lossy_transform_stream.scales.get_sample_clamped(last_sample_index);
+
+				const rtm::qvvf first_transform = rtm::qvv_set(first_rotation, first_translation, first_scale);
+				const rtm::qvvf last_transform = rtm::qvv_set(last_rotation, last_translation, last_scale);
+
+				error_metric_args.transform0 = &first_transform;
+				error_metric_args.transform1 = &last_transform;
+
+				const rtm::scalarf vtx_error = error_metric.calculate_error(error_metric_args);
+
+				// If our error exceeds the desired precision, we are not wrapping
+				if (rtm::scalar_greater_than(vtx_error, precision))
 				{
 					is_wrapping = false;
 					break;
 				}
-
-				if (context.has_scale)
-				{
-					const rtm::vector4f first_scale = segment.bone_streams[transform_index].scales.get_raw_sample<rtm::vector4f>(0);
-					const rtm::vector4f last_scale = segment.bone_streams[transform_index].scales.get_raw_sample<rtm::vector4f>(last_sample_index);
-					if (!rtm::vector_all_near_equal3(first_scale, last_scale, desc.constant_scale_threshold))
-					{
-						is_wrapping = false;
-						break;
-					}
-				}
 			}
 
 			if (is_wrapping)
diff --git a/includes/acl/compression/impl/quantize_streams.h b/includes/acl/compression/impl/quantize_streams.h
--- a/includes/acl/compression/impl/quantize_streams.h
+++ b/includes/acl/compression/impl/quantize_streams.h
@@ -39,6 +39,7 @@
 #include "acl/compression/impl/sample_streams.h"
 #include "acl/compression/impl/normalize_streams.h"
 #include "acl/compression/impl/convert_rotation_streams.h"
+#include "acl/compression/impl/rigid_shell_utils.h"
 #include "acl/compression/transform_error_metrics.h"
 #include "acl/compression/compression_settings.h"
 
@@ -53,8 +54,14 @@
 #include <cstdint>
 #include <functional>
 
-// 0 = no debug info, 1 = basic info, 2 = verbose
-#define ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION		0
+#define ACL_IMPL_DEBUG_LEVEL_NONE					0
+#define ACL_IMPL_DEBUG_LEVEL_SUMMARY_ONLY			1
+#define ACL_IMPL_DEBUG_LEVEL_BASIC_INFO				2
+#define ACL_IMPL_DEBUG_LEVEL_VERBOSE_INFO			3
+
+// Dumps details of quantization optimization process
+// Use debug levels above to control debug output
+#define ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION		ACL_IMPL_DEBUG_LEVEL_NONE
 
 // 0 = no debug into, 1 = basic info
 #define ACL_IMPL_DEBUG_CONTRIBUTING_ERROR			0
@@ -95,7 +102,6 @@ namespace acl
 			uint32_t segment_sample_start_index;
 			float sample_rate;
 			float clip_duration;
-			float error_threshold;					// Error threshold of the current bone being optimized
 			bool has_scale;
 			bool has_additive_base;
 			bool needs_conversion;
@@ -107,6 +113,8 @@ namespace acl
 
 			const transform_streams* raw_bone_streams;
 
+			rigid_shell_metadata_t* shell_metadata_per_transform;	// 1 per transform
+
 			rtm::qvvf* additive_local_pose;			// 1 per transform
 			rtm::qvvf* raw_local_pose;				// 1 per transform
 			rtm::qvvf* lossy_local_pose;			// 1 per transform
@@ -149,7 +157,6 @@ namespace acl
 				, segment_sample_start_index(~0U)
 				, sample_rate(clip_.sample_rate)
 				, clip_duration(clip_.duration)
-				, error_threshold(0.0F)
 				, has_scale(clip_.has_scale)
 				, has_additive_base(clip_.has_additive_base)
 				, rotation_format(settings_.rotation_format)
@@ -168,6 +175,7 @@ namespace acl
 				const size_t metric_transform_size_ = settings_.error_metric->get_transform_size(clip_.has_scale);
 				metric_transform_size = metric_transform_size_;
 
+				shell_metadata_per_transform = allocate_type_array<rigid_shell_metadata_t>(allocator, num_bones);
 				additive_local_pose = clip_.has_additive_base ? allocate_type_array<rtm::qvvf>(allocator, num_bones) : nullptr;
 				raw_local_pose = allocate_type_array<rtm::qvvf>(allocator, num_bones);
 				lossy_local_pose = allocate_type_array<rtm::qvvf>(allocator, num_bones);
@@ -192,6 +200,7 @@ namespace acl
 
 			~quantization_context()
 			{
+				deallocate_type_array(allocator, shell_metadata_per_transform, num_bones);
 				deallocate_type_array(allocator, additive_local_pose, num_bones);
 				deallocate_type_array(allocator, raw_local_pose, num_bones);
 				deallocate_type_array(allocator, lossy_local_pose, num_bones);
@@ -217,6 +226,9 @@ namespace acl
 				segment_sample_start_index = segment_.clip_sample_offset;
 				bit_rate_database.set_segment(segment_.bone_streams, segment_.num_bones, segment_.num_samples);
 
+				// Update our shell distances
+				compute_segment_shell_distances(segment_, additive_base_clip, shell_metadata_per_transform);
+
 				// Cache every raw local/object transforms and the base local transforms since they never change
 				const itransform_error_metric* error_metric_ = error_metric;
 				const size_t sample_transform_size = metric_transform_size * num_bones;
@@ -342,26 +354,26 @@ namespace acl
 			quantize_fixed_rotation_stream(context.allocator, bone_stream.rotations, rotation_format, bone_stream.rotations);
 		}
 
-		inline void quantize_variable_rotation_stream(quantization_context& context, const rotation_track_stream& raw_clip_stream, const rotation_track_stream& raw_segment_stream, const track_stream_range& clip_range, uint8_t bit_rate, rotation_track_stream& out_quantized_stream)
+		inline void quantize_variable_rotation_stream(quantization_context& context, const transform_streams& raw_track, const transform_streams& lossy_track, uint8_t bit_rate, rotation_track_stream& out_quantized_stream)
 		{
+			const rotation_track_stream& raw_rotations = raw_track.rotations;
+			const rotation_track_stream& lossy_rotations = lossy_track.rotations;
+
 			// We expect all our samples to have the same width of sizeof(rtm::vector4f)
-			ACL_ASSERT(raw_segment_stream.get_sample_size() == sizeof(rtm::vector4f), "Unexpected rotation sample size. %u != %zu", raw_segment_stream.get_sample_size(), sizeof(rtm::vector4f));
+			ACL_ASSERT(lossy_rotations.get_sample_size() == sizeof(rtm::vector4f), "Unexpected rotation sample size. %u != %zu", lossy_rotations.get_sample_size(), sizeof(rtm::vector4f));
 
-			const uint32_t num_samples = is_constant_bit_rate(bit_rate) ? 1 : raw_segment_stream.get_num_samples();
+			const uint32_t num_samples = is_constant_bit_rate(bit_rate) ? 1 : lossy_rotations.get_num_samples();
 			const uint32_t sample_size = sizeof(uint64_t) * 2;
-			const float sample_rate = raw_segment_stream.get_sample_rate();
+			const float sample_rate = lossy_rotations.get_sample_rate();
 			rotation_track_stream quantized_stream(context.allocator, num_samples, sample_size, sample_rate, rotation_format8::quatf_drop_w_variable, bit_rate);
 
 			if (is_constant_bit_rate(bit_rate))
 			{
-
 #if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
+				const track_stream_range& bone_range = context.segment->ranges[lossy_track.bone_index].rotation;
 				const rtm::vector4f normalized_rotation = clip_range.get_weighted_average();
 #else
-				rtm::vector4f rotation = raw_clip_stream.get_raw_sample<rtm::vector4f>(context.segment_sample_start_index);
-				rotation = convert_rotation(rotation, rotation_format8::quatf_full, rotation_format8::quatf_drop_w_variable);
-
-				const rtm::vector4f normalized_rotation = normalize_sample(rotation, clip_range);
+				const rtm::vector4f normalized_rotation = lossy_track.constant_rotation;
 #endif
 
 				uint8_t* quantized_ptr = quantized_stream.get_raw_sample_ptr(0);
@@ -377,13 +389,13 @@ namespace acl
 
 					if (is_raw_bit_rate(bit_rate))
 					{
-						rtm::vector4f rotation = raw_clip_stream.get_raw_sample<rtm::vector4f>(context.segment_sample_start_index + sample_index);
+						rtm::vector4f rotation = raw_rotations.get_raw_sample<rtm::vector4f>(context.segment_sample_start_index + sample_index);
 						rotation = convert_rotation(rotation, rotation_format8::quatf_full, rotation_format8::quatf_drop_w_variable);
 						pack_vector3_96(rotation, quantized_ptr);
 					}
 					else
 					{
-						const rtm::quatf rotation = raw_segment_stream.get_raw_sample<rtm::quatf>(sample_index);
+						const rtm::quatf rotation = lossy_rotations.get_raw_sample<rtm::quatf>(sample_index);
 						pack_vector3_uXX_unsafe(rtm::quat_to_vector(rotation), num_bits_at_bit_rate, quantized_ptr);
 					}
 				}
@@ -396,26 +408,20 @@ namespace acl
 		{
 			ACL_ASSERT(bone_index < context.num_bones, "Invalid bone index: %u", bone_index);
 
-			transform_streams& bone_stream = context.bone_streams[bone_index];
+			transform_streams& lossy_track = context.bone_streams[bone_index];
 
 			// Default tracks aren't quantized
-			if (bone_stream.is_rotation_default)
+			if (lossy_track.is_rotation_default)
 				return;
 
-			const transform_streams& raw_bone_stream = context.raw_bone_streams[bone_index];
+			const transform_streams& raw_track = context.raw_bone_streams[bone_index];
 			const rotation_format8 highest_bit_rate = get_highest_variant_precision(rotation_variant8::quat_drop_w);
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			const track_stream_range& bone_range = context.segment->ranges[bone_index].rotation;
-#else
-			const track_stream_range& bone_range = context.clip.ranges[bone_index].rotation;
-#endif
-
 			// If our format is variable, we keep them fixed at the highest bit rate in the variant
-			if (bone_stream.is_rotation_constant)
-				quantize_fixed_rotation_stream(context.allocator, bone_stream.rotations, highest_bit_rate, bone_stream.rotations);
+			if (lossy_track.is_rotation_constant)
+				quantize_fixed_rotation_stream(context.allocator, lossy_track.rotations, highest_bit_rate, lossy_track.rotations);
 			else
-				quantize_variable_rotation_stream(context, raw_bone_stream.rotations, bone_stream.rotations, bone_range, bit_rate, bone_stream.rotations);
+				quantize_variable_rotation_stream(context, raw_track, lossy_track, bit_rate, lossy_track.rotations);
 		}
 
 		inline void quantize_fixed_translation_stream(iallocator& allocator, const translation_track_stream& raw_stream, vector_format8 translation_format, translation_track_stream& out_quantized_stream)
@@ -465,25 +471,27 @@ namespace acl
 			quantize_fixed_translation_stream(context.allocator, bone_stream.translations, format, bone_stream.translations);
 		}
 
-		inline void quantize_variable_translation_stream(quantization_context& context, const translation_track_stream& raw_clip_stream, const translation_track_stream& raw_segment_stream, const track_stream_range& clip_range, uint8_t bit_rate, translation_track_stream& out_quantized_stream)
+		inline void quantize_variable_translation_stream(quantization_context& context, const transform_streams& raw_track, const transform_streams& lossy_track, uint8_t bit_rate, translation_track_stream& out_quantized_stream)
 		{
+			const translation_track_stream& raw_translations = raw_track.translations;
+			const translation_track_stream& lossy_translations = lossy_track.translations;
+
 			// We expect all our samples to have the same width of sizeof(rtm::vector4f)
-			ACL_ASSERT(raw_segment_stream.get_sample_size() == sizeof(rtm::vector4f), "Unexpected translation sample size. %u != %zu", raw_segment_stream.get_sample_size(), sizeof(rtm::vector4f));
-			ACL_ASSERT(raw_segment_stream.get_vector_format() == vector_format8::vector3f_full, "Expected a vector3f_full vector format, found: %s", get_vector_format_name(raw_segment_stream.get_vector_format()));
+			ACL_ASSERT(lossy_translations.get_sample_size() == sizeof(rtm::vector4f), "Unexpected translation sample size. %u != %zu", lossy_translations.get_sample_size(), sizeof(rtm::vector4f));
+			ACL_ASSERT(lossy_translations.get_vector_format() == vector_format8::vector3f_full, "Expected a vector3f_full vector format, found: %s", get_vector_format_name(lossy_translations.get_vector_format()));
 
-			const uint32_t num_samples = is_constant_bit_rate(bit_rate) ? 1 : raw_segment_stream.get_num_samples();
+			const uint32_t num_samples = is_constant_bit_rate(bit_rate) ? 1 : lossy_translations.get_num_samples();
 			const uint32_t sample_size = sizeof(uint64_t) * 2;
-			const float sample_rate = raw_segment_stream.get_sample_rate();
+			const float sample_rate = lossy_translations.get_sample_rate();
 			translation_track_stream quantized_stream(context.allocator, num_samples, sample_size, sample_rate, vector_format8::vector3f_variable, bit_rate);
 
 			if (is_constant_bit_rate(bit_rate))
 			{
-
 #if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
+				const track_stream_range& bone_range = context.segment->ranges[lossy_track.bone_index].translation;
 				const rtm::vector4f normalized_translation = clip_range.get_weighted_average();
 #else
-				const rtm::vector4f translation = raw_clip_stream.get_raw_sample<rtm::vector4f>(context.segment_sample_start_index);
-				const rtm::vector4f normalized_translation = normalize_sample(translation, clip_range);
+				const rtm::vector4f normalized_translation = lossy_track.constant_translation;
 #endif
 
 				uint8_t* quantized_ptr = quantized_stream.get_raw_sample_ptr(0);
@@ -499,12 +507,12 @@ namespace acl
 
 					if (is_raw_bit_rate(bit_rate))
 					{
-						const rtm::vector4f translation = raw_clip_stream.get_raw_sample<rtm::vector4f>(context.segment_sample_start_index + sample_index);
+						const rtm::vector4f translation = raw_translations.get_raw_sample<rtm::vector4f>(context.segment_sample_start_index + sample_index);
 						pack_vector3_96(translation, quantized_ptr);
 					}
 					else
 					{
-						const rtm::vector4f translation = raw_segment_stream.get_raw_sample<rtm::vector4f>(sample_index);
+						const rtm::vector4f translation = lossy_translations.get_raw_sample<rtm::vector4f>(sample_index);
 						pack_vector3_uXX_unsafe(translation, num_bits_at_bit_rate, quantized_ptr);
 					}
 				}
@@ -517,25 +525,19 @@ namespace acl
 		{
 			ACL_ASSERT(bone_index < context.num_bones, "Invalid bone index: %u", bone_index);
 
-			transform_streams& bone_stream = context.bone_streams[bone_index];
+			transform_streams& lossy_track = context.bone_streams[bone_index];
 
 			// Default tracks aren't quantized
-			if (bone_stream.is_translation_default)
+			if (lossy_track.is_translation_default)
 				return;
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			const track_stream_range& bone_range = context.segment->ranges[bone_index].translation;
-#else
-			const track_stream_range& bone_range = context.clip.ranges[bone_index].translation;
-#endif
-
-			const transform_streams& raw_bone_stream = context.raw_bone_streams[bone_index];
+			const transform_streams& raw_track = context.raw_bone_streams[bone_index];
 
 			// Constant translation tracks store the remaining sample with full precision
-			if (bone_stream.is_translation_constant)
-				quantize_fixed_translation_stream(context.allocator, bone_stream.translations, vector_format8::vector3f_full, bone_stream.translations);
+			if (lossy_track.is_translation_constant)
+				quantize_fixed_translation_stream(context.allocator, lossy_track.translations, vector_format8::vector3f_full, lossy_track.translations);
 			else
-				quantize_variable_translation_stream(context, raw_bone_stream.translations, bone_stream.translations, bone_range, bit_rate, bone_stream.translations);
+				quantize_variable_translation_stream(context, raw_track, lossy_track, bit_rate, lossy_track.translations);
 		}
 
 		inline void quantize_fixed_scale_stream(iallocator& allocator, const scale_track_stream& raw_stream, vector_format8 scale_format, scale_track_stream& out_quantized_stream)
@@ -585,24 +587,27 @@ namespace acl
 			quantize_fixed_scale_stream(context.allocator, bone_stream.scales, format, bone_stream.scales);
 		}
 
-		inline void quantize_variable_scale_stream(quantization_context& context, const scale_track_stream& raw_clip_stream, const scale_track_stream& raw_segment_stream, const track_stream_range& clip_range, uint8_t bit_rate, scale_track_stream& out_quantized_stream)
+		inline void quantize_variable_scale_stream(quantization_context& context, const transform_streams& raw_track, const transform_streams& lossy_track, uint8_t bit_rate, scale_track_stream& out_quantized_stream)
 		{
+			const scale_track_stream& raw_scales = raw_track.scales;
+			const scale_track_stream& lossy_scales = lossy_track.scales;
+
 			// We expect all our samples to have the same width of sizeof(rtm::vector4f)
-			ACL_ASSERT(raw_segment_stream.get_sample_size() == sizeof(rtm::vector4f), "Unexpected scale sample size. %u != %zu", raw_segment_stream.get_sample_size(), sizeof(rtm::vector4f));
-			ACL_ASSERT(raw_segment_stream.get_vector_format() == vector_format8::vector3f_full, "Expected a vector3f_full vector format, found: %s", get_vector_format_name(raw_segment_stream.get_vector_format()));
+			ACL_ASSERT(lossy_scales.get_sample_size() == sizeof(rtm::vector4f), "Unexpected scale sample size. %u != %zu", lossy_scales.get_sample_size(), sizeof(rtm::vector4f));
+			ACL_ASSERT(lossy_scales.get_vector_format() == vector_format8::vector3f_full, "Expected a vector3f_full vector format, found: %s", get_vector_format_name(lossy_scales.get_vector_format()));
 
-			const uint32_t num_samples = is_constant_bit_rate(bit_rate) ? 1 : raw_segment_stream.get_num_samples();
+			const uint32_t num_samples = is_constant_bit_rate(bit_rate) ? 1 : lossy_scales.get_num_samples();
 			const uint32_t sample_size = sizeof(uint64_t) * 2;
-			const float sample_rate = raw_segment_stream.get_sample_rate();
+			const float sample_rate = lossy_scales.get_sample_rate();
 			scale_track_stream quantized_stream(context.allocator, num_samples, sample_size, sample_rate, vector_format8::vector3f_variable, bit_rate);
 
 			if (is_constant_bit_rate(bit_rate))
 			{
 #if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
+				const track_stream_range& bone_range = context.segment->ranges[lossy_track.bone_index].scale;
 				const rtm::vector4f normalized_scale = clip_range.get_weighted_average();
 #else
-				const rtm::vector4f scale = raw_clip_stream.get_raw_sample<rtm::vector4f>(context.segment_sample_start_index);
-				const rtm::vector4f normalized_scale = normalize_sample(scale, clip_range);
+				const rtm::vector4f normalized_scale = lossy_track.constant_scale;
 #endif
 
 				uint8_t* quantized_ptr = quantized_stream.get_raw_sample_ptr(0);
@@ -618,12 +623,12 @@ namespace acl
 
 					if (is_raw_bit_rate(bit_rate))
 					{
-						const rtm::vector4f scale = raw_clip_stream.get_raw_sample<rtm::vector4f>(context.segment_sample_start_index + sample_index);
+						const rtm::vector4f scale = raw_scales.get_raw_sample<rtm::vector4f>(context.segment_sample_start_index + sample_index);
 						pack_vector3_96(scale, quantized_ptr);
 					}
 					else
 					{
-						const rtm::vector4f scale = raw_segment_stream.get_raw_sample<rtm::vector4f>(sample_index);
+						const rtm::vector4f scale = lossy_scales.get_raw_sample<rtm::vector4f>(sample_index);
 						pack_vector3_uXX_unsafe(scale, num_bits_at_bit_rate, quantized_ptr);
 					}
 				}
@@ -636,25 +641,19 @@ namespace acl
 		{
 			ACL_ASSERT(bone_index < context.num_bones, "Invalid bone index: %u", bone_index);
 
-			transform_streams& bone_stream = context.bone_streams[bone_index];
+			transform_streams& lossy_track = context.bone_streams[bone_index];
 
 			// Default tracks aren't quantized
-			if (bone_stream.is_scale_default)
+			if (lossy_track.is_scale_default)
 				return;
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			const track_stream_range& bone_range = context.segment->ranges[bone_index].scale;
-#else
-			const track_stream_range& bone_range = context.clip.ranges[bone_index].scale;
-#endif
-
-			const transform_streams& raw_bone_stream = context.raw_bone_streams[bone_index];
+			const transform_streams& raw_track = context.raw_bone_streams[bone_index];
 
 			// Constant scale tracks store the remaining sample with full precision
-			if (bone_stream.is_scale_constant)
-				quantize_fixed_scale_stream(context.allocator, bone_stream.scales, vector_format8::vector3f_full, bone_stream.scales);
+			if (lossy_track.is_scale_constant)
+				quantize_fixed_scale_stream(context.allocator, lossy_track.scales, vector_format8::vector3f_full, lossy_track.scales);
 			else
-				quantize_variable_scale_stream(context, raw_bone_stream.scales, bone_stream.scales, bone_range, bit_rate, bone_stream.scales);
+				quantize_variable_scale_stream(context, raw_track, lossy_track, bit_rate, lossy_track.scales);
 		}
 
 		enum class error_scan_stop_condition { until_error_too_high, until_end_of_segment };
@@ -664,12 +663,11 @@ namespace acl
 			const itransform_error_metric* error_metric = context.error_metric;
 			const bool needs_conversion = context.needs_conversion;
 			const bool has_additive_base = context.has_additive_base;
-			const transform_metadata& target_bone = context.metadata[target_bone_index];
+
 			const uint32_t num_transforms = context.num_bones;
 			const size_t sample_transform_size = context.metric_transform_size * context.num_bones;
 			const float sample_rate = context.sample_rate;
 			const float clip_duration = context.clip_duration;
-			const rtm::scalarf error_threshold = rtm::scalar_set(context.error_threshold);
 
 			const auto convert_transforms_impl = std::mem_fn(context.has_scale ? &itransform_error_metric::convert_transforms : &itransform_error_metric::convert_transforms_no_scale);
 			const auto apply_additive_to_base_impl = std::mem_fn(context.has_scale ? &itransform_error_metric::apply_additive_to_base : &itransform_error_metric::apply_additive_to_base_no_scale);
@@ -691,7 +689,9 @@ namespace acl
 			itransform_error_metric::calculate_error_args calculate_error_args;
 			calculate_error_args.transform0 = nullptr;
 			calculate_error_args.transform1 = needs_conversion ? (const void*)(context.local_transforms_converted + (context.metric_transform_size * target_bone_index)) : (const void*)(context.lossy_local_pose + target_bone_index);
-			calculate_error_args.construct_sphere_shell(target_bone.shell_distance);
+
+			const rigid_shell_metadata_t& transform_shell = context.shell_metadata_per_transform[target_bone_index];
+			const rtm::scalarf error_threshold = rtm::scalar_set(transform_shell.precision);
 
 			const uint8_t* raw_transform = context.raw_local_transforms + (target_bone_index * context.metric_transform_size);
 			const uint8_t* base_transforms = context.base_local_transforms;
@@ -720,6 +720,7 @@ namespace acl
 					apply_additive_to_base_impl(error_metric, apply_additive_to_base_args_lossy, context.lossy_local_pose);
 				}
 
+				calculate_error_args.construct_sphere_shell(transform_shell.local_shell_distance);
 				calculate_error_args.transform0 = raw_transform;
 				raw_transform += sample_transform_size;
 
@@ -746,11 +747,10 @@ namespace acl
 			const itransform_error_metric* error_metric = context.error_metric;
 			const bool needs_conversion = context.needs_conversion;
 			const bool has_additive_base = context.has_additive_base;
-			const transform_metadata& target_bone = context.metadata[target_bone_index];
+
 			const size_t sample_transform_size = context.metric_transform_size * context.num_bones;
 			const float sample_rate = context.sample_rate;
 			const float clip_duration = context.clip_duration;
-			const rtm::scalarf error_threshold = rtm::scalar_set(context.error_threshold);
 
 			const auto convert_transforms_impl = std::mem_fn(context.has_scale ? &itransform_error_metric::convert_transforms : &itransform_error_metric::convert_transforms_no_scale);
 			const auto apply_additive_to_base_impl = std::mem_fn(context.has_scale ? &itransform_error_metric::apply_additive_to_base : &itransform_error_metric::apply_additive_to_base_no_scale);
@@ -780,7 +780,9 @@ namespace acl
 			itransform_error_metric::calculate_error_args calculate_error_args;
 			calculate_error_args.transform0 = nullptr;
 			calculate_error_args.transform1 = context.lossy_object_pose + (target_bone_index * context.metric_transform_size);
-			calculate_error_args.construct_sphere_shell(target_bone.shell_distance);
+
+			const rigid_shell_metadata_t& transform_shell = context.shell_metadata_per_transform[target_bone_index];
+			const rtm::scalarf error_threshold = rtm::scalar_set(transform_shell.precision);
 
 			const uint8_t* raw_transform = context.raw_object_transforms + (target_bone_index * context.metric_transform_size);
 			const uint8_t* base_transforms = context.base_local_transforms;
@@ -811,6 +813,7 @@ namespace acl
 
 				local_to_object_space_impl(error_metric, local_to_object_space_args_lossy, context.lossy_object_pose);
 
+				calculate_error_args.construct_sphere_shell(transform_shell.local_shell_distance);
 				calculate_error_args.transform0 = raw_transform;
 				raw_transform += sample_transform_size;
 
@@ -842,8 +845,7 @@ namespace acl
 			for (uint32_t bone_index = 0; bone_index < num_bones; ++bone_index)
 			{
 				// Update our error threshold
-				const float error_threshold = context.metadata[bone_index].precision;
-				context.error_threshold = error_threshold;
+				const float error_threshold = context.shell_metadata_per_transform[bone_index].precision;
 
 				// Bit rates at this point are one of three value:
 				// 0: if the segment track is normalized, it can be constant within the segment
@@ -853,7 +855,7 @@ namespace acl
 
 				if (bone_bit_rates.rotation == k_invalid_bit_rate && bone_bit_rates.translation == k_invalid_bit_rate && bone_bit_rates.scale == k_invalid_bit_rate)
 				{
-#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION
+#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION >= ACL_IMPL_DEBUG_LEVEL_BASIC_INFO
 					printf("%u: Best bit rates: %u | %u | %u\n", bone_index, bone_bit_rates.rotation, bone_bit_rates.translation, bone_bit_rates.scale);
 #endif
 					continue;	// Every track bit rate is constant/default, nothing else to do
@@ -924,7 +926,7 @@ namespace acl
 
 						const float error = calculate_max_error_at_bit_rate_local(context, bone_index, error_scan_stop_condition::until_error_too_high);
 
-#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION > 1
+#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION >= ACL_IMPL_DEBUG_LEVEL_VERBOSE_INFO
 						printf("%u: %u | %u | %u (%u) = %f\n", bone_index, rotation_bit_rate, translation_bit_rate, scale_bit_rate, transform_size, error);
 #endif
 
@@ -982,7 +984,7 @@ namespace acl
 
 						const float error = calculate_max_error_at_bit_rate_local(context, bone_index, error_scan_stop_condition::until_error_too_high);
 
-#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION > 1
+#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION >= ACL_IMPL_DEBUG_LEVEL_VERBOSE_INFO
 						printf("%u: %u | %u | %u (%u) = %f\n", bone_index, rotation_bit_rate, translation_bit_rate, k_invalid_bit_rate, transform_size, error);
 #endif
 
@@ -995,7 +997,7 @@ namespace acl
 					}
 				}
 
-#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION
+#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION >= ACL_IMPL_DEBUG_LEVEL_BASIC_INFO
 				printf("%u: Best bit rates: %u | %u | %u\n", bone_index, best_bit_rates.rotation, best_bit_rates.translation, best_bit_rates.scale);
 #endif
 
@@ -1065,7 +1067,7 @@ namespace acl
 
 		inline float calculate_bone_permutation_error(quantization_context& context, transform_bit_rates* permutation_bit_rates, uint8_t* bone_chain_permutation, uint32_t bone_index, transform_bit_rates* best_bit_rates, float old_error)
 		{
-			const float error_threshold = context.error_threshold;
+			const float error_threshold = context.shell_metadata_per_transform[bone_index].precision;
 			float best_error = old_error;
 
 			do
@@ -1244,12 +1246,13 @@ namespace acl
 			transform_bit_rates* best_bit_rates = allocate_type_array<transform_bit_rates>(context.allocator, context.num_bones);
 			std::memcpy(best_bit_rates, context.bit_rate_per_bone, sizeof(transform_bit_rates) * context.num_bones);
 
+			// Iterate from the root transforms first
+			// I attempted to iterate from leaves first and the memory footprint was severely worse
 			const uint32_t num_bones = context.num_bones;
-			for (uint32_t bone_index = 0; bone_index < num_bones; ++bone_index)
+			for (const uint32_t bone_index : make_iterator(context.raw_clip.sorted_transforms_parent_first, num_bones))
 			{
 				// Update our context with the new bone data
-				const float error_threshold = context.metadata[bone_index].precision;
-				context.error_threshold = error_threshold;
+				const float error_threshold = context.shell_metadata_per_transform[bone_index].precision;
 
 				const uint32_t num_bones_in_chain = calculate_bone_chain_indices(context.clip, bone_index, context.chain_bone_indices);
 				context.num_bones_in_chain = num_bones_in_chain;
@@ -1368,7 +1371,7 @@ namespace acl
 					error = best_error;
 					if (error < original_error)
 					{
-#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION
+#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION >= ACL_IMPL_DEBUG_LEVEL_BASIC_INFO
 						std::swap(context.bit_rate_per_bone, best_bit_rates);
 						float new_error = calculate_max_error_at_bit_rate_object(context, bone_index, error_scan_stop_condition::until_end_of_segment);
 						std::swap(context.bit_rate_per_bone, best_bit_rates);
@@ -1391,7 +1394,7 @@ namespace acl
 
 				if (error < initial_error)
 				{
-#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION
+#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION >= ACL_IMPL_DEBUG_LEVEL_BASIC_INFO
 					std::swap(context.bit_rate_per_bone, best_bit_rates);
 					float new_error = calculate_max_error_at_bit_rate_object(context, bone_index, error_scan_stop_condition::until_end_of_segment);
 					std::swap(context.bit_rate_per_bone, best_bit_rates);
@@ -1460,7 +1463,7 @@ namespace acl
 								best_bone_bit_rate = bone_bit_rate;
 								best_bit_rate_error = error;
 
-#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION
+#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION >= ACL_IMPL_DEBUG_LEVEL_BASIC_INFO
 								printf("%u: => %u %u %u (%f)\n", chain_bone_index, bone_bit_rate.rotation, bone_bit_rate.translation, bone_bit_rate.scale, error);
 								for (uint32_t i = chain_link_index + 1; i < num_bones_in_chain; ++i)
 								{
@@ -1513,13 +1516,12 @@ namespace acl
 				}
 			}
 
-#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION
+#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION >= ACL_IMPL_DEBUG_LEVEL_SUMMARY_ONLY
 			printf("Variable quantization optimization results:\n");
 			for (uint32_t bone_index = 0; bone_index < num_bones; ++bone_index)
 			{
 				// Update our context with the new bone data
-				const float error_threshold = context.metadata[bone_index].precision;
-				context.error_threshold = error_threshold;
+				const float error_threshold = context.shell_metadata_per_transform[bone_index].precision;
 
 				const uint32_t num_bones_in_chain = calculate_bone_chain_indices(context.clip, bone_index, context.chain_bone_indices);
 				context.num_bones_in_chain = num_bones_in_chain;
@@ -1713,14 +1715,15 @@ namespace acl
 
 						// Calculate our error
 						const uint8_t* raw_frame_transform = raw_transform + (interp_frame_index * sample_transform_size);
+
 						for (uint32_t bone_index = 0; bone_index < num_bones; ++bone_index)
 						{
-							const transform_metadata& target_bone = context.metadata[bone_index];
-
 							itransform_error_metric::calculate_error_args calculate_error_args;
 							calculate_error_args.transform0 = raw_frame_transform + (bone_index * context.metric_transform_size);
 							calculate_error_args.transform1 = context.lossy_object_pose + (bone_index * context.metric_transform_size);
-							calculate_error_args.construct_sphere_shell(target_bone.shell_distance);
+
+							const rigid_shell_metadata_t& transform_shell = context.shell_metadata_per_transform[bone_index];
+							calculate_error_args.construct_sphere_shell(transform_shell.local_shell_distance);
 
 #if defined(RTM_COMPILER_MSVC) && defined(RTM_ARCH_X86) && RTM_COMPILER_MSVC == RTM_COMPILER_MSVC_2015
 							// VS2015 fails to generate the right x86 assembly, branch instead
@@ -1777,7 +1780,7 @@ namespace acl
 
 			for (segment_context& segment : clip.segment_iterator())
 			{
-#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION
+#if ACL_IMPL_DEBUG_VARIABLE_QUANTIZATION >= ACL_IMPL_DEBUG_LEVEL_SUMMARY_ONLY
 				printf("Quantizing segment %u...\n", segment.segment_index);
 #endif
 
diff --git a/includes/acl/compression/impl/rigid_shell_utils.h b/includes/acl/compression/impl/rigid_shell_utils.h
new file mode 100644
--- /dev/null
+++ b/includes/acl/compression/impl/rigid_shell_utils.h
@@ -0,0 +1,283 @@
+#pragma once
+
+////////////////////////////////////////////////////////////////////////////////
+// The MIT License (MIT)
+//
+// Copyright (c) 2022 Nicholas Frechette & Animation Compression Library contributors
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in all
+// copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+// SOFTWARE.
+////////////////////////////////////////////////////////////////////////////////
+
+#include "acl/version.h"
+#include "acl/core/iallocator.h"
+#include "acl/core/impl/compiler_utils.h"
+#include "acl/compression/impl/clip_context.h"
+#include "acl/compression/impl/sample_streams.h"
+
+#include <rtm/qvvf.h>
+
+#include <cstdint>
+
+ACL_IMPL_FILE_PRAGMA_PUSH
+
+namespace acl
+{
+	ACL_IMPL_VERSION_NAMESPACE_BEGIN
+
+	namespace acl_impl
+	{
+		// We use the raw data to compute the rigid shell
+		// For each transform, its rigid shell is formed by the dominant joint (itself or a child)
+		// We compute the largest value over the whole clip per transform
+		inline rigid_shell_metadata_t* compute_clip_shell_distances(iallocator& allocator, const clip_context& raw_clip_context, const clip_context& additive_base_clip_context)
+		{
+			const uint32_t num_transforms = raw_clip_context.num_bones;
+			if (num_transforms == 0)
+				return nullptr;	// No transforms present, no shell distances
+
+			const uint32_t num_samples = raw_clip_context.num_samples;
+			if (num_samples == 0)
+				return nullptr;	// No samples present, no shell distances
+
+			const segment_context& raw_segment = raw_clip_context.segments[0];
+			const bool has_additive_base = raw_clip_context.has_additive_base;
+
+			rigid_shell_metadata_t* shell_metadata = allocate_type_array<rigid_shell_metadata_t>(allocator, num_transforms);
+
+			// Initialize everything
+			for (uint32_t transform_index = 0; transform_index < num_transforms; ++transform_index)
+			{
+				const transform_metadata& metadata = raw_clip_context.metadata[transform_index];
+
+				shell_metadata[transform_index].local_shell_distance = metadata.shell_distance;
+				shell_metadata[transform_index].precision = metadata.precision;
+				shell_metadata[transform_index].parent_shell_distance = 0.0F;
+			}
+
+			// Iterate from leaf transforms towards their root, we want to bubble up our shell distance
+			for (const uint32_t transform_index : make_reverse_iterator(raw_clip_context.sorted_transforms_parent_first, num_transforms))
+			{
+				const transform_streams& raw_bone_stream = raw_segment.bone_streams[transform_index];
+
+				rigid_shell_metadata_t& shell = shell_metadata[transform_index];
+
+				// Use the accumulated shell distance so far to see how far it deforms with our local transform
+				const rtm::vector4f vtx0 = rtm::vector_set(shell.local_shell_distance, 0.0F, 0.0F);
+				const rtm::vector4f vtx1 = rtm::vector_set(0.0F, shell.local_shell_distance, 0.0F);
+				const rtm::vector4f vtx2 = rtm::vector_set(0.0F, 0.0F, shell.local_shell_distance);
+
+				// Calculate the shell distance in parent space
+				rtm::scalarf parent_shell_distance = rtm::scalar_set(0.0F);
+				for (uint32_t sample_index = 0; sample_index < num_samples; ++sample_index)
+				{
+					const rtm::quatf raw_rotation = raw_bone_stream.rotations.get_sample_clamped(sample_index);
+					const rtm::vector4f raw_translation = raw_bone_stream.translations.get_sample_clamped(sample_index);
+					const rtm::vector4f raw_scale = raw_bone_stream.scales.get_sample_clamped(sample_index);
+
+					rtm::qvvf raw_transform = rtm::qvv_set(raw_rotation, raw_translation, raw_scale);
+
+					if (has_additive_base)
+					{
+						// If we are additive, we must apply our local transform on the base to figure out
+						// the true shell distance
+						const segment_context& base_segment = additive_base_clip_context.segments[0];
+						const transform_streams& base_bone_stream = base_segment.bone_streams[transform_index];
+
+						// The sample time is calculated from the full clip duration to be consistent with decompression
+						const float sample_time = rtm::scalar_min(float(sample_index) / raw_clip_context.sample_rate, raw_clip_context.duration);
+
+						const float normalized_sample_time = base_segment.num_samples > 1 ? (sample_time / raw_clip_context.duration) : 0.0F;
+						const float additive_sample_time = base_segment.num_samples > 1 ? (normalized_sample_time * additive_base_clip_context.duration) : 0.0F;
+
+						// With uniform sample distributions, we do not interpolate.
+						const uint32_t base_sample_index = get_uniform_sample_key(base_segment, additive_sample_time);
+
+						const rtm::quatf base_rotation = base_bone_stream.rotations.get_sample_clamped(base_sample_index);
+						const rtm::vector4f base_translation = base_bone_stream.translations.get_sample_clamped(base_sample_index);
+						const rtm::vector4f base_scale = base_bone_stream.scales.get_sample_clamped(base_sample_index);
+
+						const rtm::qvvf base_transform = rtm::qvv_set(base_rotation, base_translation, base_scale);
+						raw_transform = apply_additive_to_base(raw_clip_context.additive_format, base_transform, raw_transform);
+					}
+
+					const rtm::vector4f raw_vtx0 = rtm::qvv_mul_point3(vtx0, raw_transform);
+					const rtm::vector4f raw_vtx1 = rtm::qvv_mul_point3(vtx1, raw_transform);
+					const rtm::vector4f raw_vtx2 = rtm::qvv_mul_point3(vtx2, raw_transform);
+
+					const rtm::scalarf vtx0_distance = rtm::vector_length3(raw_vtx0);
+					const rtm::scalarf vtx1_distance = rtm::vector_length3(raw_vtx1);
+					const rtm::scalarf vtx2_distance = rtm::vector_length3(raw_vtx2);
+
+					const rtm::scalarf transform_length = rtm::scalar_max(rtm::scalar_max(vtx0_distance, vtx1_distance), vtx2_distance);
+					parent_shell_distance = rtm::scalar_max(parent_shell_distance, transform_length);
+				}
+
+				shell.parent_shell_distance = rtm::scalar_cast(parent_shell_distance);
+
+				const transform_metadata& metadata = raw_clip_context.metadata[transform_index];
+
+				// Add precision since we want to make sure to encompass the maximum amount of error allowed
+				// Add it only for non-dominant transforms to account for the error they introduce
+				// Dominant transforms will use their own precision
+				// If our shell distance has changed, we are non-dominant since a dominant child updated it
+				if (shell.local_shell_distance != metadata.shell_distance)
+					shell.parent_shell_distance += metadata.precision;
+
+				if (metadata.parent_index != k_invalid_track_index)
+				{
+					// We have a parent, propagate our shell distance if we are a dominant transform
+					// We are a dominant transform if our shell distance in parent space is larger
+					// than our parent's shell distance in local space. Otherwise, if we are smaller
+					// or equal, it means that the full range of motion of our transform fits within
+					// the parent's shell distance.
+
+					rigid_shell_metadata_t& parent_shell = shell_metadata[metadata.parent_index];
+
+					if (shell.parent_shell_distance > parent_shell.local_shell_distance)
+					{
+						// We are the new dominant transform, use our shell distance and precision
+						parent_shell.local_shell_distance = shell.parent_shell_distance;
+						parent_shell.precision = shell.precision;
+					}
+				}
+			}
+
+			return shell_metadata;
+		}
+
+		// We use the raw data to compute the rigid shell
+		// For each transform, its rigid shell is formed by the dominant joint (itself or a child)
+		// We compute the largest value over the whole segment per transform
+		inline void compute_segment_shell_distances(const segment_context& segment, const clip_context& additive_base_clip_context, rigid_shell_metadata_t* out_shell_metadata)
+		{
+			const uint32_t num_transforms = segment.num_bones;
+			if (num_transforms == 0)
+				return;	// No transforms present, no shell distances
+
+			const uint32_t num_samples = segment.num_samples;
+			if (num_samples == 0)
+				return;	// No samples present, no shell distances
+
+			const clip_context& owner_clip_context = *segment.clip;
+			const bool has_additive_base = owner_clip_context.has_additive_base;
+
+			// Initialize everything
+			for (uint32_t transform_index = 0; transform_index < num_transforms; ++transform_index)
+			{
+				const transform_metadata& metadata = owner_clip_context.metadata[transform_index];
+
+				out_shell_metadata[transform_index].local_shell_distance = metadata.shell_distance;
+				out_shell_metadata[transform_index].precision = metadata.precision;
+				out_shell_metadata[transform_index].parent_shell_distance = 0.0F;
+			}
+
+			// Iterate from leaf transforms towards their root, we want to bubble up our shell distance
+			for (const uint32_t transform_index : make_reverse_iterator(owner_clip_context.sorted_transforms_parent_first, num_transforms))
+			{
+				const transform_streams& segment_bone_stream = segment.bone_streams[transform_index];
+
+				rigid_shell_metadata_t& shell = out_shell_metadata[transform_index];
+
+				// Use the accumulated shell distance so far to see how far it deforms with our local transform
+				const rtm::vector4f vtx0 = rtm::vector_set(shell.local_shell_distance, 0.0F, 0.0F);
+				const rtm::vector4f vtx1 = rtm::vector_set(0.0F, shell.local_shell_distance, 0.0F);
+				const rtm::vector4f vtx2 = rtm::vector_set(0.0F, 0.0F, shell.local_shell_distance);
+
+				// Calculate the shell distance in parent space
+				rtm::scalarf parent_shell_distance = rtm::scalar_set(0.0F);
+				for (uint32_t sample_index = 0; sample_index < num_samples; ++sample_index)
+				{
+					const rtm::quatf raw_rotation = segment_bone_stream.rotations.get_sample_clamped(sample_index);
+					const rtm::vector4f raw_translation = segment_bone_stream.translations.get_sample_clamped(sample_index);
+					const rtm::vector4f raw_scale = segment_bone_stream.scales.get_sample_clamped(sample_index);
+
+					rtm::qvvf raw_transform = rtm::qvv_set(raw_rotation, raw_translation, raw_scale);
+
+					if (has_additive_base)
+					{
+						// If we are additive, we must apply our local transform on the base to figure out
+						// the true shell distance
+						const segment_context& base_segment = additive_base_clip_context.segments[0];
+						const transform_streams& base_bone_stream = base_segment.bone_streams[transform_index];
+
+						// The sample time is calculated from the full clip duration to be consistent with decompression
+						const float sample_time = rtm::scalar_min(float(sample_index + segment.clip_sample_offset) / owner_clip_context.sample_rate, owner_clip_context.duration);
+
+						const float normalized_sample_time = base_segment.num_samples > 1 ? (sample_time / owner_clip_context.duration) : 0.0F;
+						const float additive_sample_time = base_segment.num_samples > 1 ? (normalized_sample_time * additive_base_clip_context.duration) : 0.0F;
+
+						// With uniform sample distributions, we do not interpolate.
+						const uint32_t base_sample_index = get_uniform_sample_key(base_segment, additive_sample_time);
+
+						const rtm::quatf base_rotation = base_bone_stream.rotations.get_sample_clamped(base_sample_index);
+						const rtm::vector4f base_translation = base_bone_stream.translations.get_sample_clamped(base_sample_index);
+						const rtm::vector4f base_scale = base_bone_stream.scales.get_sample_clamped(base_sample_index);
+
+						const rtm::qvvf base_transform = rtm::qvv_set(base_rotation, base_translation, base_scale);
+						raw_transform = apply_additive_to_base(owner_clip_context.additive_format, base_transform, raw_transform);
+					}
+
+					const rtm::vector4f raw_vtx0 = rtm::qvv_mul_point3(vtx0, raw_transform);
+					const rtm::vector4f raw_vtx1 = rtm::qvv_mul_point3(vtx1, raw_transform);
+					const rtm::vector4f raw_vtx2 = rtm::qvv_mul_point3(vtx2, raw_transform);
+
+					const rtm::scalarf vtx0_distance = rtm::vector_length3(raw_vtx0);
+					const rtm::scalarf vtx1_distance = rtm::vector_length3(raw_vtx1);
+					const rtm::scalarf vtx2_distance = rtm::vector_length3(raw_vtx2);
+
+					const rtm::scalarf transform_length = rtm::scalar_max(rtm::scalar_max(vtx0_distance, vtx1_distance), vtx2_distance);
+					parent_shell_distance = rtm::scalar_max(parent_shell_distance, transform_length);
+				}
+
+				shell.parent_shell_distance = rtm::scalar_cast(parent_shell_distance);
+
+				const transform_metadata& metadata = owner_clip_context.metadata[transform_index];
+
+				// Add precision since we want to make sure to encompass the maximum amount of error allowed
+				// Add it only for non-dominant transforms to account for the error they introduce
+				// Dominant transforms will use their own precision
+				// If our shell distance has changed, we are non-dominant since a dominant child updated it
+				if (shell.local_shell_distance != metadata.shell_distance)
+					shell.parent_shell_distance += metadata.precision;
+
+				if (metadata.parent_index != k_invalid_track_index)
+				{
+					// We have a parent, propagate our shell distance if we are a dominant transform
+					// We are a dominant transform if our shell distance in parent space is larger
+					// than our parent's shell distance in local space. Otherwise, if we are smaller
+					// or equal, it means that the full range of motion of our transform fits within
+					// the parent's shell distance.
+
+					rigid_shell_metadata_t& parent_shell = out_shell_metadata[metadata.parent_index];
+
+					if (shell.parent_shell_distance > parent_shell.local_shell_distance)
+					{
+						// We are the new dominant transform, use our shell distance and precision
+						parent_shell.local_shell_distance = shell.parent_shell_distance;
+						parent_shell.precision = shell.precision;
+					}
+				}
+			}
+		}
+	}
+
+	ACL_IMPL_VERSION_NAMESPACE_END
+}
+
+ACL_IMPL_FILE_PRAGMA_POP
diff --git a/includes/acl/compression/impl/sample_streams.h b/includes/acl/compression/impl/sample_streams.h
--- a/includes/acl/compression/impl/sample_streams.h
+++ b/includes/acl/compression/impl/sample_streams.h
@@ -164,52 +164,27 @@ namespace acl
 			const clip_context* clip = segment->clip;
 			const rotation_format8 format = bone_steams.rotations.get_rotation_format();
 
-			rtm::vector4f rotation;
+			// Pack and unpack at our desired bit rate
+			rtm::vector4f packed_rotation;
+
 			if (is_constant_bit_rate(bit_rate))
 			{
-
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				const track_stream_range& rotation_range = segment->ranges[bone_steams.bone_index].rotation;
-				rotation = rotation_range.get_weighted_average();
-#else
-				const uint8_t* quantized_ptr = raw_bone_steams.rotations.get_raw_sample_ptr(segment->clip_sample_offset);
-				rotation = acl_impl::load_rotation_sample(quantized_ptr, rotation_format8::quatf_full, k_invalid_bit_rate);
-				rotation = convert_rotation(rotation, rotation_format8::quatf_full, format);
-#endif
-
+				packed_rotation = decay_vector3_u48(bone_steams.constant_rotation);
 			}
 			else if (is_raw_bit_rate(bit_rate))
 			{
 				const uint8_t* quantized_ptr = raw_bone_steams.rotations.get_raw_sample_ptr(segment->clip_sample_offset + sample_index);
-				rotation = acl_impl::load_rotation_sample(quantized_ptr, rotation_format8::quatf_full, k_invalid_bit_rate);
-				rotation = convert_rotation(rotation, rotation_format8::quatf_full, format);
+				const rtm::vector4f rotation = acl_impl::load_rotation_sample(quantized_ptr, rotation_format8::quatf_full, k_invalid_bit_rate);
+				packed_rotation = convert_rotation(rotation, rotation_format8::quatf_full, format);
 			}
 			else
 			{
 				const uint8_t* quantized_ptr = bone_steams.rotations.get_raw_sample_ptr(sample_index);
-				rotation = acl_impl::load_rotation_sample(quantized_ptr, format, 0);
-			}
-
-			// Pack and unpack at our desired bit rate
-			const uint32_t num_bits_at_bit_rate = get_num_bits_at_bit_rate(bit_rate);
-			rtm::vector4f packed_rotation;
+				const rtm::vector4f rotation = acl_impl::load_rotation_sample(quantized_ptr, format, 0);
 
-			if (is_constant_bit_rate(bit_rate))
-			{
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				packed_rotation = decay_vector3_u48(rotation);
-#else
-				const transform_range& clip_bone_range = segment->clip->ranges[bone_steams.bone_index];
-				const rtm::vector4f normalized_rotation = normalize_sample(rotation, clip_bone_range.rotation);
-
-				packed_rotation = decay_vector3_u48(normalized_rotation);
-#endif
-
-			}
-			else if (is_raw_bit_rate(bit_rate))
-				packed_rotation = rotation;
-			else
+				const uint32_t num_bits_at_bit_rate = get_num_bits_at_bit_rate(bit_rate);
 				packed_rotation = decay_vector3_uXX(rotation, num_bits_at_bit_rate);
+			}
 
 			if (!is_raw_bit_rate(bit_rate))
 			{
@@ -327,39 +302,10 @@ namespace acl
 		// Gets a translation sample at the specified bit rate
 		inline rtm::vector4f RTM_SIMD_CALL get_translation_sample(const transform_streams& bone_steams, const transform_streams& raw_bone_steams, uint32_t sample_index, uint8_t bit_rate)
 		{
+			ACL_ASSERT(bone_steams.translations.get_vector_format() == vector_format8::vector3f_full, "Expected floating point vector format");
+
 			const segment_context* segment = bone_steams.segment;
 			const clip_context* clip = segment->clip;
-			const vector_format8 format = bone_steams.translations.get_vector_format();
-
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			rtm::vector4f translation;
-			if (is_constant_bit_rate(bit_rate))
-			{
-				const track_stream_range& translation_range = segment->ranges[bone_steams.bone_index].translation;
-				translation = translation_range.get_weighted_average();
-			}
-			else
-			{
-				const uint8_t* quantized_ptr;
-				if (is_raw_bit_rate(bit_rate))
-					quantized_ptr = raw_bone_steams.translations.get_raw_sample_ptr(segment->clip_sample_offset + sample_index);
-				else
-					quantized_ptr = bone_steams.translations.get_raw_sample_ptr(sample_index);
-
-				translation = acl_impl::load_vector_sample(quantized_ptr, format, 0);
-			}
-#else
-			const uint8_t* quantized_ptr;
-			if (is_constant_bit_rate(bit_rate))
-				quantized_ptr = raw_bone_steams.translations.get_raw_sample_ptr(segment->clip_sample_offset);
-			else if (is_raw_bit_rate(bit_rate))
-				quantized_ptr = raw_bone_steams.translations.get_raw_sample_ptr(segment->clip_sample_offset + sample_index);
-			else
-				quantized_ptr = bone_steams.translations.get_raw_sample_ptr(sample_index);
-
-			const rtm::vector4f translation = acl_impl::load_vector_sample(quantized_ptr, format, 0);
-#endif
-
 			ACL_ASSERT(clip->are_translations_normalized, "Translations must be normalized to support variable bit rates.");
 
 			// Pack and unpack at our desired bit rate
@@ -368,21 +314,16 @@ namespace acl
 			if (is_constant_bit_rate(bit_rate))
 			{
 				ACL_ASSERT(segment->are_translations_normalized, "Translations must be normalized to support variable bit rates.");
-
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				packed_translation = decay_vector3_u48(translation);
-#else
-				const transform_range& clip_bone_range = segment->clip->ranges[bone_steams.bone_index];
-				const rtm::vector4f normalized_translation = normalize_sample(translation, clip_bone_range.translation);
-
-				packed_translation = decay_vector3_u48(normalized_translation);
-#endif
-
+				packed_translation = decay_vector3_u48(bone_steams.constant_translation);
 			}
 			else if (is_raw_bit_rate(bit_rate))
-				packed_translation = translation;
+			{
+				packed_translation = raw_bone_steams.translations.get_sample(segment->clip_sample_offset + sample_index);
+			}
 			else
 			{
+				const rtm::vector4f translation = bone_steams.translations.get_sample(sample_index);
+
 				const uint32_t num_bits_at_bit_rate = get_num_bits_at_bit_rate(bit_rate);
 				packed_translation = decay_vector3_uXX(translation, num_bits_at_bit_rate);
 			}
@@ -500,39 +441,10 @@ namespace acl
 		// Gets a scale sample at the specified bit rate
 		inline rtm::vector4f RTM_SIMD_CALL get_scale_sample(const transform_streams& bone_steams, const transform_streams& raw_bone_steams, uint32_t sample_index, uint8_t bit_rate)
 		{
+			ACL_ASSERT(bone_steams.scales.get_vector_format() == vector_format8::vector3f_full, "Expected floating point vector format");
+
 			const segment_context* segment = bone_steams.segment;
 			const clip_context* clip = segment->clip;
-			const vector_format8 format = bone_steams.scales.get_vector_format();
-
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			rtm::vector4f scale;
-			if (is_constant_bit_rate(bit_rate))
-			{
-				const track_stream_range& scale_range = segment->ranges[bone_steams.bone_index].scale;
-				scale = scale_range.get_weighted_average();
-			}
-			else
-			{
-				const uint8_t* quantized_ptr;
-				if (is_raw_bit_rate(bit_rate))
-					quantized_ptr = raw_bone_steams.scales.get_raw_sample_ptr(segment->clip_sample_offset + sample_index);
-				else
-					quantized_ptr = bone_steams.scales.get_raw_sample_ptr(sample_index);
-
-				scale = acl_impl::load_vector_sample(quantized_ptr, format, 0);
-			}
-#else
-			const uint8_t* quantized_ptr;
-			if (is_constant_bit_rate(bit_rate))
-				quantized_ptr = raw_bone_steams.scales.get_raw_sample_ptr(segment->clip_sample_offset);
-			else if (is_raw_bit_rate(bit_rate))
-				quantized_ptr = raw_bone_steams.scales.get_raw_sample_ptr(segment->clip_sample_offset + sample_index);
-			else
-				quantized_ptr = bone_steams.scales.get_raw_sample_ptr(sample_index);
-
-			const rtm::vector4f scale = acl_impl::load_vector_sample(quantized_ptr, format, 0);
-#endif
-
 			ACL_ASSERT(clip->are_scales_normalized, "Scales must be normalized to support variable bit rates.");
 
 			// Pack and unpack at our desired bit rate
@@ -540,22 +452,17 @@ namespace acl
 
 			if (is_constant_bit_rate(bit_rate))
 			{
-				ACL_ASSERT(segment->are_scales_normalized, "Translations must be normalized to support variable bit rates.");
-
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				packed_scale = decay_vector3_u48(scale);
-#else
-				const transform_range& clip_bone_range = segment->clip->ranges[bone_steams.bone_index];
-				const rtm::vector4f normalized_scale = normalize_sample(scale, clip_bone_range.scale);
-
-				packed_scale = decay_vector3_u48(normalized_scale);
-#endif
-
+				ACL_ASSERT(segment->are_scales_normalized, "Scales must be normalized to support variable bit rates.");
+				packed_scale = decay_vector3_u48(bone_steams.constant_scale);
 			}
 			else if (is_raw_bit_rate(bit_rate))
-				packed_scale = scale;
+			{
+				packed_scale = raw_bone_steams.scales.get_sample(segment->clip_sample_offset + sample_index);
+			}
 			else
 			{
+				const rtm::vector4f scale = bone_steams.scales.get_sample(sample_index);
+
 				const uint32_t num_bits_at_bit_rate = get_num_bits_at_bit_rate(bit_rate);
 				packed_scale = decay_vector3_uXX(scale, num_bits_at_bit_rate);
 			}
@@ -692,33 +599,6 @@ namespace acl
 			return rotation;
 		}
 
-		RTM_FORCE_INLINE rtm::quatf RTM_SIMD_CALL sample_rotation(const sample_context& context, const transform_streams& bone_stream, const transform_streams& raw_bone_stream, bool is_rotation_variable, rotation_format8 rotation_format)
-		{
-			rtm::quatf rotation;
-			if (bone_stream.is_rotation_default)
-				rotation = bone_stream.default_value.rotation;
-			else if (bone_stream.is_rotation_constant)
-			{
-				if (is_rotation_variable)
-					rotation = get_rotation_sample(raw_bone_stream, 0);
-				else
-					rotation = get_rotation_sample(raw_bone_stream, 0, rotation_format);
-
-				rotation = rtm::quat_normalize(rotation);
-			}
-			else
-			{
-				if (is_rotation_variable)
-					rotation = get_rotation_sample(bone_stream, raw_bone_stream, context.sample_key, context.bit_rates.rotation);
-				else
-					rotation = get_rotation_sample(bone_stream, context.sample_key, rotation_format);
-
-				rotation = rtm::quat_normalize(rotation);
-			}
-
-			return rotation;
-		}
-
 		RTM_FORCE_INLINE rtm::vector4f RTM_SIMD_CALL sample_translation(const sample_context& context, const transform_streams& bone_stream)
 		{
 			if (bone_stream.is_translation_default)
@@ -729,18 +609,6 @@ namespace acl
 				return get_translation_sample(bone_stream, context.sample_key);
 		}
 
-		RTM_FORCE_INLINE rtm::vector4f RTM_SIMD_CALL sample_translation(const sample_context& context, const transform_streams& bone_stream, const transform_streams& raw_bone_stream, bool is_translation_variable, vector_format8 translation_format)
-		{
-			if (bone_stream.is_translation_default)
-				return bone_stream.default_value.translation;
-			else if (bone_stream.is_translation_constant)
-				return get_translation_sample(raw_bone_stream, 0, vector_format8::vector3f_full);
-			else if (is_translation_variable)
-				return get_translation_sample(bone_stream, raw_bone_stream, context.sample_key, context.bit_rates.translation);
-			else
-				return get_translation_sample(bone_stream, context.sample_key, translation_format);
-		}
-
 		RTM_FORCE_INLINE rtm::vector4f RTM_SIMD_CALL sample_scale(const sample_context& context, const transform_streams& bone_stream)
 		{
 			if (bone_stream.is_scale_default)
@@ -751,18 +619,8 @@ namespace acl
 				return get_scale_sample(bone_stream, context.sample_key);
 		}
 
-		RTM_FORCE_INLINE rtm::vector4f RTM_SIMD_CALL sample_scale(const sample_context& context, const transform_streams& bone_stream, const transform_streams& raw_bone_stream, bool is_scale_variable, vector_format8 scale_format)
-		{
-			if (bone_stream.is_scale_default)
-				return bone_stream.default_value.scale;
-			else if (bone_stream.is_scale_constant)
-				return get_scale_sample(raw_bone_stream, 0, vector_format8::vector3f_full);
-			else if (is_scale_variable)
-				return get_scale_sample(bone_stream, raw_bone_stream, context.sample_key, context.bit_rates.scale);
-			else
-				return get_scale_sample(bone_stream, context.sample_key, scale_format);
-		}
-
+		// Samples all transforms at a point in time
+		// Transforms can be raw or quantized
 		inline void sample_streams(const transform_streams* bone_streams, uint32_t num_bones, float sample_time, rtm::qvvf* out_local_pose)
 		{
 			const segment_context* segment_context = bone_streams->segment;
@@ -788,177 +646,6 @@ namespace acl
 				out_local_pose[bone_index] = rtm::qvv_set(rotation, translation, scale);
 			}
 		}
-
-		inline void sample_stream(const transform_streams* bone_streams, uint32_t num_bones, float sample_time, uint32_t bone_index, rtm::qvvf* out_local_pose)
-		{
-			(void)num_bones;
-
-			const segment_context* segment_context = bone_streams->segment;
-			const bool has_scale = segment_context->clip->has_scale;
-
-			// With uniform sample distributions, we do not interpolate.
-			const uint32_t sample_key = get_uniform_sample_key(*segment_context, sample_time);
-
-			acl_impl::sample_context context;
-			context.track_index = bone_index;
-			context.sample_key = sample_key;
-			context.sample_time = sample_time;
-
-			const transform_streams& bone_stream = bone_streams[bone_index];
-
-			const rtm::quatf rotation = acl_impl::sample_rotation(context, bone_stream);
-			const rtm::vector4f translation = acl_impl::sample_translation(context, bone_stream);
-			const rtm::vector4f scale = has_scale ? acl_impl::sample_scale(context, bone_stream) : bone_stream.default_value.scale;
-
-			out_local_pose[bone_index] = rtm::qvv_set(rotation, translation, scale);
-		}
-
-		inline void sample_streams_hierarchical(const transform_streams* bone_streams, uint32_t num_bones, float sample_time, uint32_t bone_index, rtm::qvvf* out_local_pose)
-		{
-			(void)num_bones;
-
-			const segment_context* segment_context = bone_streams->segment;
-			const bool has_scale = segment_context->clip->has_scale;
-
-			// With uniform sample distributions, we do not interpolate.
-			const uint32_t sample_key = get_uniform_sample_key(*segment_context, sample_time);
-
-			acl_impl::sample_context context;
-			context.sample_key = sample_key;
-			context.sample_time = sample_time;
-
-			uint32_t current_bone_index = bone_index;
-			while (current_bone_index != k_invalid_track_index)
-			{
-				context.track_index = current_bone_index;
-
-				const transform_streams& bone_stream = bone_streams[current_bone_index];
-
-				const rtm::quatf rotation = acl_impl::sample_rotation(context, bone_stream);
-				const rtm::vector4f translation = acl_impl::sample_translation(context, bone_stream);
-				const rtm::vector4f scale = has_scale ? acl_impl::sample_scale(context, bone_stream) : bone_stream.default_value.scale;
-
-				out_local_pose[current_bone_index] = rtm::qvv_set(rotation, translation, scale);
-				current_bone_index = bone_stream.parent_bone_index;
-			}
-		}
-
-		inline void sample_streams(const transform_streams* bone_streams, const transform_streams* raw_bone_steams, uint32_t num_bones, float sample_time, const transform_bit_rates* bit_rates, rotation_format8 rotation_format, vector_format8 translation_format, vector_format8 scale_format, rtm::qvvf* out_local_pose)
-		{
-			const bool is_rotation_variable = is_rotation_format_variable(rotation_format);
-			const bool is_translation_variable = is_vector_format_variable(translation_format);
-			const bool is_scale_variable = is_vector_format_variable(scale_format);
-
-			const segment_context* segment_context = bone_streams->segment;
-			const bool has_scale = segment_context->clip->has_scale;
-
-			// With uniform sample distributions, we do not interpolate.
-			const uint32_t sample_key = get_uniform_sample_key(*segment_context, sample_time);
-
-			acl_impl::sample_context context;
-			context.sample_key = sample_key;
-			context.sample_time = sample_time;
-
-			for (uint32_t bone_index = 0; bone_index < num_bones; ++bone_index)
-			{
-				context.track_index = bone_index;
-				context.bit_rates = bit_rates[bone_index];
-
-				const transform_streams& bone_stream = bone_streams[bone_index];
-				const transform_streams& raw_bone_steam = raw_bone_steams[bone_index];
-
-				const rtm::quatf rotation = acl_impl::sample_rotation(context, bone_stream, raw_bone_steam, is_rotation_variable, rotation_format);
-				const rtm::vector4f translation = acl_impl::sample_translation(context, bone_stream, raw_bone_steam, is_translation_variable, translation_format);
-				const rtm::vector4f scale = has_scale ? acl_impl::sample_scale(context, bone_stream, raw_bone_steam, is_scale_variable, scale_format) : bone_stream.default_value.scale;
-
-				out_local_pose[bone_index] = rtm::qvv_set(rotation, translation, scale);
-			}
-		}
-
-		inline void sample_stream(const transform_streams* bone_streams, const transform_streams* raw_bone_steams, uint32_t num_bones, float sample_time, uint32_t bone_index, const transform_bit_rates* bit_rates, rotation_format8 rotation_format, vector_format8 translation_format, vector_format8 scale_format, rtm::qvvf* out_local_pose)
-		{
-			(void)num_bones;
-
-			const bool is_rotation_variable = is_rotation_format_variable(rotation_format);
-			const bool is_translation_variable = is_vector_format_variable(translation_format);
-			const bool is_scale_variable = is_vector_format_variable(scale_format);
-
-			const segment_context* segment_context = bone_streams->segment;
-			const bool has_scale = segment_context->clip->has_scale;
-
-			// With uniform sample distributions, we do not interpolate.
-			const uint32_t sample_key = get_uniform_sample_key(*segment_context, sample_time);
-
-			acl_impl::sample_context context;
-			context.track_index = bone_index;
-			context.sample_key = sample_key;
-			context.sample_time = sample_time;
-			context.bit_rates = bit_rates[bone_index];
-
-			const transform_streams& bone_stream = bone_streams[bone_index];
-			const transform_streams& raw_bone_stream = raw_bone_steams[bone_index];
-
-			const rtm::quatf rotation = acl_impl::sample_rotation(context, bone_stream, raw_bone_stream, is_rotation_variable, rotation_format);
-			const rtm::vector4f translation = acl_impl::sample_translation(context, bone_stream, raw_bone_stream, is_translation_variable, translation_format);
-			const rtm::vector4f scale = has_scale ? acl_impl::sample_scale(context, bone_stream, raw_bone_stream, is_scale_variable, scale_format) : bone_stream.default_value.scale;
-
-			out_local_pose[bone_index] = rtm::qvv_set(rotation, translation, scale);
-		}
-
-		inline void sample_streams_hierarchical(const transform_streams* bone_streams, const transform_streams* raw_bone_steams, uint32_t num_bones, float sample_time, uint32_t bone_index, const transform_bit_rates* bit_rates, rotation_format8 rotation_format, vector_format8 translation_format, vector_format8 scale_format, rtm::qvvf* out_local_pose)
-		{
-			(void)num_bones;
-
-			const bool is_rotation_variable = is_rotation_format_variable(rotation_format);
-			const bool is_translation_variable = is_vector_format_variable(translation_format);
-			const bool is_scale_variable = is_vector_format_variable(scale_format);
-
-			const segment_context* segment_context = bone_streams->segment;
-			const bool has_scale = segment_context->clip->has_scale;
-
-			// With uniform sample distributions, we do not interpolate.
-			const uint32_t sample_key = get_uniform_sample_key(*segment_context, sample_time);
-
-			acl_impl::sample_context context;
-			context.sample_key = sample_key;
-			context.sample_time = sample_time;
-
-			uint32_t current_bone_index = bone_index;
-			while (current_bone_index != k_invalid_track_index)
-			{
-				context.track_index = current_bone_index;
-				context.bit_rates = bit_rates[current_bone_index];
-
-				const transform_streams& bone_stream = bone_streams[current_bone_index];
-				const transform_streams& raw_bone_stream = raw_bone_steams[current_bone_index];
-
-				const rtm::quatf rotation = acl_impl::sample_rotation(context, bone_stream, raw_bone_stream, is_rotation_variable, rotation_format);
-				const rtm::vector4f translation = acl_impl::sample_translation(context, bone_stream, raw_bone_stream, is_translation_variable, translation_format);
-				const rtm::vector4f scale = has_scale ? acl_impl::sample_scale(context, bone_stream, raw_bone_stream, is_scale_variable, scale_format) : bone_stream.default_value.scale;
-
-				out_local_pose[current_bone_index] = rtm::qvv_set(rotation, translation, scale);
-				current_bone_index = bone_stream.parent_bone_index;
-			}
-		}
-
-		inline void sample_streams(const transform_streams* bone_streams, uint32_t num_bones, uint32_t sample_index, rtm::qvvf* out_local_pose)
-		{
-			for (uint32_t bone_index = 0; bone_index < num_bones; ++bone_index)
-			{
-				const transform_streams& bone_stream = bone_streams[bone_index];
-
-				const uint32_t rotation_sample_index = !bone_stream.is_rotation_constant ? sample_index : 0;
-				const rtm::quatf rotation = get_rotation_sample(bone_stream, rotation_sample_index);
-
-				const uint32_t translation_sample_index = !bone_stream.is_translation_constant ? sample_index : 0;
-				const rtm::vector4f translation = get_translation_sample(bone_stream, translation_sample_index);
-
-				const uint32_t scale_sample_index = !bone_stream.is_scale_constant ? sample_index : 0;
-				const rtm::vector4f scale = get_scale_sample(bone_stream, scale_sample_index);
-
-				out_local_pose[bone_index] = rtm::qvv_set(rotation, translation, scale);
-			}
-		}
 	}
 
 	ACL_IMPL_VERSION_NAMESPACE_END
diff --git a/includes/acl/compression/impl/segment_streams.h b/includes/acl/compression/impl/segment_streams.h
--- a/includes/acl/compression/impl/segment_streams.h
+++ b/includes/acl/compression/impl/segment_streams.h
@@ -225,6 +225,11 @@ namespace acl
 					segment_bone_stream.is_translation_default = clip_bone_stream.is_translation_default;
 					segment_bone_stream.is_scale_constant = clip_bone_stream.is_scale_constant;
 					segment_bone_stream.is_scale_default = clip_bone_stream.is_scale_default;
+
+					// Extract our potential segment constant values now before we normalize over the segment
+					segment_bone_stream.constant_rotation = segment_bone_stream.rotations.get_raw_sample<rtm::vector4f>(0);
+					segment_bone_stream.constant_translation = segment_bone_stream.translations.get_raw_sample<rtm::vector4f>(0);
+					segment_bone_stream.constant_scale = segment_bone_stream.scales.get_raw_sample<rtm::vector4f>(0);
 				}
 
 				clip_sample_index += num_samples_in_segment;
diff --git a/includes/acl/compression/impl/track_stream.h b/includes/acl/compression/impl/track_stream.h
--- a/includes/acl/compression/impl/track_stream.h
+++ b/includes/acl/compression/impl/track_stream.h
@@ -205,7 +205,7 @@ namespace acl
 			animation_track_type8	m_type;
 			track_format8			m_format;
 			uint8_t					m_bit_rate;
-			};
+		};
 
 		class rotation_track_stream final : public track_stream
 		{
@@ -235,6 +235,30 @@ namespace acl
 			}
 
 			rotation_format8 get_rotation_format() const { return m_format.rotation; }
+
+			rtm::quatf RTM_SIMD_CALL get_sample(uint32_t sample_index) const
+			{
+				const rtm::vector4f rotation = get_raw_sample<rtm::vector4f>(sample_index);
+
+				switch (m_format.rotation)
+				{
+				case rotation_format8::quatf_full:
+					return rtm::vector_to_quat(rotation);
+				case rotation_format8::quatf_drop_w_full:
+				case rotation_format8::quatf_drop_w_variable:
+					// quat_from_positive_w might not yield an accurate quaternion because the square-root instruction
+					// isn't very accurate on small inputs, we need to normalize
+					return rtm::quat_normalize(rtm::quat_from_positive_w(rotation));
+				default:
+					ACL_ASSERT(false, "Invalid or unsupported rotation format: %s", get_rotation_format_name(m_format.rotation));
+					return rtm::vector_to_quat(rotation);
+				}
+			};
+
+			rtm::quatf RTM_SIMD_CALL get_sample_clamped(uint32_t sample_index) const
+			{
+				return get_sample(std::min(sample_index, m_num_samples - 1));
+			}
 		};
 
 		class translation_track_stream final : public track_stream
@@ -265,6 +289,16 @@ namespace acl
 			}
 
 			vector_format8 get_vector_format() const { return m_format.vector; }
+
+			rtm::vector4f RTM_SIMD_CALL get_sample(uint32_t sample_index) const
+			{
+				return get_raw_sample<rtm::vector4f>(sample_index);
+			}
+
+			rtm::vector4f RTM_SIMD_CALL get_sample_clamped(uint32_t sample_index) const
+			{
+				return get_sample(std::min(sample_index, m_num_samples - 1));
+			}
 		};
 
 		class scale_track_stream final : public track_stream
@@ -295,6 +329,16 @@ namespace acl
 			}
 
 			vector_format8 get_vector_format() const { return m_format.vector; }
+
+			rtm::vector4f RTM_SIMD_CALL get_sample(uint32_t sample_index) const
+			{
+				return get_raw_sample<rtm::vector4f>(sample_index);
+			}
+
+			rtm::vector4f RTM_SIMD_CALL get_sample_clamped(uint32_t sample_index) const
+			{
+				return get_sample(std::min(sample_index, m_num_samples - 1));
+			}
 		};
 
 		// For a rotation track, the extent only tells us if the track is constant or not
@@ -303,37 +347,20 @@ namespace acl
 		class track_stream_range
 		{
 		public:
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			static track_stream_range RTM_SIMD_CALL from_min_max(rtm::vector4f_arg0 min, rtm::vector4f_arg1 max, rtm::vector4f_arg2 weighted_average)
-			{
-				return track_stream_range(min, max, rtm::vector_sub(max, min), weighted_average);
-			}
-#else
 			static track_stream_range RTM_SIMD_CALL from_min_max(rtm::vector4f_arg0 min, rtm::vector4f_arg1 max)
 			{
 				return track_stream_range(min, max, rtm::vector_sub(max, min));
 			}
-#endif
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			static track_stream_range RTM_SIMD_CALL from_min_extent(rtm::vector4f_arg0 min, rtm::vector4f_arg1 extent, rtm::vector4f_arg2 weighted_average)
-			{
-				return track_stream_range(min, rtm::vector_add(min, extent), extent, weighted_average);
-			}
-#else
 			static track_stream_range RTM_SIMD_CALL from_min_extent(rtm::vector4f_arg0 min, rtm::vector4f_arg1 extent)
 			{
 				return track_stream_range(min, rtm::vector_add(min, extent), extent);
 			}
-#endif
 
 			track_stream_range()
 				: m_min(rtm::vector_zero())
 				, m_max(rtm::vector_zero())
 				, m_extent(rtm::vector_zero())
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				, m_weighted_average(rtm::vector_zero())
-#endif
 			{}
 
 			rtm::vector4f RTM_SIMD_CALL get_min() const { return m_min; }
@@ -352,23 +379,11 @@ namespace acl
 					return rtm::vector_all_less_equal(m_extent, rtm::vector_set(threshold));
 			}
 
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			rtm::vector4f RTM_SIMD_CALL get_weighted_average() const { return m_weighted_average; }
-#endif
-
 		private:
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			track_stream_range(rtm::vector4f_arg0 min, rtm::vector4f_arg1 max, rtm::vector4f_arg2 extent, rtm::vector4f_arg3 weighted_average)
-#else
 			track_stream_range(rtm::vector4f_arg0 min, rtm::vector4f_arg1 max, rtm::vector4f_arg2 extent)
-#endif
 				: m_min(min)
 				, m_max(max)
 				, m_extent(extent)
-
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-				, m_weighted_average(weighted_average)
-#endif
 			{
 				ACL_ASSERT(rtm::vector_all_greater_equal(max, min), "Max must be greater or equal to min");
 				ACL_ASSERT(rtm::vector_all_greater_equal(extent, rtm::vector_zero()) && rtm::vector_is_finite(extent), "Extent must be positive and finite");
@@ -377,11 +392,6 @@ namespace acl
 			rtm::vector4f	m_min;
 			rtm::vector4f	m_max;
 			rtm::vector4f	m_extent;
-
-#if defined(ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS)
-			rtm::vector4f	m_weighted_average;
-#endif
-
 		};
 
 		struct transform_range
@@ -397,6 +407,13 @@ namespace acl
 		{
 			rtm::qvvf default_value					= rtm::qvv_identity();
 
+			// Sample 0 before we normalize over the segment.
+			// This is used when a sub-track is constant over the segment.
+			// These values are normalized over the clip (but not over the segment).
+			rtm::vector4f constant_rotation			= rtm::vector_zero();
+			rtm::vector4f constant_translation		= rtm::vector_zero();
+			rtm::vector4f constant_scale			= rtm::vector_zero();
+
 			segment_context* segment				= nullptr;
 			uint32_t bone_index						= k_invalid_track_index;
 			uint32_t parent_bone_index				= k_invalid_track_index;
@@ -421,6 +438,9 @@ namespace acl
 			{
 				transform_streams copy;
 				copy.default_value = default_value;
+				copy.constant_rotation = constant_rotation;
+				copy.constant_translation = constant_translation;
+				copy.constant_scale = constant_scale;
 				copy.segment = segment;
 				copy.bone_index = bone_index;
 				copy.parent_bone_index = parent_bone_index;
diff --git a/includes/acl/compression/impl/transform_bit_rate_permutations.h b/includes/acl/compression/impl/transform_bit_rate_permutations.h
--- a/includes/acl/compression/impl/transform_bit_rate_permutations.h
+++ b/includes/acl/compression/impl/transform_bit_rate_permutations.h
@@ -39,7232 +39,16262 @@ namespace acl
 
 	namespace acl_impl
 	{
-		constexpr uint8_t k_local_bit_rate_permutations_no_scale[361][2] =
+		constexpr uint8_t k_local_bit_rate_permutations_no_scale[625][2] =
 		{
 			{ 0, 0 },		// 0 bits per transform
-			{ 0, 1 },		// 9 bits per transform
-			{ 1, 0 },		// 9 bits per transform
-			{ 0, 2 },		// 12 bits per transform
-			{ 2, 0 },		// 12 bits per transform
-			{ 0, 3 },		// 15 bits per transform
-			{ 3, 0 },		// 15 bits per transform
-			{ 0, 4 },		// 18 bits per transform
-			{ 1, 1 },		// 18 bits per transform
-			{ 4, 0 },		// 18 bits per transform
-			{ 0, 5 },		// 21 bits per transform
-			{ 1, 2 },		// 21 bits per transform
-			{ 2, 1 },		// 21 bits per transform
-			{ 5, 0 },		// 21 bits per transform
-			{ 0, 6 },		// 24 bits per transform
-			{ 1, 3 },		// 24 bits per transform
-			{ 2, 2 },		// 24 bits per transform
-			{ 3, 1 },		// 24 bits per transform
-			{ 6, 0 },		// 24 bits per transform
-			{ 0, 7 },		// 27 bits per transform
-			{ 1, 4 },		// 27 bits per transform
-			{ 2, 3 },		// 27 bits per transform
-			{ 3, 2 },		// 27 bits per transform
-			{ 4, 1 },		// 27 bits per transform
-			{ 7, 0 },		// 27 bits per transform
-			{ 0, 8 },		// 30 bits per transform
-			{ 1, 5 },		// 30 bits per transform
-			{ 2, 4 },		// 30 bits per transform
-			{ 3, 3 },		// 30 bits per transform
-			{ 4, 2 },		// 30 bits per transform
-			{ 5, 1 },		// 30 bits per transform
-			{ 8, 0 },		// 30 bits per transform
-			{ 0, 9 },		// 33 bits per transform
-			{ 1, 6 },		// 33 bits per transform
-			{ 2, 5 },		// 33 bits per transform
-			{ 3, 4 },		// 33 bits per transform
-			{ 4, 3 },		// 33 bits per transform
-			{ 5, 2 },		// 33 bits per transform
-			{ 6, 1 },		// 33 bits per transform
-			{ 9, 0 },		// 33 bits per transform
-			{ 0, 10 },		// 36 bits per transform
-			{ 1, 7 },		// 36 bits per transform
-			{ 2, 6 },		// 36 bits per transform
-			{ 3, 5 },		// 36 bits per transform
-			{ 4, 4 },		// 36 bits per transform
-			{ 5, 3 },		// 36 bits per transform
-			{ 6, 2 },		// 36 bits per transform
-			{ 7, 1 },		// 36 bits per transform
-			{ 10, 0 },		// 36 bits per transform
-			{ 0, 11 },		// 39 bits per transform
-			{ 1, 8 },		// 39 bits per transform
-			{ 2, 7 },		// 39 bits per transform
-			{ 3, 6 },		// 39 bits per transform
-			{ 4, 5 },		// 39 bits per transform
-			{ 5, 4 },		// 39 bits per transform
-			{ 6, 3 },		// 39 bits per transform
-			{ 7, 2 },		// 39 bits per transform
-			{ 8, 1 },		// 39 bits per transform
-			{ 11, 0 },		// 39 bits per transform
-			{ 0, 12 },		// 42 bits per transform
-			{ 1, 9 },		// 42 bits per transform
-			{ 2, 8 },		// 42 bits per transform
-			{ 3, 7 },		// 42 bits per transform
-			{ 4, 6 },		// 42 bits per transform
-			{ 5, 5 },		// 42 bits per transform
-			{ 6, 4 },		// 42 bits per transform
-			{ 7, 3 },		// 42 bits per transform
-			{ 8, 2 },		// 42 bits per transform
-			{ 9, 1 },		// 42 bits per transform
-			{ 12, 0 },		// 42 bits per transform
-			{ 0, 13 },		// 45 bits per transform
-			{ 1, 10 },		// 45 bits per transform
-			{ 2, 9 },		// 45 bits per transform
-			{ 3, 8 },		// 45 bits per transform
-			{ 4, 7 },		// 45 bits per transform
-			{ 5, 6 },		// 45 bits per transform
-			{ 6, 5 },		// 45 bits per transform
-			{ 7, 4 },		// 45 bits per transform
-			{ 8, 3 },		// 45 bits per transform
-			{ 9, 2 },		// 45 bits per transform
-			{ 10, 1 },		// 45 bits per transform
-			{ 13, 0 },		// 45 bits per transform
-			{ 0, 14 },		// 48 bits per transform
-			{ 1, 11 },		// 48 bits per transform
-			{ 2, 10 },		// 48 bits per transform
-			{ 3, 9 },		// 48 bits per transform
-			{ 4, 8 },		// 48 bits per transform
-			{ 5, 7 },		// 48 bits per transform
-			{ 6, 6 },		// 48 bits per transform
-			{ 7, 5 },		// 48 bits per transform
-			{ 8, 4 },		// 48 bits per transform
-			{ 9, 3 },		// 48 bits per transform
-			{ 10, 2 },		// 48 bits per transform
-			{ 11, 1 },		// 48 bits per transform
-			{ 14, 0 },		// 48 bits per transform
-			{ 0, 15 },		// 51 bits per transform
-			{ 1, 12 },		// 51 bits per transform
-			{ 2, 11 },		// 51 bits per transform
-			{ 3, 10 },		// 51 bits per transform
-			{ 4, 9 },		// 51 bits per transform
-			{ 5, 8 },		// 51 bits per transform
-			{ 6, 7 },		// 51 bits per transform
-			{ 7, 6 },		// 51 bits per transform
-			{ 8, 5 },		// 51 bits per transform
-			{ 9, 4 },		// 51 bits per transform
-			{ 10, 3 },		// 51 bits per transform
-			{ 11, 2 },		// 51 bits per transform
-			{ 12, 1 },		// 51 bits per transform
-			{ 15, 0 },		// 51 bits per transform
-			{ 0, 16 },		// 54 bits per transform
-			{ 1, 13 },		// 54 bits per transform
-			{ 2, 12 },		// 54 bits per transform
-			{ 3, 11 },		// 54 bits per transform
-			{ 4, 10 },		// 54 bits per transform
-			{ 5, 9 },		// 54 bits per transform
-			{ 6, 8 },		// 54 bits per transform
-			{ 7, 7 },		// 54 bits per transform
-			{ 8, 6 },		// 54 bits per transform
-			{ 9, 5 },		// 54 bits per transform
-			{ 10, 4 },		// 54 bits per transform
-			{ 11, 3 },		// 54 bits per transform
-			{ 12, 2 },		// 54 bits per transform
-			{ 13, 1 },		// 54 bits per transform
-			{ 16, 0 },		// 54 bits per transform
-			{ 0, 17 },		// 57 bits per transform
-			{ 1, 14 },		// 57 bits per transform
-			{ 2, 13 },		// 57 bits per transform
-			{ 3, 12 },		// 57 bits per transform
-			{ 4, 11 },		// 57 bits per transform
-			{ 5, 10 },		// 57 bits per transform
-			{ 6, 9 },		// 57 bits per transform
-			{ 7, 8 },		// 57 bits per transform
-			{ 8, 7 },		// 57 bits per transform
-			{ 9, 6 },		// 57 bits per transform
-			{ 10, 5 },		// 57 bits per transform
-			{ 11, 4 },		// 57 bits per transform
-			{ 12, 3 },		// 57 bits per transform
-			{ 13, 2 },		// 57 bits per transform
-			{ 14, 1 },		// 57 bits per transform
-			{ 17, 0 },		// 57 bits per transform
-			{ 1, 15 },		// 60 bits per transform
-			{ 2, 14 },		// 60 bits per transform
-			{ 3, 13 },		// 60 bits per transform
-			{ 4, 12 },		// 60 bits per transform
-			{ 5, 11 },		// 60 bits per transform
-			{ 6, 10 },		// 60 bits per transform
-			{ 7, 9 },		// 60 bits per transform
-			{ 8, 8 },		// 60 bits per transform
-			{ 9, 7 },		// 60 bits per transform
-			{ 10, 6 },		// 60 bits per transform
-			{ 11, 5 },		// 60 bits per transform
-			{ 12, 4 },		// 60 bits per transform
-			{ 13, 3 },		// 60 bits per transform
-			{ 14, 2 },		// 60 bits per transform
-			{ 15, 1 },		// 60 bits per transform
-			{ 1, 16 },		// 63 bits per transform
-			{ 2, 15 },		// 63 bits per transform
-			{ 3, 14 },		// 63 bits per transform
-			{ 4, 13 },		// 63 bits per transform
-			{ 5, 12 },		// 63 bits per transform
-			{ 6, 11 },		// 63 bits per transform
-			{ 7, 10 },		// 63 bits per transform
-			{ 8, 9 },		// 63 bits per transform
-			{ 9, 8 },		// 63 bits per transform
-			{ 10, 7 },		// 63 bits per transform
-			{ 11, 6 },		// 63 bits per transform
-			{ 12, 5 },		// 63 bits per transform
-			{ 13, 4 },		// 63 bits per transform
-			{ 14, 3 },		// 63 bits per transform
-			{ 15, 2 },		// 63 bits per transform
-			{ 16, 1 },		// 63 bits per transform
-			{ 1, 17 },		// 66 bits per transform
-			{ 2, 16 },		// 66 bits per transform
-			{ 3, 15 },		// 66 bits per transform
-			{ 4, 14 },		// 66 bits per transform
-			{ 5, 13 },		// 66 bits per transform
-			{ 6, 12 },		// 66 bits per transform
-			{ 7, 11 },		// 66 bits per transform
-			{ 8, 10 },		// 66 bits per transform
-			{ 9, 9 },		// 66 bits per transform
-			{ 10, 8 },		// 66 bits per transform
-			{ 11, 7 },		// 66 bits per transform
-			{ 12, 6 },		// 66 bits per transform
-			{ 13, 5 },		// 66 bits per transform
-			{ 14, 4 },		// 66 bits per transform
-			{ 15, 3 },		// 66 bits per transform
-			{ 16, 2 },		// 66 bits per transform
-			{ 17, 1 },		// 66 bits per transform
-			{ 2, 17 },		// 69 bits per transform
-			{ 3, 16 },		// 69 bits per transform
-			{ 4, 15 },		// 69 bits per transform
-			{ 5, 14 },		// 69 bits per transform
-			{ 6, 13 },		// 69 bits per transform
-			{ 7, 12 },		// 69 bits per transform
-			{ 8, 11 },		// 69 bits per transform
-			{ 9, 10 },		// 69 bits per transform
-			{ 10, 9 },		// 69 bits per transform
-			{ 11, 8 },		// 69 bits per transform
-			{ 12, 7 },		// 69 bits per transform
-			{ 13, 6 },		// 69 bits per transform
-			{ 14, 5 },		// 69 bits per transform
-			{ 15, 4 },		// 69 bits per transform
-			{ 16, 3 },		// 69 bits per transform
-			{ 17, 2 },		// 69 bits per transform
-			{ 3, 17 },		// 72 bits per transform
-			{ 4, 16 },		// 72 bits per transform
-			{ 5, 15 },		// 72 bits per transform
-			{ 6, 14 },		// 72 bits per transform
-			{ 7, 13 },		// 72 bits per transform
-			{ 8, 12 },		// 72 bits per transform
-			{ 9, 11 },		// 72 bits per transform
-			{ 10, 10 },		// 72 bits per transform
-			{ 11, 9 },		// 72 bits per transform
-			{ 12, 8 },		// 72 bits per transform
-			{ 13, 7 },		// 72 bits per transform
-			{ 14, 6 },		// 72 bits per transform
-			{ 15, 5 },		// 72 bits per transform
-			{ 16, 4 },		// 72 bits per transform
-			{ 17, 3 },		// 72 bits per transform
-			{ 4, 17 },		// 75 bits per transform
-			{ 5, 16 },		// 75 bits per transform
-			{ 6, 15 },		// 75 bits per transform
-			{ 7, 14 },		// 75 bits per transform
-			{ 8, 13 },		// 75 bits per transform
-			{ 9, 12 },		// 75 bits per transform
-			{ 10, 11 },		// 75 bits per transform
-			{ 11, 10 },		// 75 bits per transform
-			{ 12, 9 },		// 75 bits per transform
-			{ 13, 8 },		// 75 bits per transform
-			{ 14, 7 },		// 75 bits per transform
-			{ 15, 6 },		// 75 bits per transform
-			{ 16, 5 },		// 75 bits per transform
-			{ 17, 4 },		// 75 bits per transform
-			{ 5, 17 },		// 78 bits per transform
-			{ 6, 16 },		// 78 bits per transform
-			{ 7, 15 },		// 78 bits per transform
-			{ 8, 14 },		// 78 bits per transform
-			{ 9, 13 },		// 78 bits per transform
-			{ 10, 12 },		// 78 bits per transform
-			{ 11, 11 },		// 78 bits per transform
-			{ 12, 10 },		// 78 bits per transform
-			{ 13, 9 },		// 78 bits per transform
-			{ 14, 8 },		// 78 bits per transform
-			{ 15, 7 },		// 78 bits per transform
-			{ 16, 6 },		// 78 bits per transform
-			{ 17, 5 },		// 78 bits per transform
-			{ 6, 17 },		// 81 bits per transform
-			{ 7, 16 },		// 81 bits per transform
-			{ 8, 15 },		// 81 bits per transform
-			{ 9, 14 },		// 81 bits per transform
-			{ 10, 13 },		// 81 bits per transform
-			{ 11, 12 },		// 81 bits per transform
-			{ 12, 11 },		// 81 bits per transform
-			{ 13, 10 },		// 81 bits per transform
-			{ 14, 9 },		// 81 bits per transform
-			{ 15, 8 },		// 81 bits per transform
-			{ 16, 7 },		// 81 bits per transform
-			{ 17, 6 },		// 81 bits per transform
-			{ 7, 17 },		// 84 bits per transform
-			{ 8, 16 },		// 84 bits per transform
-			{ 9, 15 },		// 84 bits per transform
-			{ 10, 14 },		// 84 bits per transform
-			{ 11, 13 },		// 84 bits per transform
-			{ 12, 12 },		// 84 bits per transform
-			{ 13, 11 },		// 84 bits per transform
-			{ 14, 10 },		// 84 bits per transform
-			{ 15, 9 },		// 84 bits per transform
-			{ 16, 8 },		// 84 bits per transform
-			{ 17, 7 },		// 84 bits per transform
-			{ 8, 17 },		// 87 bits per transform
-			{ 9, 16 },		// 87 bits per transform
-			{ 10, 15 },		// 87 bits per transform
-			{ 11, 14 },		// 87 bits per transform
-			{ 12, 13 },		// 87 bits per transform
-			{ 13, 12 },		// 87 bits per transform
-			{ 14, 11 },		// 87 bits per transform
-			{ 15, 10 },		// 87 bits per transform
-			{ 16, 9 },		// 87 bits per transform
-			{ 17, 8 },		// 87 bits per transform
-			{ 9, 17 },		// 90 bits per transform
-			{ 10, 16 },		// 90 bits per transform
-			{ 11, 15 },		// 90 bits per transform
-			{ 12, 14 },		// 90 bits per transform
-			{ 13, 13 },		// 90 bits per transform
-			{ 14, 12 },		// 90 bits per transform
-			{ 15, 11 },		// 90 bits per transform
-			{ 16, 10 },		// 90 bits per transform
-			{ 17, 9 },		// 90 bits per transform
-			{ 10, 17 },		// 93 bits per transform
-			{ 11, 16 },		// 93 bits per transform
-			{ 12, 15 },		// 93 bits per transform
-			{ 13, 14 },		// 93 bits per transform
-			{ 14, 13 },		// 93 bits per transform
-			{ 15, 12 },		// 93 bits per transform
-			{ 16, 11 },		// 93 bits per transform
-			{ 17, 10 },		// 93 bits per transform
-			{ 0, 18 },		// 96 bits per transform
-			{ 11, 17 },		// 96 bits per transform
-			{ 12, 16 },		// 96 bits per transform
-			{ 13, 15 },		// 96 bits per transform
-			{ 14, 14 },		// 96 bits per transform
-			{ 15, 13 },		// 96 bits per transform
-			{ 16, 12 },		// 96 bits per transform
-			{ 17, 11 },		// 96 bits per transform
-			{ 18, 0 },		// 96 bits per transform
-			{ 12, 17 },		// 99 bits per transform
-			{ 13, 16 },		// 99 bits per transform
-			{ 14, 15 },		// 99 bits per transform
-			{ 15, 14 },		// 99 bits per transform
-			{ 16, 13 },		// 99 bits per transform
-			{ 17, 12 },		// 99 bits per transform
-			{ 13, 17 },		// 102 bits per transform
-			{ 14, 16 },		// 102 bits per transform
-			{ 15, 15 },		// 102 bits per transform
-			{ 16, 14 },		// 102 bits per transform
-			{ 17, 13 },		// 102 bits per transform
-			{ 1, 18 },		// 105 bits per transform
-			{ 14, 17 },		// 105 bits per transform
-			{ 15, 16 },		// 105 bits per transform
-			{ 16, 15 },		// 105 bits per transform
-			{ 17, 14 },		// 105 bits per transform
-			{ 18, 1 },		// 105 bits per transform
-			{ 2, 18 },		// 108 bits per transform
-			{ 15, 17 },		// 108 bits per transform
-			{ 16, 16 },		// 108 bits per transform
-			{ 17, 15 },		// 108 bits per transform
-			{ 18, 2 },		// 108 bits per transform
-			{ 3, 18 },		// 111 bits per transform
-			{ 16, 17 },		// 111 bits per transform
-			{ 17, 16 },		// 111 bits per transform
-			{ 18, 3 },		// 111 bits per transform
-			{ 4, 18 },		// 114 bits per transform
-			{ 17, 17 },		// 114 bits per transform
-			{ 18, 4 },		// 114 bits per transform
-			{ 5, 18 },		// 117 bits per transform
-			{ 18, 5 },		// 117 bits per transform
-			{ 6, 18 },		// 120 bits per transform
-			{ 18, 6 },		// 120 bits per transform
-			{ 7, 18 },		// 123 bits per transform
-			{ 18, 7 },		// 123 bits per transform
-			{ 8, 18 },		// 126 bits per transform
-			{ 18, 8 },		// 126 bits per transform
-			{ 9, 18 },		// 129 bits per transform
-			{ 18, 9 },		// 129 bits per transform
-			{ 10, 18 },		// 132 bits per transform
-			{ 18, 10 },		// 132 bits per transform
-			{ 11, 18 },		// 135 bits per transform
-			{ 18, 11 },		// 135 bits per transform
-			{ 12, 18 },		// 138 bits per transform
-			{ 18, 12 },		// 138 bits per transform
-			{ 13, 18 },		// 141 bits per transform
-			{ 18, 13 },		// 141 bits per transform
-			{ 14, 18 },		// 144 bits per transform
-			{ 18, 14 },		// 144 bits per transform
-			{ 15, 18 },		// 147 bits per transform
-			{ 18, 15 },		// 147 bits per transform
-			{ 16, 18 },		// 150 bits per transform
-			{ 18, 16 },		// 150 bits per transform
-			{ 17, 18 },		// 153 bits per transform
-			{ 18, 17 },		// 153 bits per transform
-			{ 18, 18 },		// 192 bits per transform
+			{ 0, 1 },		// 3 bits per transform
+			{ 1, 0 },		// 3 bits per transform
+			{ 0, 2 },		// 6 bits per transform
+			{ 1, 1 },		// 6 bits per transform
+			{ 2, 0 },		// 6 bits per transform
+			{ 0, 3 },		// 9 bits per transform
+			{ 1, 2 },		// 9 bits per transform
+			{ 2, 1 },		// 9 bits per transform
+			{ 3, 0 },		// 9 bits per transform
+			{ 0, 4 },		// 12 bits per transform
+			{ 1, 3 },		// 12 bits per transform
+			{ 2, 2 },		// 12 bits per transform
+			{ 3, 1 },		// 12 bits per transform
+			{ 4, 0 },		// 12 bits per transform
+			{ 0, 5 },		// 15 bits per transform
+			{ 1, 4 },		// 15 bits per transform
+			{ 2, 3 },		// 15 bits per transform
+			{ 3, 2 },		// 15 bits per transform
+			{ 4, 1 },		// 15 bits per transform
+			{ 5, 0 },		// 15 bits per transform
+			{ 0, 6 },		// 18 bits per transform
+			{ 1, 5 },		// 18 bits per transform
+			{ 2, 4 },		// 18 bits per transform
+			{ 3, 3 },		// 18 bits per transform
+			{ 4, 2 },		// 18 bits per transform
+			{ 5, 1 },		// 18 bits per transform
+			{ 6, 0 },		// 18 bits per transform
+			{ 0, 7 },		// 21 bits per transform
+			{ 1, 6 },		// 21 bits per transform
+			{ 2, 5 },		// 21 bits per transform
+			{ 3, 4 },		// 21 bits per transform
+			{ 4, 3 },		// 21 bits per transform
+			{ 5, 2 },		// 21 bits per transform
+			{ 6, 1 },		// 21 bits per transform
+			{ 7, 0 },		// 21 bits per transform
+			{ 0, 8 },		// 24 bits per transform
+			{ 1, 7 },		// 24 bits per transform
+			{ 2, 6 },		// 24 bits per transform
+			{ 3, 5 },		// 24 bits per transform
+			{ 4, 4 },		// 24 bits per transform
+			{ 5, 3 },		// 24 bits per transform
+			{ 6, 2 },		// 24 bits per transform
+			{ 7, 1 },		// 24 bits per transform
+			{ 8, 0 },		// 24 bits per transform
+			{ 0, 9 },		// 27 bits per transform
+			{ 1, 8 },		// 27 bits per transform
+			{ 2, 7 },		// 27 bits per transform
+			{ 3, 6 },		// 27 bits per transform
+			{ 4, 5 },		// 27 bits per transform
+			{ 5, 4 },		// 27 bits per transform
+			{ 6, 3 },		// 27 bits per transform
+			{ 7, 2 },		// 27 bits per transform
+			{ 8, 1 },		// 27 bits per transform
+			{ 9, 0 },		// 27 bits per transform
+			{ 0, 10 },		// 30 bits per transform
+			{ 1, 9 },		// 30 bits per transform
+			{ 2, 8 },		// 30 bits per transform
+			{ 3, 7 },		// 30 bits per transform
+			{ 4, 6 },		// 30 bits per transform
+			{ 5, 5 },		// 30 bits per transform
+			{ 6, 4 },		// 30 bits per transform
+			{ 7, 3 },		// 30 bits per transform
+			{ 8, 2 },		// 30 bits per transform
+			{ 9, 1 },		// 30 bits per transform
+			{ 10, 0 },		// 30 bits per transform
+			{ 0, 11 },		// 33 bits per transform
+			{ 1, 10 },		// 33 bits per transform
+			{ 2, 9 },		// 33 bits per transform
+			{ 3, 8 },		// 33 bits per transform
+			{ 4, 7 },		// 33 bits per transform
+			{ 5, 6 },		// 33 bits per transform
+			{ 6, 5 },		// 33 bits per transform
+			{ 7, 4 },		// 33 bits per transform
+			{ 8, 3 },		// 33 bits per transform
+			{ 9, 2 },		// 33 bits per transform
+			{ 10, 1 },		// 33 bits per transform
+			{ 11, 0 },		// 33 bits per transform
+			{ 0, 12 },		// 36 bits per transform
+			{ 1, 11 },		// 36 bits per transform
+			{ 2, 10 },		// 36 bits per transform
+			{ 3, 9 },		// 36 bits per transform
+			{ 4, 8 },		// 36 bits per transform
+			{ 5, 7 },		// 36 bits per transform
+			{ 6, 6 },		// 36 bits per transform
+			{ 7, 5 },		// 36 bits per transform
+			{ 8, 4 },		// 36 bits per transform
+			{ 9, 3 },		// 36 bits per transform
+			{ 10, 2 },		// 36 bits per transform
+			{ 11, 1 },		// 36 bits per transform
+			{ 12, 0 },		// 36 bits per transform
+			{ 0, 13 },		// 39 bits per transform
+			{ 1, 12 },		// 39 bits per transform
+			{ 2, 11 },		// 39 bits per transform
+			{ 3, 10 },		// 39 bits per transform
+			{ 4, 9 },		// 39 bits per transform
+			{ 5, 8 },		// 39 bits per transform
+			{ 6, 7 },		// 39 bits per transform
+			{ 7, 6 },		// 39 bits per transform
+			{ 8, 5 },		// 39 bits per transform
+			{ 9, 4 },		// 39 bits per transform
+			{ 10, 3 },		// 39 bits per transform
+			{ 11, 2 },		// 39 bits per transform
+			{ 12, 1 },		// 39 bits per transform
+			{ 13, 0 },		// 39 bits per transform
+			{ 0, 14 },		// 42 bits per transform
+			{ 1, 13 },		// 42 bits per transform
+			{ 2, 12 },		// 42 bits per transform
+			{ 3, 11 },		// 42 bits per transform
+			{ 4, 10 },		// 42 bits per transform
+			{ 5, 9 },		// 42 bits per transform
+			{ 6, 8 },		// 42 bits per transform
+			{ 7, 7 },		// 42 bits per transform
+			{ 8, 6 },		// 42 bits per transform
+			{ 9, 5 },		// 42 bits per transform
+			{ 10, 4 },		// 42 bits per transform
+			{ 11, 3 },		// 42 bits per transform
+			{ 12, 2 },		// 42 bits per transform
+			{ 13, 1 },		// 42 bits per transform
+			{ 14, 0 },		// 42 bits per transform
+			{ 0, 15 },		// 45 bits per transform
+			{ 1, 14 },		// 45 bits per transform
+			{ 2, 13 },		// 45 bits per transform
+			{ 3, 12 },		// 45 bits per transform
+			{ 4, 11 },		// 45 bits per transform
+			{ 5, 10 },		// 45 bits per transform
+			{ 6, 9 },		// 45 bits per transform
+			{ 7, 8 },		// 45 bits per transform
+			{ 8, 7 },		// 45 bits per transform
+			{ 9, 6 },		// 45 bits per transform
+			{ 10, 5 },		// 45 bits per transform
+			{ 11, 4 },		// 45 bits per transform
+			{ 12, 3 },		// 45 bits per transform
+			{ 13, 2 },		// 45 bits per transform
+			{ 14, 1 },		// 45 bits per transform
+			{ 15, 0 },		// 45 bits per transform
+			{ 0, 16 },		// 48 bits per transform
+			{ 1, 15 },		// 48 bits per transform
+			{ 2, 14 },		// 48 bits per transform
+			{ 3, 13 },		// 48 bits per transform
+			{ 4, 12 },		// 48 bits per transform
+			{ 5, 11 },		// 48 bits per transform
+			{ 6, 10 },		// 48 bits per transform
+			{ 7, 9 },		// 48 bits per transform
+			{ 8, 8 },		// 48 bits per transform
+			{ 9, 7 },		// 48 bits per transform
+			{ 10, 6 },		// 48 bits per transform
+			{ 11, 5 },		// 48 bits per transform
+			{ 12, 4 },		// 48 bits per transform
+			{ 13, 3 },		// 48 bits per transform
+			{ 14, 2 },		// 48 bits per transform
+			{ 15, 1 },		// 48 bits per transform
+			{ 16, 0 },		// 48 bits per transform
+			{ 0, 17 },		// 51 bits per transform
+			{ 1, 16 },		// 51 bits per transform
+			{ 2, 15 },		// 51 bits per transform
+			{ 3, 14 },		// 51 bits per transform
+			{ 4, 13 },		// 51 bits per transform
+			{ 5, 12 },		// 51 bits per transform
+			{ 6, 11 },		// 51 bits per transform
+			{ 7, 10 },		// 51 bits per transform
+			{ 8, 9 },		// 51 bits per transform
+			{ 9, 8 },		// 51 bits per transform
+			{ 10, 7 },		// 51 bits per transform
+			{ 11, 6 },		// 51 bits per transform
+			{ 12, 5 },		// 51 bits per transform
+			{ 13, 4 },		// 51 bits per transform
+			{ 14, 3 },		// 51 bits per transform
+			{ 15, 2 },		// 51 bits per transform
+			{ 16, 1 },		// 51 bits per transform
+			{ 17, 0 },		// 51 bits per transform
+			{ 0, 18 },		// 54 bits per transform
+			{ 1, 17 },		// 54 bits per transform
+			{ 2, 16 },		// 54 bits per transform
+			{ 3, 15 },		// 54 bits per transform
+			{ 4, 14 },		// 54 bits per transform
+			{ 5, 13 },		// 54 bits per transform
+			{ 6, 12 },		// 54 bits per transform
+			{ 7, 11 },		// 54 bits per transform
+			{ 8, 10 },		// 54 bits per transform
+			{ 9, 9 },		// 54 bits per transform
+			{ 10, 8 },		// 54 bits per transform
+			{ 11, 7 },		// 54 bits per transform
+			{ 12, 6 },		// 54 bits per transform
+			{ 13, 5 },		// 54 bits per transform
+			{ 14, 4 },		// 54 bits per transform
+			{ 15, 3 },		// 54 bits per transform
+			{ 16, 2 },		// 54 bits per transform
+			{ 17, 1 },		// 54 bits per transform
+			{ 18, 0 },		// 54 bits per transform
+			{ 0, 19 },		// 57 bits per transform
+			{ 1, 18 },		// 57 bits per transform
+			{ 2, 17 },		// 57 bits per transform
+			{ 3, 16 },		// 57 bits per transform
+			{ 4, 15 },		// 57 bits per transform
+			{ 5, 14 },		// 57 bits per transform
+			{ 6, 13 },		// 57 bits per transform
+			{ 7, 12 },		// 57 bits per transform
+			{ 8, 11 },		// 57 bits per transform
+			{ 9, 10 },		// 57 bits per transform
+			{ 10, 9 },		// 57 bits per transform
+			{ 11, 8 },		// 57 bits per transform
+			{ 12, 7 },		// 57 bits per transform
+			{ 13, 6 },		// 57 bits per transform
+			{ 14, 5 },		// 57 bits per transform
+			{ 15, 4 },		// 57 bits per transform
+			{ 16, 3 },		// 57 bits per transform
+			{ 17, 2 },		// 57 bits per transform
+			{ 18, 1 },		// 57 bits per transform
+			{ 19, 0 },		// 57 bits per transform
+			{ 0, 20 },		// 60 bits per transform
+			{ 1, 19 },		// 60 bits per transform
+			{ 2, 18 },		// 60 bits per transform
+			{ 3, 17 },		// 60 bits per transform
+			{ 4, 16 },		// 60 bits per transform
+			{ 5, 15 },		// 60 bits per transform
+			{ 6, 14 },		// 60 bits per transform
+			{ 7, 13 },		// 60 bits per transform
+			{ 8, 12 },		// 60 bits per transform
+			{ 9, 11 },		// 60 bits per transform
+			{ 10, 10 },		// 60 bits per transform
+			{ 11, 9 },		// 60 bits per transform
+			{ 12, 8 },		// 60 bits per transform
+			{ 13, 7 },		// 60 bits per transform
+			{ 14, 6 },		// 60 bits per transform
+			{ 15, 5 },		// 60 bits per transform
+			{ 16, 4 },		// 60 bits per transform
+			{ 17, 3 },		// 60 bits per transform
+			{ 18, 2 },		// 60 bits per transform
+			{ 19, 1 },		// 60 bits per transform
+			{ 20, 0 },		// 60 bits per transform
+			{ 0, 21 },		// 63 bits per transform
+			{ 1, 20 },		// 63 bits per transform
+			{ 2, 19 },		// 63 bits per transform
+			{ 3, 18 },		// 63 bits per transform
+			{ 4, 17 },		// 63 bits per transform
+			{ 5, 16 },		// 63 bits per transform
+			{ 6, 15 },		// 63 bits per transform
+			{ 7, 14 },		// 63 bits per transform
+			{ 8, 13 },		// 63 bits per transform
+			{ 9, 12 },		// 63 bits per transform
+			{ 10, 11 },		// 63 bits per transform
+			{ 11, 10 },		// 63 bits per transform
+			{ 12, 9 },		// 63 bits per transform
+			{ 13, 8 },		// 63 bits per transform
+			{ 14, 7 },		// 63 bits per transform
+			{ 15, 6 },		// 63 bits per transform
+			{ 16, 5 },		// 63 bits per transform
+			{ 17, 4 },		// 63 bits per transform
+			{ 18, 3 },		// 63 bits per transform
+			{ 19, 2 },		// 63 bits per transform
+			{ 20, 1 },		// 63 bits per transform
+			{ 21, 0 },		// 63 bits per transform
+			{ 0, 22 },		// 66 bits per transform
+			{ 1, 21 },		// 66 bits per transform
+			{ 2, 20 },		// 66 bits per transform
+			{ 3, 19 },		// 66 bits per transform
+			{ 4, 18 },		// 66 bits per transform
+			{ 5, 17 },		// 66 bits per transform
+			{ 6, 16 },		// 66 bits per transform
+			{ 7, 15 },		// 66 bits per transform
+			{ 8, 14 },		// 66 bits per transform
+			{ 9, 13 },		// 66 bits per transform
+			{ 10, 12 },		// 66 bits per transform
+			{ 11, 11 },		// 66 bits per transform
+			{ 12, 10 },		// 66 bits per transform
+			{ 13, 9 },		// 66 bits per transform
+			{ 14, 8 },		// 66 bits per transform
+			{ 15, 7 },		// 66 bits per transform
+			{ 16, 6 },		// 66 bits per transform
+			{ 17, 5 },		// 66 bits per transform
+			{ 18, 4 },		// 66 bits per transform
+			{ 19, 3 },		// 66 bits per transform
+			{ 20, 2 },		// 66 bits per transform
+			{ 21, 1 },		// 66 bits per transform
+			{ 22, 0 },		// 66 bits per transform
+			{ 0, 23 },		// 69 bits per transform
+			{ 1, 22 },		// 69 bits per transform
+			{ 2, 21 },		// 69 bits per transform
+			{ 3, 20 },		// 69 bits per transform
+			{ 4, 19 },		// 69 bits per transform
+			{ 5, 18 },		// 69 bits per transform
+			{ 6, 17 },		// 69 bits per transform
+			{ 7, 16 },		// 69 bits per transform
+			{ 8, 15 },		// 69 bits per transform
+			{ 9, 14 },		// 69 bits per transform
+			{ 10, 13 },		// 69 bits per transform
+			{ 11, 12 },		// 69 bits per transform
+			{ 12, 11 },		// 69 bits per transform
+			{ 13, 10 },		// 69 bits per transform
+			{ 14, 9 },		// 69 bits per transform
+			{ 15, 8 },		// 69 bits per transform
+			{ 16, 7 },		// 69 bits per transform
+			{ 17, 6 },		// 69 bits per transform
+			{ 18, 5 },		// 69 bits per transform
+			{ 19, 4 },		// 69 bits per transform
+			{ 20, 3 },		// 69 bits per transform
+			{ 21, 2 },		// 69 bits per transform
+			{ 22, 1 },		// 69 bits per transform
+			{ 23, 0 },		// 69 bits per transform
+			{ 1, 23 },		// 72 bits per transform
+			{ 2, 22 },		// 72 bits per transform
+			{ 3, 21 },		// 72 bits per transform
+			{ 4, 20 },		// 72 bits per transform
+			{ 5, 19 },		// 72 bits per transform
+			{ 6, 18 },		// 72 bits per transform
+			{ 7, 17 },		// 72 bits per transform
+			{ 8, 16 },		// 72 bits per transform
+			{ 9, 15 },		// 72 bits per transform
+			{ 10, 14 },		// 72 bits per transform
+			{ 11, 13 },		// 72 bits per transform
+			{ 12, 12 },		// 72 bits per transform
+			{ 13, 11 },		// 72 bits per transform
+			{ 14, 10 },		// 72 bits per transform
+			{ 15, 9 },		// 72 bits per transform
+			{ 16, 8 },		// 72 bits per transform
+			{ 17, 7 },		// 72 bits per transform
+			{ 18, 6 },		// 72 bits per transform
+			{ 19, 5 },		// 72 bits per transform
+			{ 20, 4 },		// 72 bits per transform
+			{ 21, 3 },		// 72 bits per transform
+			{ 22, 2 },		// 72 bits per transform
+			{ 23, 1 },		// 72 bits per transform
+			{ 2, 23 },		// 75 bits per transform
+			{ 3, 22 },		// 75 bits per transform
+			{ 4, 21 },		// 75 bits per transform
+			{ 5, 20 },		// 75 bits per transform
+			{ 6, 19 },		// 75 bits per transform
+			{ 7, 18 },		// 75 bits per transform
+			{ 8, 17 },		// 75 bits per transform
+			{ 9, 16 },		// 75 bits per transform
+			{ 10, 15 },		// 75 bits per transform
+			{ 11, 14 },		// 75 bits per transform
+			{ 12, 13 },		// 75 bits per transform
+			{ 13, 12 },		// 75 bits per transform
+			{ 14, 11 },		// 75 bits per transform
+			{ 15, 10 },		// 75 bits per transform
+			{ 16, 9 },		// 75 bits per transform
+			{ 17, 8 },		// 75 bits per transform
+			{ 18, 7 },		// 75 bits per transform
+			{ 19, 6 },		// 75 bits per transform
+			{ 20, 5 },		// 75 bits per transform
+			{ 21, 4 },		// 75 bits per transform
+			{ 22, 3 },		// 75 bits per transform
+			{ 23, 2 },		// 75 bits per transform
+			{ 3, 23 },		// 78 bits per transform
+			{ 4, 22 },		// 78 bits per transform
+			{ 5, 21 },		// 78 bits per transform
+			{ 6, 20 },		// 78 bits per transform
+			{ 7, 19 },		// 78 bits per transform
+			{ 8, 18 },		// 78 bits per transform
+			{ 9, 17 },		// 78 bits per transform
+			{ 10, 16 },		// 78 bits per transform
+			{ 11, 15 },		// 78 bits per transform
+			{ 12, 14 },		// 78 bits per transform
+			{ 13, 13 },		// 78 bits per transform
+			{ 14, 12 },		// 78 bits per transform
+			{ 15, 11 },		// 78 bits per transform
+			{ 16, 10 },		// 78 bits per transform
+			{ 17, 9 },		// 78 bits per transform
+			{ 18, 8 },		// 78 bits per transform
+			{ 19, 7 },		// 78 bits per transform
+			{ 20, 6 },		// 78 bits per transform
+			{ 21, 5 },		// 78 bits per transform
+			{ 22, 4 },		// 78 bits per transform
+			{ 23, 3 },		// 78 bits per transform
+			{ 4, 23 },		// 81 bits per transform
+			{ 5, 22 },		// 81 bits per transform
+			{ 6, 21 },		// 81 bits per transform
+			{ 7, 20 },		// 81 bits per transform
+			{ 8, 19 },		// 81 bits per transform
+			{ 9, 18 },		// 81 bits per transform
+			{ 10, 17 },		// 81 bits per transform
+			{ 11, 16 },		// 81 bits per transform
+			{ 12, 15 },		// 81 bits per transform
+			{ 13, 14 },		// 81 bits per transform
+			{ 14, 13 },		// 81 bits per transform
+			{ 15, 12 },		// 81 bits per transform
+			{ 16, 11 },		// 81 bits per transform
+			{ 17, 10 },		// 81 bits per transform
+			{ 18, 9 },		// 81 bits per transform
+			{ 19, 8 },		// 81 bits per transform
+			{ 20, 7 },		// 81 bits per transform
+			{ 21, 6 },		// 81 bits per transform
+			{ 22, 5 },		// 81 bits per transform
+			{ 23, 4 },		// 81 bits per transform
+			{ 5, 23 },		// 84 bits per transform
+			{ 6, 22 },		// 84 bits per transform
+			{ 7, 21 },		// 84 bits per transform
+			{ 8, 20 },		// 84 bits per transform
+			{ 9, 19 },		// 84 bits per transform
+			{ 10, 18 },		// 84 bits per transform
+			{ 11, 17 },		// 84 bits per transform
+			{ 12, 16 },		// 84 bits per transform
+			{ 13, 15 },		// 84 bits per transform
+			{ 14, 14 },		// 84 bits per transform
+			{ 15, 13 },		// 84 bits per transform
+			{ 16, 12 },		// 84 bits per transform
+			{ 17, 11 },		// 84 bits per transform
+			{ 18, 10 },		// 84 bits per transform
+			{ 19, 9 },		// 84 bits per transform
+			{ 20, 8 },		// 84 bits per transform
+			{ 21, 7 },		// 84 bits per transform
+			{ 22, 6 },		// 84 bits per transform
+			{ 23, 5 },		// 84 bits per transform
+			{ 6, 23 },		// 87 bits per transform
+			{ 7, 22 },		// 87 bits per transform
+			{ 8, 21 },		// 87 bits per transform
+			{ 9, 20 },		// 87 bits per transform
+			{ 10, 19 },		// 87 bits per transform
+			{ 11, 18 },		// 87 bits per transform
+			{ 12, 17 },		// 87 bits per transform
+			{ 13, 16 },		// 87 bits per transform
+			{ 14, 15 },		// 87 bits per transform
+			{ 15, 14 },		// 87 bits per transform
+			{ 16, 13 },		// 87 bits per transform
+			{ 17, 12 },		// 87 bits per transform
+			{ 18, 11 },		// 87 bits per transform
+			{ 19, 10 },		// 87 bits per transform
+			{ 20, 9 },		// 87 bits per transform
+			{ 21, 8 },		// 87 bits per transform
+			{ 22, 7 },		// 87 bits per transform
+			{ 23, 6 },		// 87 bits per transform
+			{ 7, 23 },		// 90 bits per transform
+			{ 8, 22 },		// 90 bits per transform
+			{ 9, 21 },		// 90 bits per transform
+			{ 10, 20 },		// 90 bits per transform
+			{ 11, 19 },		// 90 bits per transform
+			{ 12, 18 },		// 90 bits per transform
+			{ 13, 17 },		// 90 bits per transform
+			{ 14, 16 },		// 90 bits per transform
+			{ 15, 15 },		// 90 bits per transform
+			{ 16, 14 },		// 90 bits per transform
+			{ 17, 13 },		// 90 bits per transform
+			{ 18, 12 },		// 90 bits per transform
+			{ 19, 11 },		// 90 bits per transform
+			{ 20, 10 },		// 90 bits per transform
+			{ 21, 9 },		// 90 bits per transform
+			{ 22, 8 },		// 90 bits per transform
+			{ 23, 7 },		// 90 bits per transform
+			{ 8, 23 },		// 93 bits per transform
+			{ 9, 22 },		// 93 bits per transform
+			{ 10, 21 },		// 93 bits per transform
+			{ 11, 20 },		// 93 bits per transform
+			{ 12, 19 },		// 93 bits per transform
+			{ 13, 18 },		// 93 bits per transform
+			{ 14, 17 },		// 93 bits per transform
+			{ 15, 16 },		// 93 bits per transform
+			{ 16, 15 },		// 93 bits per transform
+			{ 17, 14 },		// 93 bits per transform
+			{ 18, 13 },		// 93 bits per transform
+			{ 19, 12 },		// 93 bits per transform
+			{ 20, 11 },		// 93 bits per transform
+			{ 21, 10 },		// 93 bits per transform
+			{ 22, 9 },		// 93 bits per transform
+			{ 23, 8 },		// 93 bits per transform
+			{ 0, 24 },		// 96 bits per transform
+			{ 9, 23 },		// 96 bits per transform
+			{ 10, 22 },		// 96 bits per transform
+			{ 11, 21 },		// 96 bits per transform
+			{ 12, 20 },		// 96 bits per transform
+			{ 13, 19 },		// 96 bits per transform
+			{ 14, 18 },		// 96 bits per transform
+			{ 15, 17 },		// 96 bits per transform
+			{ 16, 16 },		// 96 bits per transform
+			{ 17, 15 },		// 96 bits per transform
+			{ 18, 14 },		// 96 bits per transform
+			{ 19, 13 },		// 96 bits per transform
+			{ 20, 12 },		// 96 bits per transform
+			{ 21, 11 },		// 96 bits per transform
+			{ 22, 10 },		// 96 bits per transform
+			{ 23, 9 },		// 96 bits per transform
+			{ 24, 0 },		// 96 bits per transform
+			{ 1, 24 },		// 99 bits per transform
+			{ 10, 23 },		// 99 bits per transform
+			{ 11, 22 },		// 99 bits per transform
+			{ 12, 21 },		// 99 bits per transform
+			{ 13, 20 },		// 99 bits per transform
+			{ 14, 19 },		// 99 bits per transform
+			{ 15, 18 },		// 99 bits per transform
+			{ 16, 17 },		// 99 bits per transform
+			{ 17, 16 },		// 99 bits per transform
+			{ 18, 15 },		// 99 bits per transform
+			{ 19, 14 },		// 99 bits per transform
+			{ 20, 13 },		// 99 bits per transform
+			{ 21, 12 },		// 99 bits per transform
+			{ 22, 11 },		// 99 bits per transform
+			{ 23, 10 },		// 99 bits per transform
+			{ 24, 1 },		// 99 bits per transform
+			{ 2, 24 },		// 102 bits per transform
+			{ 11, 23 },		// 102 bits per transform
+			{ 12, 22 },		// 102 bits per transform
+			{ 13, 21 },		// 102 bits per transform
+			{ 14, 20 },		// 102 bits per transform
+			{ 15, 19 },		// 102 bits per transform
+			{ 16, 18 },		// 102 bits per transform
+			{ 17, 17 },		// 102 bits per transform
+			{ 18, 16 },		// 102 bits per transform
+			{ 19, 15 },		// 102 bits per transform
+			{ 20, 14 },		// 102 bits per transform
+			{ 21, 13 },		// 102 bits per transform
+			{ 22, 12 },		// 102 bits per transform
+			{ 23, 11 },		// 102 bits per transform
+			{ 24, 2 },		// 102 bits per transform
+			{ 3, 24 },		// 105 bits per transform
+			{ 12, 23 },		// 105 bits per transform
+			{ 13, 22 },		// 105 bits per transform
+			{ 14, 21 },		// 105 bits per transform
+			{ 15, 20 },		// 105 bits per transform
+			{ 16, 19 },		// 105 bits per transform
+			{ 17, 18 },		// 105 bits per transform
+			{ 18, 17 },		// 105 bits per transform
+			{ 19, 16 },		// 105 bits per transform
+			{ 20, 15 },		// 105 bits per transform
+			{ 21, 14 },		// 105 bits per transform
+			{ 22, 13 },		// 105 bits per transform
+			{ 23, 12 },		// 105 bits per transform
+			{ 24, 3 },		// 105 bits per transform
+			{ 4, 24 },		// 108 bits per transform
+			{ 13, 23 },		// 108 bits per transform
+			{ 14, 22 },		// 108 bits per transform
+			{ 15, 21 },		// 108 bits per transform
+			{ 16, 20 },		// 108 bits per transform
+			{ 17, 19 },		// 108 bits per transform
+			{ 18, 18 },		// 108 bits per transform
+			{ 19, 17 },		// 108 bits per transform
+			{ 20, 16 },		// 108 bits per transform
+			{ 21, 15 },		// 108 bits per transform
+			{ 22, 14 },		// 108 bits per transform
+			{ 23, 13 },		// 108 bits per transform
+			{ 24, 4 },		// 108 bits per transform
+			{ 5, 24 },		// 111 bits per transform
+			{ 14, 23 },		// 111 bits per transform
+			{ 15, 22 },		// 111 bits per transform
+			{ 16, 21 },		// 111 bits per transform
+			{ 17, 20 },		// 111 bits per transform
+			{ 18, 19 },		// 111 bits per transform
+			{ 19, 18 },		// 111 bits per transform
+			{ 20, 17 },		// 111 bits per transform
+			{ 21, 16 },		// 111 bits per transform
+			{ 22, 15 },		// 111 bits per transform
+			{ 23, 14 },		// 111 bits per transform
+			{ 24, 5 },		// 111 bits per transform
+			{ 6, 24 },		// 114 bits per transform
+			{ 15, 23 },		// 114 bits per transform
+			{ 16, 22 },		// 114 bits per transform
+			{ 17, 21 },		// 114 bits per transform
+			{ 18, 20 },		// 114 bits per transform
+			{ 19, 19 },		// 114 bits per transform
+			{ 20, 18 },		// 114 bits per transform
+			{ 21, 17 },		// 114 bits per transform
+			{ 22, 16 },		// 114 bits per transform
+			{ 23, 15 },		// 114 bits per transform
+			{ 24, 6 },		// 114 bits per transform
+			{ 7, 24 },		// 117 bits per transform
+			{ 16, 23 },		// 117 bits per transform
+			{ 17, 22 },		// 117 bits per transform
+			{ 18, 21 },		// 117 bits per transform
+			{ 19, 20 },		// 117 bits per transform
+			{ 20, 19 },		// 117 bits per transform
+			{ 21, 18 },		// 117 bits per transform
+			{ 22, 17 },		// 117 bits per transform
+			{ 23, 16 },		// 117 bits per transform
+			{ 24, 7 },		// 117 bits per transform
+			{ 8, 24 },		// 120 bits per transform
+			{ 17, 23 },		// 120 bits per transform
+			{ 18, 22 },		// 120 bits per transform
+			{ 19, 21 },		// 120 bits per transform
+			{ 20, 20 },		// 120 bits per transform
+			{ 21, 19 },		// 120 bits per transform
+			{ 22, 18 },		// 120 bits per transform
+			{ 23, 17 },		// 120 bits per transform
+			{ 24, 8 },		// 120 bits per transform
+			{ 9, 24 },		// 123 bits per transform
+			{ 18, 23 },		// 123 bits per transform
+			{ 19, 22 },		// 123 bits per transform
+			{ 20, 21 },		// 123 bits per transform
+			{ 21, 20 },		// 123 bits per transform
+			{ 22, 19 },		// 123 bits per transform
+			{ 23, 18 },		// 123 bits per transform
+			{ 24, 9 },		// 123 bits per transform
+			{ 10, 24 },		// 126 bits per transform
+			{ 19, 23 },		// 126 bits per transform
+			{ 20, 22 },		// 126 bits per transform
+			{ 21, 21 },		// 126 bits per transform
+			{ 22, 20 },		// 126 bits per transform
+			{ 23, 19 },		// 126 bits per transform
+			{ 24, 10 },		// 126 bits per transform
+			{ 11, 24 },		// 129 bits per transform
+			{ 20, 23 },		// 129 bits per transform
+			{ 21, 22 },		// 129 bits per transform
+			{ 22, 21 },		// 129 bits per transform
+			{ 23, 20 },		// 129 bits per transform
+			{ 24, 11 },		// 129 bits per transform
+			{ 12, 24 },		// 132 bits per transform
+			{ 21, 23 },		// 132 bits per transform
+			{ 22, 22 },		// 132 bits per transform
+			{ 23, 21 },		// 132 bits per transform
+			{ 24, 12 },		// 132 bits per transform
+			{ 13, 24 },		// 135 bits per transform
+			{ 22, 23 },		// 135 bits per transform
+			{ 23, 22 },		// 135 bits per transform
+			{ 24, 13 },		// 135 bits per transform
+			{ 14, 24 },		// 138 bits per transform
+			{ 23, 23 },		// 138 bits per transform
+			{ 24, 14 },		// 138 bits per transform
+			{ 15, 24 },		// 141 bits per transform
+			{ 24, 15 },		// 141 bits per transform
+			{ 16, 24 },		// 144 bits per transform
+			{ 24, 16 },		// 144 bits per transform
+			{ 17, 24 },		// 147 bits per transform
+			{ 24, 17 },		// 147 bits per transform
+			{ 18, 24 },		// 150 bits per transform
+			{ 24, 18 },		// 150 bits per transform
+			{ 19, 24 },		// 153 bits per transform
+			{ 24, 19 },		// 153 bits per transform
+			{ 20, 24 },		// 156 bits per transform
+			{ 24, 20 },		// 156 bits per transform
+			{ 21, 24 },		// 159 bits per transform
+			{ 24, 21 },		// 159 bits per transform
+			{ 22, 24 },		// 162 bits per transform
+			{ 24, 22 },		// 162 bits per transform
+			{ 23, 24 },		// 165 bits per transform
+			{ 24, 23 },		// 165 bits per transform
+			{ 24, 24 },		// 192 bits per transform
 		};
 
-		constexpr uint8_t k_local_bit_rate_permutations[6859][3] =
+		constexpr uint8_t k_local_bit_rate_permutations[15625][3] =
 		{
 			{ 0, 0, 0 },		// 0 bits per transform
-			{ 0, 0, 1 },		// 9 bits per transform
-			{ 0, 1, 0 },		// 9 bits per transform
-			{ 1, 0, 0 },		// 9 bits per transform
-			{ 0, 0, 2 },		// 12 bits per transform
-			{ 0, 2, 0 },		// 12 bits per transform
-			{ 2, 0, 0 },		// 12 bits per transform
-			{ 0, 0, 3 },		// 15 bits per transform
-			{ 0, 3, 0 },		// 15 bits per transform
-			{ 3, 0, 0 },		// 15 bits per transform
-			{ 0, 0, 4 },		// 18 bits per transform
-			{ 0, 1, 1 },		// 18 bits per transform
-			{ 0, 4, 0 },		// 18 bits per transform
-			{ 1, 0, 1 },		// 18 bits per transform
-			{ 1, 1, 0 },		// 18 bits per transform
-			{ 4, 0, 0 },		// 18 bits per transform
-			{ 0, 0, 5 },		// 21 bits per transform
-			{ 0, 1, 2 },		// 21 bits per transform
-			{ 0, 2, 1 },		// 21 bits per transform
-			{ 0, 5, 0 },		// 21 bits per transform
-			{ 1, 0, 2 },		// 21 bits per transform
-			{ 1, 2, 0 },		// 21 bits per transform
-			{ 2, 0, 1 },		// 21 bits per transform
-			{ 2, 1, 0 },		// 21 bits per transform
-			{ 5, 0, 0 },		// 21 bits per transform
-			{ 0, 0, 6 },		// 24 bits per transform
-			{ 0, 1, 3 },		// 24 bits per transform
-			{ 0, 2, 2 },		// 24 bits per transform
-			{ 0, 3, 1 },		// 24 bits per transform
-			{ 0, 6, 0 },		// 24 bits per transform
-			{ 1, 0, 3 },		// 24 bits per transform
-			{ 1, 3, 0 },		// 24 bits per transform
-			{ 2, 0, 2 },		// 24 bits per transform
-			{ 2, 2, 0 },		// 24 bits per transform
-			{ 3, 0, 1 },		// 24 bits per transform
-			{ 3, 1, 0 },		// 24 bits per transform
-			{ 6, 0, 0 },		// 24 bits per transform
-			{ 0, 0, 7 },		// 27 bits per transform
-			{ 0, 1, 4 },		// 27 bits per transform
-			{ 0, 2, 3 },		// 27 bits per transform
-			{ 0, 3, 2 },		// 27 bits per transform
-			{ 0, 4, 1 },		// 27 bits per transform
-			{ 0, 7, 0 },		// 27 bits per transform
-			{ 1, 0, 4 },		// 27 bits per transform
-			{ 1, 1, 1 },		// 27 bits per transform
-			{ 1, 4, 0 },		// 27 bits per transform
-			{ 2, 0, 3 },		// 27 bits per transform
-			{ 2, 3, 0 },		// 27 bits per transform
-			{ 3, 0, 2 },		// 27 bits per transform
-			{ 3, 2, 0 },		// 27 bits per transform
-			{ 4, 0, 1 },		// 27 bits per transform
-			{ 4, 1, 0 },		// 27 bits per transform
-			{ 7, 0, 0 },		// 27 bits per transform
-			{ 0, 0, 8 },		// 30 bits per transform
-			{ 0, 1, 5 },		// 30 bits per transform
-			{ 0, 2, 4 },		// 30 bits per transform
-			{ 0, 3, 3 },		// 30 bits per transform
-			{ 0, 4, 2 },		// 30 bits per transform
-			{ 0, 5, 1 },		// 30 bits per transform
-			{ 0, 8, 0 },		// 30 bits per transform
-			{ 1, 0, 5 },		// 30 bits per transform
-			{ 1, 1, 2 },		// 30 bits per transform
-			{ 1, 2, 1 },		// 30 bits per transform
-			{ 1, 5, 0 },		// 30 bits per transform
-			{ 2, 0, 4 },		// 30 bits per transform
-			{ 2, 1, 1 },		// 30 bits per transform
-			{ 2, 4, 0 },		// 30 bits per transform
-			{ 3, 0, 3 },		// 30 bits per transform
-			{ 3, 3, 0 },		// 30 bits per transform
-			{ 4, 0, 2 },		// 30 bits per transform
-			{ 4, 2, 0 },		// 30 bits per transform
-			{ 5, 0, 1 },		// 30 bits per transform
-			{ 5, 1, 0 },		// 30 bits per transform
-			{ 8, 0, 0 },		// 30 bits per transform
-			{ 0, 0, 9 },		// 33 bits per transform
-			{ 0, 1, 6 },		// 33 bits per transform
-			{ 0, 2, 5 },		// 33 bits per transform
-			{ 0, 3, 4 },		// 33 bits per transform
-			{ 0, 4, 3 },		// 33 bits per transform
-			{ 0, 5, 2 },		// 33 bits per transform
-			{ 0, 6, 1 },		// 33 bits per transform
-			{ 0, 9, 0 },		// 33 bits per transform
-			{ 1, 0, 6 },		// 33 bits per transform
-			{ 1, 1, 3 },		// 33 bits per transform
-			{ 1, 2, 2 },		// 33 bits per transform
-			{ 1, 3, 1 },		// 33 bits per transform
-			{ 1, 6, 0 },		// 33 bits per transform
-			{ 2, 0, 5 },		// 33 bits per transform
-			{ 2, 1, 2 },		// 33 bits per transform
-			{ 2, 2, 1 },		// 33 bits per transform
-			{ 2, 5, 0 },		// 33 bits per transform
-			{ 3, 0, 4 },		// 33 bits per transform
-			{ 3, 1, 1 },		// 33 bits per transform
-			{ 3, 4, 0 },		// 33 bits per transform
-			{ 4, 0, 3 },		// 33 bits per transform
-			{ 4, 3, 0 },		// 33 bits per transform
-			{ 5, 0, 2 },		// 33 bits per transform
-			{ 5, 2, 0 },		// 33 bits per transform
-			{ 6, 0, 1 },		// 33 bits per transform
-			{ 6, 1, 0 },		// 33 bits per transform
-			{ 9, 0, 0 },		// 33 bits per transform
-			{ 0, 0, 10 },		// 36 bits per transform
-			{ 0, 1, 7 },		// 36 bits per transform
-			{ 0, 2, 6 },		// 36 bits per transform
-			{ 0, 3, 5 },		// 36 bits per transform
-			{ 0, 4, 4 },		// 36 bits per transform
-			{ 0, 5, 3 },		// 36 bits per transform
-			{ 0, 6, 2 },		// 36 bits per transform
-			{ 0, 7, 1 },		// 36 bits per transform
-			{ 0, 10, 0 },		// 36 bits per transform
-			{ 1, 0, 7 },		// 36 bits per transform
-			{ 1, 1, 4 },		// 36 bits per transform
-			{ 1, 2, 3 },		// 36 bits per transform
-			{ 1, 3, 2 },		// 36 bits per transform
-			{ 1, 4, 1 },		// 36 bits per transform
-			{ 1, 7, 0 },		// 36 bits per transform
-			{ 2, 0, 6 },		// 36 bits per transform
-			{ 2, 1, 3 },		// 36 bits per transform
-			{ 2, 2, 2 },		// 36 bits per transform
-			{ 2, 3, 1 },		// 36 bits per transform
-			{ 2, 6, 0 },		// 36 bits per transform
-			{ 3, 0, 5 },		// 36 bits per transform
-			{ 3, 1, 2 },		// 36 bits per transform
-			{ 3, 2, 1 },		// 36 bits per transform
-			{ 3, 5, 0 },		// 36 bits per transform
-			{ 4, 0, 4 },		// 36 bits per transform
-			{ 4, 1, 1 },		// 36 bits per transform
-			{ 4, 4, 0 },		// 36 bits per transform
-			{ 5, 0, 3 },		// 36 bits per transform
-			{ 5, 3, 0 },		// 36 bits per transform
-			{ 6, 0, 2 },		// 36 bits per transform
-			{ 6, 2, 0 },		// 36 bits per transform
-			{ 7, 0, 1 },		// 36 bits per transform
-			{ 7, 1, 0 },		// 36 bits per transform
-			{ 10, 0, 0 },		// 36 bits per transform
-			{ 0, 0, 11 },		// 39 bits per transform
-			{ 0, 1, 8 },		// 39 bits per transform
-			{ 0, 2, 7 },		// 39 bits per transform
-			{ 0, 3, 6 },		// 39 bits per transform
-			{ 0, 4, 5 },		// 39 bits per transform
-			{ 0, 5, 4 },		// 39 bits per transform
-			{ 0, 6, 3 },		// 39 bits per transform
-			{ 0, 7, 2 },		// 39 bits per transform
-			{ 0, 8, 1 },		// 39 bits per transform
-			{ 0, 11, 0 },		// 39 bits per transform
-			{ 1, 0, 8 },		// 39 bits per transform
-			{ 1, 1, 5 },		// 39 bits per transform
-			{ 1, 2, 4 },		// 39 bits per transform
-			{ 1, 3, 3 },		// 39 bits per transform
-			{ 1, 4, 2 },		// 39 bits per transform
-			{ 1, 5, 1 },		// 39 bits per transform
-			{ 1, 8, 0 },		// 39 bits per transform
-			{ 2, 0, 7 },		// 39 bits per transform
-			{ 2, 1, 4 },		// 39 bits per transform
-			{ 2, 2, 3 },		// 39 bits per transform
-			{ 2, 3, 2 },		// 39 bits per transform
-			{ 2, 4, 1 },		// 39 bits per transform
-			{ 2, 7, 0 },		// 39 bits per transform
-			{ 3, 0, 6 },		// 39 bits per transform
-			{ 3, 1, 3 },		// 39 bits per transform
-			{ 3, 2, 2 },		// 39 bits per transform
-			{ 3, 3, 1 },		// 39 bits per transform
-			{ 3, 6, 0 },		// 39 bits per transform
-			{ 4, 0, 5 },		// 39 bits per transform
-			{ 4, 1, 2 },		// 39 bits per transform
-			{ 4, 2, 1 },		// 39 bits per transform
-			{ 4, 5, 0 },		// 39 bits per transform
-			{ 5, 0, 4 },		// 39 bits per transform
-			{ 5, 1, 1 },		// 39 bits per transform
-			{ 5, 4, 0 },		// 39 bits per transform
-			{ 6, 0, 3 },		// 39 bits per transform
-			{ 6, 3, 0 },		// 39 bits per transform
-			{ 7, 0, 2 },		// 39 bits per transform
-			{ 7, 2, 0 },		// 39 bits per transform
-			{ 8, 0, 1 },		// 39 bits per transform
-			{ 8, 1, 0 },		// 39 bits per transform
-			{ 11, 0, 0 },		// 39 bits per transform
-			{ 0, 0, 12 },		// 42 bits per transform
-			{ 0, 1, 9 },		// 42 bits per transform
-			{ 0, 2, 8 },		// 42 bits per transform
-			{ 0, 3, 7 },		// 42 bits per transform
-			{ 0, 4, 6 },		// 42 bits per transform
-			{ 0, 5, 5 },		// 42 bits per transform
-			{ 0, 6, 4 },		// 42 bits per transform
-			{ 0, 7, 3 },		// 42 bits per transform
-			{ 0, 8, 2 },		// 42 bits per transform
-			{ 0, 9, 1 },		// 42 bits per transform
-			{ 0, 12, 0 },		// 42 bits per transform
-			{ 1, 0, 9 },		// 42 bits per transform
-			{ 1, 1, 6 },		// 42 bits per transform
-			{ 1, 2, 5 },		// 42 bits per transform
-			{ 1, 3, 4 },		// 42 bits per transform
-			{ 1, 4, 3 },		// 42 bits per transform
-			{ 1, 5, 2 },		// 42 bits per transform
-			{ 1, 6, 1 },		// 42 bits per transform
-			{ 1, 9, 0 },		// 42 bits per transform
-			{ 2, 0, 8 },		// 42 bits per transform
-			{ 2, 1, 5 },		// 42 bits per transform
-			{ 2, 2, 4 },		// 42 bits per transform
-			{ 2, 3, 3 },		// 42 bits per transform
-			{ 2, 4, 2 },		// 42 bits per transform
-			{ 2, 5, 1 },		// 42 bits per transform
-			{ 2, 8, 0 },		// 42 bits per transform
-			{ 3, 0, 7 },		// 42 bits per transform
-			{ 3, 1, 4 },		// 42 bits per transform
-			{ 3, 2, 3 },		// 42 bits per transform
-			{ 3, 3, 2 },		// 42 bits per transform
-			{ 3, 4, 1 },		// 42 bits per transform
-			{ 3, 7, 0 },		// 42 bits per transform
-			{ 4, 0, 6 },		// 42 bits per transform
-			{ 4, 1, 3 },		// 42 bits per transform
-			{ 4, 2, 2 },		// 42 bits per transform
-			{ 4, 3, 1 },		// 42 bits per transform
-			{ 4, 6, 0 },		// 42 bits per transform
-			{ 5, 0, 5 },		// 42 bits per transform
-			{ 5, 1, 2 },		// 42 bits per transform
-			{ 5, 2, 1 },		// 42 bits per transform
-			{ 5, 5, 0 },		// 42 bits per transform
-			{ 6, 0, 4 },		// 42 bits per transform
-			{ 6, 1, 1 },		// 42 bits per transform
-			{ 6, 4, 0 },		// 42 bits per transform
-			{ 7, 0, 3 },		// 42 bits per transform
-			{ 7, 3, 0 },		// 42 bits per transform
-			{ 8, 0, 2 },		// 42 bits per transform
-			{ 8, 2, 0 },		// 42 bits per transform
-			{ 9, 0, 1 },		// 42 bits per transform
-			{ 9, 1, 0 },		// 42 bits per transform
-			{ 12, 0, 0 },		// 42 bits per transform
-			{ 0, 0, 13 },		// 45 bits per transform
-			{ 0, 1, 10 },		// 45 bits per transform
-			{ 0, 2, 9 },		// 45 bits per transform
-			{ 0, 3, 8 },		// 45 bits per transform
-			{ 0, 4, 7 },		// 45 bits per transform
-			{ 0, 5, 6 },		// 45 bits per transform
-			{ 0, 6, 5 },		// 45 bits per transform
-			{ 0, 7, 4 },		// 45 bits per transform
-			{ 0, 8, 3 },		// 45 bits per transform
-			{ 0, 9, 2 },		// 45 bits per transform
-			{ 0, 10, 1 },		// 45 bits per transform
-			{ 0, 13, 0 },		// 45 bits per transform
-			{ 1, 0, 10 },		// 45 bits per transform
-			{ 1, 1, 7 },		// 45 bits per transform
-			{ 1, 2, 6 },		// 45 bits per transform
-			{ 1, 3, 5 },		// 45 bits per transform
-			{ 1, 4, 4 },		// 45 bits per transform
-			{ 1, 5, 3 },		// 45 bits per transform
-			{ 1, 6, 2 },		// 45 bits per transform
-			{ 1, 7, 1 },		// 45 bits per transform
-			{ 1, 10, 0 },		// 45 bits per transform
-			{ 2, 0, 9 },		// 45 bits per transform
-			{ 2, 1, 6 },		// 45 bits per transform
-			{ 2, 2, 5 },		// 45 bits per transform
-			{ 2, 3, 4 },		// 45 bits per transform
-			{ 2, 4, 3 },		// 45 bits per transform
-			{ 2, 5, 2 },		// 45 bits per transform
-			{ 2, 6, 1 },		// 45 bits per transform
-			{ 2, 9, 0 },		// 45 bits per transform
-			{ 3, 0, 8 },		// 45 bits per transform
-			{ 3, 1, 5 },		// 45 bits per transform
-			{ 3, 2, 4 },		// 45 bits per transform
-			{ 3, 3, 3 },		// 45 bits per transform
-			{ 3, 4, 2 },		// 45 bits per transform
-			{ 3, 5, 1 },		// 45 bits per transform
-			{ 3, 8, 0 },		// 45 bits per transform
-			{ 4, 0, 7 },		// 45 bits per transform
-			{ 4, 1, 4 },		// 45 bits per transform
-			{ 4, 2, 3 },		// 45 bits per transform
-			{ 4, 3, 2 },		// 45 bits per transform
-			{ 4, 4, 1 },		// 45 bits per transform
-			{ 4, 7, 0 },		// 45 bits per transform
-			{ 5, 0, 6 },		// 45 bits per transform
-			{ 5, 1, 3 },		// 45 bits per transform
-			{ 5, 2, 2 },		// 45 bits per transform
-			{ 5, 3, 1 },		// 45 bits per transform
-			{ 5, 6, 0 },		// 45 bits per transform
-			{ 6, 0, 5 },		// 45 bits per transform
-			{ 6, 1, 2 },		// 45 bits per transform
-			{ 6, 2, 1 },		// 45 bits per transform
-			{ 6, 5, 0 },		// 45 bits per transform
-			{ 7, 0, 4 },		// 45 bits per transform
-			{ 7, 1, 1 },		// 45 bits per transform
-			{ 7, 4, 0 },		// 45 bits per transform
-			{ 8, 0, 3 },		// 45 bits per transform
-			{ 8, 3, 0 },		// 45 bits per transform
-			{ 9, 0, 2 },		// 45 bits per transform
-			{ 9, 2, 0 },		// 45 bits per transform
-			{ 10, 0, 1 },		// 45 bits per transform
-			{ 10, 1, 0 },		// 45 bits per transform
-			{ 13, 0, 0 },		// 45 bits per transform
-			{ 0, 0, 14 },		// 48 bits per transform
-			{ 0, 1, 11 },		// 48 bits per transform
-			{ 0, 2, 10 },		// 48 bits per transform
-			{ 0, 3, 9 },		// 48 bits per transform
-			{ 0, 4, 8 },		// 48 bits per transform
-			{ 0, 5, 7 },		// 48 bits per transform
-			{ 0, 6, 6 },		// 48 bits per transform
-			{ 0, 7, 5 },		// 48 bits per transform
-			{ 0, 8, 4 },		// 48 bits per transform
-			{ 0, 9, 3 },		// 48 bits per transform
-			{ 0, 10, 2 },		// 48 bits per transform
-			{ 0, 11, 1 },		// 48 bits per transform
-			{ 0, 14, 0 },		// 48 bits per transform
-			{ 1, 0, 11 },		// 48 bits per transform
-			{ 1, 1, 8 },		// 48 bits per transform
-			{ 1, 2, 7 },		// 48 bits per transform
-			{ 1, 3, 6 },		// 48 bits per transform
-			{ 1, 4, 5 },		// 48 bits per transform
-			{ 1, 5, 4 },		// 48 bits per transform
-			{ 1, 6, 3 },		// 48 bits per transform
-			{ 1, 7, 2 },		// 48 bits per transform
-			{ 1, 8, 1 },		// 48 bits per transform
-			{ 1, 11, 0 },		// 48 bits per transform
-			{ 2, 0, 10 },		// 48 bits per transform
-			{ 2, 1, 7 },		// 48 bits per transform
-			{ 2, 2, 6 },		// 48 bits per transform
-			{ 2, 3, 5 },		// 48 bits per transform
-			{ 2, 4, 4 },		// 48 bits per transform
-			{ 2, 5, 3 },		// 48 bits per transform
-			{ 2, 6, 2 },		// 48 bits per transform
-			{ 2, 7, 1 },		// 48 bits per transform
-			{ 2, 10, 0 },		// 48 bits per transform
-			{ 3, 0, 9 },		// 48 bits per transform
-			{ 3, 1, 6 },		// 48 bits per transform
-			{ 3, 2, 5 },		// 48 bits per transform
-			{ 3, 3, 4 },		// 48 bits per transform
-			{ 3, 4, 3 },		// 48 bits per transform
-			{ 3, 5, 2 },		// 48 bits per transform
-			{ 3, 6, 1 },		// 48 bits per transform
-			{ 3, 9, 0 },		// 48 bits per transform
-			{ 4, 0, 8 },		// 48 bits per transform
-			{ 4, 1, 5 },		// 48 bits per transform
-			{ 4, 2, 4 },		// 48 bits per transform
-			{ 4, 3, 3 },		// 48 bits per transform
-			{ 4, 4, 2 },		// 48 bits per transform
-			{ 4, 5, 1 },		// 48 bits per transform
-			{ 4, 8, 0 },		// 48 bits per transform
-			{ 5, 0, 7 },		// 48 bits per transform
-			{ 5, 1, 4 },		// 48 bits per transform
-			{ 5, 2, 3 },		// 48 bits per transform
-			{ 5, 3, 2 },		// 48 bits per transform
-			{ 5, 4, 1 },		// 48 bits per transform
-			{ 5, 7, 0 },		// 48 bits per transform
-			{ 6, 0, 6 },		// 48 bits per transform
-			{ 6, 1, 3 },		// 48 bits per transform
-			{ 6, 2, 2 },		// 48 bits per transform
-			{ 6, 3, 1 },		// 48 bits per transform
-			{ 6, 6, 0 },		// 48 bits per transform
-			{ 7, 0, 5 },		// 48 bits per transform
-			{ 7, 1, 2 },		// 48 bits per transform
-			{ 7, 2, 1 },		// 48 bits per transform
-			{ 7, 5, 0 },		// 48 bits per transform
-			{ 8, 0, 4 },		// 48 bits per transform
-			{ 8, 1, 1 },		// 48 bits per transform
-			{ 8, 4, 0 },		// 48 bits per transform
-			{ 9, 0, 3 },		// 48 bits per transform
-			{ 9, 3, 0 },		// 48 bits per transform
-			{ 10, 0, 2 },		// 48 bits per transform
-			{ 10, 2, 0 },		// 48 bits per transform
-			{ 11, 0, 1 },		// 48 bits per transform
-			{ 11, 1, 0 },		// 48 bits per transform
-			{ 14, 0, 0 },		// 48 bits per transform
-			{ 0, 0, 15 },		// 51 bits per transform
-			{ 0, 1, 12 },		// 51 bits per transform
-			{ 0, 2, 11 },		// 51 bits per transform
-			{ 0, 3, 10 },		// 51 bits per transform
-			{ 0, 4, 9 },		// 51 bits per transform
-			{ 0, 5, 8 },		// 51 bits per transform
-			{ 0, 6, 7 },		// 51 bits per transform
-			{ 0, 7, 6 },		// 51 bits per transform
-			{ 0, 8, 5 },		// 51 bits per transform
-			{ 0, 9, 4 },		// 51 bits per transform
-			{ 0, 10, 3 },		// 51 bits per transform
-			{ 0, 11, 2 },		// 51 bits per transform
-			{ 0, 12, 1 },		// 51 bits per transform
-			{ 0, 15, 0 },		// 51 bits per transform
-			{ 1, 0, 12 },		// 51 bits per transform
-			{ 1, 1, 9 },		// 51 bits per transform
-			{ 1, 2, 8 },		// 51 bits per transform
-			{ 1, 3, 7 },		// 51 bits per transform
-			{ 1, 4, 6 },		// 51 bits per transform
-			{ 1, 5, 5 },		// 51 bits per transform
-			{ 1, 6, 4 },		// 51 bits per transform
-			{ 1, 7, 3 },		// 51 bits per transform
-			{ 1, 8, 2 },		// 51 bits per transform
-			{ 1, 9, 1 },		// 51 bits per transform
-			{ 1, 12, 0 },		// 51 bits per transform
-			{ 2, 0, 11 },		// 51 bits per transform
-			{ 2, 1, 8 },		// 51 bits per transform
-			{ 2, 2, 7 },		// 51 bits per transform
-			{ 2, 3, 6 },		// 51 bits per transform
-			{ 2, 4, 5 },		// 51 bits per transform
-			{ 2, 5, 4 },		// 51 bits per transform
-			{ 2, 6, 3 },		// 51 bits per transform
-			{ 2, 7, 2 },		// 51 bits per transform
-			{ 2, 8, 1 },		// 51 bits per transform
-			{ 2, 11, 0 },		// 51 bits per transform
-			{ 3, 0, 10 },		// 51 bits per transform
-			{ 3, 1, 7 },		// 51 bits per transform
-			{ 3, 2, 6 },		// 51 bits per transform
-			{ 3, 3, 5 },		// 51 bits per transform
-			{ 3, 4, 4 },		// 51 bits per transform
-			{ 3, 5, 3 },		// 51 bits per transform
-			{ 3, 6, 2 },		// 51 bits per transform
-			{ 3, 7, 1 },		// 51 bits per transform
-			{ 3, 10, 0 },		// 51 bits per transform
-			{ 4, 0, 9 },		// 51 bits per transform
-			{ 4, 1, 6 },		// 51 bits per transform
-			{ 4, 2, 5 },		// 51 bits per transform
-			{ 4, 3, 4 },		// 51 bits per transform
-			{ 4, 4, 3 },		// 51 bits per transform
-			{ 4, 5, 2 },		// 51 bits per transform
-			{ 4, 6, 1 },		// 51 bits per transform
-			{ 4, 9, 0 },		// 51 bits per transform
-			{ 5, 0, 8 },		// 51 bits per transform
-			{ 5, 1, 5 },		// 51 bits per transform
-			{ 5, 2, 4 },		// 51 bits per transform
-			{ 5, 3, 3 },		// 51 bits per transform
-			{ 5, 4, 2 },		// 51 bits per transform
-			{ 5, 5, 1 },		// 51 bits per transform
-			{ 5, 8, 0 },		// 51 bits per transform
-			{ 6, 0, 7 },		// 51 bits per transform
-			{ 6, 1, 4 },		// 51 bits per transform
-			{ 6, 2, 3 },		// 51 bits per transform
-			{ 6, 3, 2 },		// 51 bits per transform
-			{ 6, 4, 1 },		// 51 bits per transform
-			{ 6, 7, 0 },		// 51 bits per transform
-			{ 7, 0, 6 },		// 51 bits per transform
-			{ 7, 1, 3 },		// 51 bits per transform
-			{ 7, 2, 2 },		// 51 bits per transform
-			{ 7, 3, 1 },		// 51 bits per transform
-			{ 7, 6, 0 },		// 51 bits per transform
-			{ 8, 0, 5 },		// 51 bits per transform
-			{ 8, 1, 2 },		// 51 bits per transform
-			{ 8, 2, 1 },		// 51 bits per transform
-			{ 8, 5, 0 },		// 51 bits per transform
-			{ 9, 0, 4 },		// 51 bits per transform
-			{ 9, 1, 1 },		// 51 bits per transform
-			{ 9, 4, 0 },		// 51 bits per transform
-			{ 10, 0, 3 },		// 51 bits per transform
-			{ 10, 3, 0 },		// 51 bits per transform
-			{ 11, 0, 2 },		// 51 bits per transform
-			{ 11, 2, 0 },		// 51 bits per transform
-			{ 12, 0, 1 },		// 51 bits per transform
-			{ 12, 1, 0 },		// 51 bits per transform
-			{ 15, 0, 0 },		// 51 bits per transform
-			{ 0, 0, 16 },		// 54 bits per transform
-			{ 0, 1, 13 },		// 54 bits per transform
-			{ 0, 2, 12 },		// 54 bits per transform
-			{ 0, 3, 11 },		// 54 bits per transform
-			{ 0, 4, 10 },		// 54 bits per transform
-			{ 0, 5, 9 },		// 54 bits per transform
-			{ 0, 6, 8 },		// 54 bits per transform
-			{ 0, 7, 7 },		// 54 bits per transform
-			{ 0, 8, 6 },		// 54 bits per transform
-			{ 0, 9, 5 },		// 54 bits per transform
-			{ 0, 10, 4 },		// 54 bits per transform
-			{ 0, 11, 3 },		// 54 bits per transform
-			{ 0, 12, 2 },		// 54 bits per transform
-			{ 0, 13, 1 },		// 54 bits per transform
-			{ 0, 16, 0 },		// 54 bits per transform
-			{ 1, 0, 13 },		// 54 bits per transform
-			{ 1, 1, 10 },		// 54 bits per transform
-			{ 1, 2, 9 },		// 54 bits per transform
-			{ 1, 3, 8 },		// 54 bits per transform
-			{ 1, 4, 7 },		// 54 bits per transform
-			{ 1, 5, 6 },		// 54 bits per transform
-			{ 1, 6, 5 },		// 54 bits per transform
-			{ 1, 7, 4 },		// 54 bits per transform
-			{ 1, 8, 3 },		// 54 bits per transform
-			{ 1, 9, 2 },		// 54 bits per transform
-			{ 1, 10, 1 },		// 54 bits per transform
-			{ 1, 13, 0 },		// 54 bits per transform
-			{ 2, 0, 12 },		// 54 bits per transform
-			{ 2, 1, 9 },		// 54 bits per transform
-			{ 2, 2, 8 },		// 54 bits per transform
-			{ 2, 3, 7 },		// 54 bits per transform
-			{ 2, 4, 6 },		// 54 bits per transform
-			{ 2, 5, 5 },		// 54 bits per transform
-			{ 2, 6, 4 },		// 54 bits per transform
-			{ 2, 7, 3 },		// 54 bits per transform
-			{ 2, 8, 2 },		// 54 bits per transform
-			{ 2, 9, 1 },		// 54 bits per transform
-			{ 2, 12, 0 },		// 54 bits per transform
-			{ 3, 0, 11 },		// 54 bits per transform
-			{ 3, 1, 8 },		// 54 bits per transform
-			{ 3, 2, 7 },		// 54 bits per transform
-			{ 3, 3, 6 },		// 54 bits per transform
-			{ 3, 4, 5 },		// 54 bits per transform
-			{ 3, 5, 4 },		// 54 bits per transform
-			{ 3, 6, 3 },		// 54 bits per transform
-			{ 3, 7, 2 },		// 54 bits per transform
-			{ 3, 8, 1 },		// 54 bits per transform
-			{ 3, 11, 0 },		// 54 bits per transform
-			{ 4, 0, 10 },		// 54 bits per transform
-			{ 4, 1, 7 },		// 54 bits per transform
-			{ 4, 2, 6 },		// 54 bits per transform
-			{ 4, 3, 5 },		// 54 bits per transform
-			{ 4, 4, 4 },		// 54 bits per transform
-			{ 4, 5, 3 },		// 54 bits per transform
-			{ 4, 6, 2 },		// 54 bits per transform
-			{ 4, 7, 1 },		// 54 bits per transform
-			{ 4, 10, 0 },		// 54 bits per transform
-			{ 5, 0, 9 },		// 54 bits per transform
-			{ 5, 1, 6 },		// 54 bits per transform
-			{ 5, 2, 5 },		// 54 bits per transform
-			{ 5, 3, 4 },		// 54 bits per transform
-			{ 5, 4, 3 },		// 54 bits per transform
-			{ 5, 5, 2 },		// 54 bits per transform
-			{ 5, 6, 1 },		// 54 bits per transform
-			{ 5, 9, 0 },		// 54 bits per transform
-			{ 6, 0, 8 },		// 54 bits per transform
-			{ 6, 1, 5 },		// 54 bits per transform
-			{ 6, 2, 4 },		// 54 bits per transform
-			{ 6, 3, 3 },		// 54 bits per transform
-			{ 6, 4, 2 },		// 54 bits per transform
-			{ 6, 5, 1 },		// 54 bits per transform
-			{ 6, 8, 0 },		// 54 bits per transform
-			{ 7, 0, 7 },		// 54 bits per transform
-			{ 7, 1, 4 },		// 54 bits per transform
-			{ 7, 2, 3 },		// 54 bits per transform
-			{ 7, 3, 2 },		// 54 bits per transform
-			{ 7, 4, 1 },		// 54 bits per transform
-			{ 7, 7, 0 },		// 54 bits per transform
-			{ 8, 0, 6 },		// 54 bits per transform
-			{ 8, 1, 3 },		// 54 bits per transform
-			{ 8, 2, 2 },		// 54 bits per transform
-			{ 8, 3, 1 },		// 54 bits per transform
-			{ 8, 6, 0 },		// 54 bits per transform
-			{ 9, 0, 5 },		// 54 bits per transform
-			{ 9, 1, 2 },		// 54 bits per transform
-			{ 9, 2, 1 },		// 54 bits per transform
-			{ 9, 5, 0 },		// 54 bits per transform
-			{ 10, 0, 4 },		// 54 bits per transform
-			{ 10, 1, 1 },		// 54 bits per transform
-			{ 10, 4, 0 },		// 54 bits per transform
-			{ 11, 0, 3 },		// 54 bits per transform
-			{ 11, 3, 0 },		// 54 bits per transform
-			{ 12, 0, 2 },		// 54 bits per transform
-			{ 12, 2, 0 },		// 54 bits per transform
-			{ 13, 0, 1 },		// 54 bits per transform
-			{ 13, 1, 0 },		// 54 bits per transform
-			{ 16, 0, 0 },		// 54 bits per transform
-			{ 0, 0, 17 },		// 57 bits per transform
-			{ 0, 1, 14 },		// 57 bits per transform
-			{ 0, 2, 13 },		// 57 bits per transform
-			{ 0, 3, 12 },		// 57 bits per transform
-			{ 0, 4, 11 },		// 57 bits per transform
-			{ 0, 5, 10 },		// 57 bits per transform
-			{ 0, 6, 9 },		// 57 bits per transform
-			{ 0, 7, 8 },		// 57 bits per transform
-			{ 0, 8, 7 },		// 57 bits per transform
-			{ 0, 9, 6 },		// 57 bits per transform
-			{ 0, 10, 5 },		// 57 bits per transform
-			{ 0, 11, 4 },		// 57 bits per transform
-			{ 0, 12, 3 },		// 57 bits per transform
-			{ 0, 13, 2 },		// 57 bits per transform
-			{ 0, 14, 1 },		// 57 bits per transform
-			{ 0, 17, 0 },		// 57 bits per transform
-			{ 1, 0, 14 },		// 57 bits per transform
-			{ 1, 1, 11 },		// 57 bits per transform
-			{ 1, 2, 10 },		// 57 bits per transform
-			{ 1, 3, 9 },		// 57 bits per transform
-			{ 1, 4, 8 },		// 57 bits per transform
-			{ 1, 5, 7 },		// 57 bits per transform
-			{ 1, 6, 6 },		// 57 bits per transform
-			{ 1, 7, 5 },		// 57 bits per transform
-			{ 1, 8, 4 },		// 57 bits per transform
-			{ 1, 9, 3 },		// 57 bits per transform
-			{ 1, 10, 2 },		// 57 bits per transform
-			{ 1, 11, 1 },		// 57 bits per transform
-			{ 1, 14, 0 },		// 57 bits per transform
-			{ 2, 0, 13 },		// 57 bits per transform
-			{ 2, 1, 10 },		// 57 bits per transform
-			{ 2, 2, 9 },		// 57 bits per transform
-			{ 2, 3, 8 },		// 57 bits per transform
-			{ 2, 4, 7 },		// 57 bits per transform
-			{ 2, 5, 6 },		// 57 bits per transform
-			{ 2, 6, 5 },		// 57 bits per transform
-			{ 2, 7, 4 },		// 57 bits per transform
-			{ 2, 8, 3 },		// 57 bits per transform
-			{ 2, 9, 2 },		// 57 bits per transform
-			{ 2, 10, 1 },		// 57 bits per transform
-			{ 2, 13, 0 },		// 57 bits per transform
-			{ 3, 0, 12 },		// 57 bits per transform
-			{ 3, 1, 9 },		// 57 bits per transform
-			{ 3, 2, 8 },		// 57 bits per transform
-			{ 3, 3, 7 },		// 57 bits per transform
-			{ 3, 4, 6 },		// 57 bits per transform
-			{ 3, 5, 5 },		// 57 bits per transform
-			{ 3, 6, 4 },		// 57 bits per transform
-			{ 3, 7, 3 },		// 57 bits per transform
-			{ 3, 8, 2 },		// 57 bits per transform
-			{ 3, 9, 1 },		// 57 bits per transform
-			{ 3, 12, 0 },		// 57 bits per transform
-			{ 4, 0, 11 },		// 57 bits per transform
-			{ 4, 1, 8 },		// 57 bits per transform
-			{ 4, 2, 7 },		// 57 bits per transform
-			{ 4, 3, 6 },		// 57 bits per transform
-			{ 4, 4, 5 },		// 57 bits per transform
-			{ 4, 5, 4 },		// 57 bits per transform
-			{ 4, 6, 3 },		// 57 bits per transform
-			{ 4, 7, 2 },		// 57 bits per transform
-			{ 4, 8, 1 },		// 57 bits per transform
-			{ 4, 11, 0 },		// 57 bits per transform
-			{ 5, 0, 10 },		// 57 bits per transform
-			{ 5, 1, 7 },		// 57 bits per transform
-			{ 5, 2, 6 },		// 57 bits per transform
-			{ 5, 3, 5 },		// 57 bits per transform
-			{ 5, 4, 4 },		// 57 bits per transform
-			{ 5, 5, 3 },		// 57 bits per transform
-			{ 5, 6, 2 },		// 57 bits per transform
-			{ 5, 7, 1 },		// 57 bits per transform
-			{ 5, 10, 0 },		// 57 bits per transform
-			{ 6, 0, 9 },		// 57 bits per transform
-			{ 6, 1, 6 },		// 57 bits per transform
-			{ 6, 2, 5 },		// 57 bits per transform
-			{ 6, 3, 4 },		// 57 bits per transform
-			{ 6, 4, 3 },		// 57 bits per transform
-			{ 6, 5, 2 },		// 57 bits per transform
-			{ 6, 6, 1 },		// 57 bits per transform
-			{ 6, 9, 0 },		// 57 bits per transform
-			{ 7, 0, 8 },		// 57 bits per transform
-			{ 7, 1, 5 },		// 57 bits per transform
-			{ 7, 2, 4 },		// 57 bits per transform
-			{ 7, 3, 3 },		// 57 bits per transform
-			{ 7, 4, 2 },		// 57 bits per transform
-			{ 7, 5, 1 },		// 57 bits per transform
-			{ 7, 8, 0 },		// 57 bits per transform
-			{ 8, 0, 7 },		// 57 bits per transform
-			{ 8, 1, 4 },		// 57 bits per transform
-			{ 8, 2, 3 },		// 57 bits per transform
-			{ 8, 3, 2 },		// 57 bits per transform
-			{ 8, 4, 1 },		// 57 bits per transform
-			{ 8, 7, 0 },		// 57 bits per transform
-			{ 9, 0, 6 },		// 57 bits per transform
-			{ 9, 1, 3 },		// 57 bits per transform
-			{ 9, 2, 2 },		// 57 bits per transform
-			{ 9, 3, 1 },		// 57 bits per transform
-			{ 9, 6, 0 },		// 57 bits per transform
-			{ 10, 0, 5 },		// 57 bits per transform
-			{ 10, 1, 2 },		// 57 bits per transform
-			{ 10, 2, 1 },		// 57 bits per transform
-			{ 10, 5, 0 },		// 57 bits per transform
-			{ 11, 0, 4 },		// 57 bits per transform
-			{ 11, 1, 1 },		// 57 bits per transform
-			{ 11, 4, 0 },		// 57 bits per transform
-			{ 12, 0, 3 },		// 57 bits per transform
-			{ 12, 3, 0 },		// 57 bits per transform
-			{ 13, 0, 2 },		// 57 bits per transform
-			{ 13, 2, 0 },		// 57 bits per transform
-			{ 14, 0, 1 },		// 57 bits per transform
-			{ 14, 1, 0 },		// 57 bits per transform
-			{ 17, 0, 0 },		// 57 bits per transform
-			{ 0, 1, 15 },		// 60 bits per transform
-			{ 0, 2, 14 },		// 60 bits per transform
-			{ 0, 3, 13 },		// 60 bits per transform
-			{ 0, 4, 12 },		// 60 bits per transform
-			{ 0, 5, 11 },		// 60 bits per transform
-			{ 0, 6, 10 },		// 60 bits per transform
-			{ 0, 7, 9 },		// 60 bits per transform
-			{ 0, 8, 8 },		// 60 bits per transform
-			{ 0, 9, 7 },		// 60 bits per transform
-			{ 0, 10, 6 },		// 60 bits per transform
-			{ 0, 11, 5 },		// 60 bits per transform
-			{ 0, 12, 4 },		// 60 bits per transform
-			{ 0, 13, 3 },		// 60 bits per transform
-			{ 0, 14, 2 },		// 60 bits per transform
-			{ 0, 15, 1 },		// 60 bits per transform
-			{ 1, 0, 15 },		// 60 bits per transform
-			{ 1, 1, 12 },		// 60 bits per transform
-			{ 1, 2, 11 },		// 60 bits per transform
-			{ 1, 3, 10 },		// 60 bits per transform
-			{ 1, 4, 9 },		// 60 bits per transform
-			{ 1, 5, 8 },		// 60 bits per transform
-			{ 1, 6, 7 },		// 60 bits per transform
-			{ 1, 7, 6 },		// 60 bits per transform
-			{ 1, 8, 5 },		// 60 bits per transform
-			{ 1, 9, 4 },		// 60 bits per transform
-			{ 1, 10, 3 },		// 60 bits per transform
-			{ 1, 11, 2 },		// 60 bits per transform
-			{ 1, 12, 1 },		// 60 bits per transform
-			{ 1, 15, 0 },		// 60 bits per transform
-			{ 2, 0, 14 },		// 60 bits per transform
-			{ 2, 1, 11 },		// 60 bits per transform
-			{ 2, 2, 10 },		// 60 bits per transform
-			{ 2, 3, 9 },		// 60 bits per transform
-			{ 2, 4, 8 },		// 60 bits per transform
-			{ 2, 5, 7 },		// 60 bits per transform
-			{ 2, 6, 6 },		// 60 bits per transform
-			{ 2, 7, 5 },		// 60 bits per transform
-			{ 2, 8, 4 },		// 60 bits per transform
-			{ 2, 9, 3 },		// 60 bits per transform
-			{ 2, 10, 2 },		// 60 bits per transform
-			{ 2, 11, 1 },		// 60 bits per transform
-			{ 2, 14, 0 },		// 60 bits per transform
-			{ 3, 0, 13 },		// 60 bits per transform
-			{ 3, 1, 10 },		// 60 bits per transform
-			{ 3, 2, 9 },		// 60 bits per transform
-			{ 3, 3, 8 },		// 60 bits per transform
-			{ 3, 4, 7 },		// 60 bits per transform
-			{ 3, 5, 6 },		// 60 bits per transform
-			{ 3, 6, 5 },		// 60 bits per transform
-			{ 3, 7, 4 },		// 60 bits per transform
-			{ 3, 8, 3 },		// 60 bits per transform
-			{ 3, 9, 2 },		// 60 bits per transform
-			{ 3, 10, 1 },		// 60 bits per transform
-			{ 3, 13, 0 },		// 60 bits per transform
-			{ 4, 0, 12 },		// 60 bits per transform
-			{ 4, 1, 9 },		// 60 bits per transform
-			{ 4, 2, 8 },		// 60 bits per transform
-			{ 4, 3, 7 },		// 60 bits per transform
-			{ 4, 4, 6 },		// 60 bits per transform
-			{ 4, 5, 5 },		// 60 bits per transform
-			{ 4, 6, 4 },		// 60 bits per transform
-			{ 4, 7, 3 },		// 60 bits per transform
-			{ 4, 8, 2 },		// 60 bits per transform
-			{ 4, 9, 1 },		// 60 bits per transform
-			{ 4, 12, 0 },		// 60 bits per transform
-			{ 5, 0, 11 },		// 60 bits per transform
-			{ 5, 1, 8 },		// 60 bits per transform
-			{ 5, 2, 7 },		// 60 bits per transform
-			{ 5, 3, 6 },		// 60 bits per transform
-			{ 5, 4, 5 },		// 60 bits per transform
-			{ 5, 5, 4 },		// 60 bits per transform
-			{ 5, 6, 3 },		// 60 bits per transform
-			{ 5, 7, 2 },		// 60 bits per transform
-			{ 5, 8, 1 },		// 60 bits per transform
-			{ 5, 11, 0 },		// 60 bits per transform
-			{ 6, 0, 10 },		// 60 bits per transform
-			{ 6, 1, 7 },		// 60 bits per transform
-			{ 6, 2, 6 },		// 60 bits per transform
-			{ 6, 3, 5 },		// 60 bits per transform
-			{ 6, 4, 4 },		// 60 bits per transform
-			{ 6, 5, 3 },		// 60 bits per transform
-			{ 6, 6, 2 },		// 60 bits per transform
-			{ 6, 7, 1 },		// 60 bits per transform
-			{ 6, 10, 0 },		// 60 bits per transform
-			{ 7, 0, 9 },		// 60 bits per transform
-			{ 7, 1, 6 },		// 60 bits per transform
-			{ 7, 2, 5 },		// 60 bits per transform
-			{ 7, 3, 4 },		// 60 bits per transform
-			{ 7, 4, 3 },		// 60 bits per transform
-			{ 7, 5, 2 },		// 60 bits per transform
-			{ 7, 6, 1 },		// 60 bits per transform
-			{ 7, 9, 0 },		// 60 bits per transform
-			{ 8, 0, 8 },		// 60 bits per transform
-			{ 8, 1, 5 },		// 60 bits per transform
-			{ 8, 2, 4 },		// 60 bits per transform
-			{ 8, 3, 3 },		// 60 bits per transform
-			{ 8, 4, 2 },		// 60 bits per transform
-			{ 8, 5, 1 },		// 60 bits per transform
-			{ 8, 8, 0 },		// 60 bits per transform
-			{ 9, 0, 7 },		// 60 bits per transform
-			{ 9, 1, 4 },		// 60 bits per transform
-			{ 9, 2, 3 },		// 60 bits per transform
-			{ 9, 3, 2 },		// 60 bits per transform
-			{ 9, 4, 1 },		// 60 bits per transform
-			{ 9, 7, 0 },		// 60 bits per transform
-			{ 10, 0, 6 },		// 60 bits per transform
-			{ 10, 1, 3 },		// 60 bits per transform
-			{ 10, 2, 2 },		// 60 bits per transform
-			{ 10, 3, 1 },		// 60 bits per transform
-			{ 10, 6, 0 },		// 60 bits per transform
-			{ 11, 0, 5 },		// 60 bits per transform
-			{ 11, 1, 2 },		// 60 bits per transform
-			{ 11, 2, 1 },		// 60 bits per transform
-			{ 11, 5, 0 },		// 60 bits per transform
-			{ 12, 0, 4 },		// 60 bits per transform
-			{ 12, 1, 1 },		// 60 bits per transform
-			{ 12, 4, 0 },		// 60 bits per transform
-			{ 13, 0, 3 },		// 60 bits per transform
-			{ 13, 3, 0 },		// 60 bits per transform
-			{ 14, 0, 2 },		// 60 bits per transform
-			{ 14, 2, 0 },		// 60 bits per transform
-			{ 15, 0, 1 },		// 60 bits per transform
-			{ 15, 1, 0 },		// 60 bits per transform
-			{ 0, 1, 16 },		// 63 bits per transform
-			{ 0, 2, 15 },		// 63 bits per transform
-			{ 0, 3, 14 },		// 63 bits per transform
-			{ 0, 4, 13 },		// 63 bits per transform
-			{ 0, 5, 12 },		// 63 bits per transform
-			{ 0, 6, 11 },		// 63 bits per transform
-			{ 0, 7, 10 },		// 63 bits per transform
-			{ 0, 8, 9 },		// 63 bits per transform
-			{ 0, 9, 8 },		// 63 bits per transform
-			{ 0, 10, 7 },		// 63 bits per transform
-			{ 0, 11, 6 },		// 63 bits per transform
-			{ 0, 12, 5 },		// 63 bits per transform
-			{ 0, 13, 4 },		// 63 bits per transform
-			{ 0, 14, 3 },		// 63 bits per transform
-			{ 0, 15, 2 },		// 63 bits per transform
-			{ 0, 16, 1 },		// 63 bits per transform
-			{ 1, 0, 16 },		// 63 bits per transform
-			{ 1, 1, 13 },		// 63 bits per transform
-			{ 1, 2, 12 },		// 63 bits per transform
-			{ 1, 3, 11 },		// 63 bits per transform
-			{ 1, 4, 10 },		// 63 bits per transform
-			{ 1, 5, 9 },		// 63 bits per transform
-			{ 1, 6, 8 },		// 63 bits per transform
-			{ 1, 7, 7 },		// 63 bits per transform
-			{ 1, 8, 6 },		// 63 bits per transform
-			{ 1, 9, 5 },		// 63 bits per transform
-			{ 1, 10, 4 },		// 63 bits per transform
-			{ 1, 11, 3 },		// 63 bits per transform
-			{ 1, 12, 2 },		// 63 bits per transform
-			{ 1, 13, 1 },		// 63 bits per transform
-			{ 1, 16, 0 },		// 63 bits per transform
-			{ 2, 0, 15 },		// 63 bits per transform
-			{ 2, 1, 12 },		// 63 bits per transform
-			{ 2, 2, 11 },		// 63 bits per transform
-			{ 2, 3, 10 },		// 63 bits per transform
-			{ 2, 4, 9 },		// 63 bits per transform
-			{ 2, 5, 8 },		// 63 bits per transform
-			{ 2, 6, 7 },		// 63 bits per transform
-			{ 2, 7, 6 },		// 63 bits per transform
-			{ 2, 8, 5 },		// 63 bits per transform
-			{ 2, 9, 4 },		// 63 bits per transform
-			{ 2, 10, 3 },		// 63 bits per transform
-			{ 2, 11, 2 },		// 63 bits per transform
-			{ 2, 12, 1 },		// 63 bits per transform
-			{ 2, 15, 0 },		// 63 bits per transform
-			{ 3, 0, 14 },		// 63 bits per transform
-			{ 3, 1, 11 },		// 63 bits per transform
-			{ 3, 2, 10 },		// 63 bits per transform
-			{ 3, 3, 9 },		// 63 bits per transform
-			{ 3, 4, 8 },		// 63 bits per transform
-			{ 3, 5, 7 },		// 63 bits per transform
-			{ 3, 6, 6 },		// 63 bits per transform
-			{ 3, 7, 5 },		// 63 bits per transform
-			{ 3, 8, 4 },		// 63 bits per transform
-			{ 3, 9, 3 },		// 63 bits per transform
-			{ 3, 10, 2 },		// 63 bits per transform
-			{ 3, 11, 1 },		// 63 bits per transform
-			{ 3, 14, 0 },		// 63 bits per transform
-			{ 4, 0, 13 },		// 63 bits per transform
-			{ 4, 1, 10 },		// 63 bits per transform
-			{ 4, 2, 9 },		// 63 bits per transform
-			{ 4, 3, 8 },		// 63 bits per transform
-			{ 4, 4, 7 },		// 63 bits per transform
-			{ 4, 5, 6 },		// 63 bits per transform
-			{ 4, 6, 5 },		// 63 bits per transform
-			{ 4, 7, 4 },		// 63 bits per transform
-			{ 4, 8, 3 },		// 63 bits per transform
-			{ 4, 9, 2 },		// 63 bits per transform
-			{ 4, 10, 1 },		// 63 bits per transform
-			{ 4, 13, 0 },		// 63 bits per transform
-			{ 5, 0, 12 },		// 63 bits per transform
-			{ 5, 1, 9 },		// 63 bits per transform
-			{ 5, 2, 8 },		// 63 bits per transform
-			{ 5, 3, 7 },		// 63 bits per transform
-			{ 5, 4, 6 },		// 63 bits per transform
-			{ 5, 5, 5 },		// 63 bits per transform
-			{ 5, 6, 4 },		// 63 bits per transform
-			{ 5, 7, 3 },		// 63 bits per transform
-			{ 5, 8, 2 },		// 63 bits per transform
-			{ 5, 9, 1 },		// 63 bits per transform
-			{ 5, 12, 0 },		// 63 bits per transform
-			{ 6, 0, 11 },		// 63 bits per transform
-			{ 6, 1, 8 },		// 63 bits per transform
-			{ 6, 2, 7 },		// 63 bits per transform
-			{ 6, 3, 6 },		// 63 bits per transform
-			{ 6, 4, 5 },		// 63 bits per transform
-			{ 6, 5, 4 },		// 63 bits per transform
-			{ 6, 6, 3 },		// 63 bits per transform
-			{ 6, 7, 2 },		// 63 bits per transform
-			{ 6, 8, 1 },		// 63 bits per transform
-			{ 6, 11, 0 },		// 63 bits per transform
-			{ 7, 0, 10 },		// 63 bits per transform
-			{ 7, 1, 7 },		// 63 bits per transform
-			{ 7, 2, 6 },		// 63 bits per transform
-			{ 7, 3, 5 },		// 63 bits per transform
-			{ 7, 4, 4 },		// 63 bits per transform
-			{ 7, 5, 3 },		// 63 bits per transform
-			{ 7, 6, 2 },		// 63 bits per transform
-			{ 7, 7, 1 },		// 63 bits per transform
-			{ 7, 10, 0 },		// 63 bits per transform
-			{ 8, 0, 9 },		// 63 bits per transform
-			{ 8, 1, 6 },		// 63 bits per transform
-			{ 8, 2, 5 },		// 63 bits per transform
-			{ 8, 3, 4 },		// 63 bits per transform
-			{ 8, 4, 3 },		// 63 bits per transform
-			{ 8, 5, 2 },		// 63 bits per transform
-			{ 8, 6, 1 },		// 63 bits per transform
-			{ 8, 9, 0 },		// 63 bits per transform
-			{ 9, 0, 8 },		// 63 bits per transform
-			{ 9, 1, 5 },		// 63 bits per transform
-			{ 9, 2, 4 },		// 63 bits per transform
-			{ 9, 3, 3 },		// 63 bits per transform
-			{ 9, 4, 2 },		// 63 bits per transform
-			{ 9, 5, 1 },		// 63 bits per transform
-			{ 9, 8, 0 },		// 63 bits per transform
-			{ 10, 0, 7 },		// 63 bits per transform
-			{ 10, 1, 4 },		// 63 bits per transform
-			{ 10, 2, 3 },		// 63 bits per transform
-			{ 10, 3, 2 },		// 63 bits per transform
-			{ 10, 4, 1 },		// 63 bits per transform
-			{ 10, 7, 0 },		// 63 bits per transform
-			{ 11, 0, 6 },		// 63 bits per transform
-			{ 11, 1, 3 },		// 63 bits per transform
-			{ 11, 2, 2 },		// 63 bits per transform
-			{ 11, 3, 1 },		// 63 bits per transform
-			{ 11, 6, 0 },		// 63 bits per transform
-			{ 12, 0, 5 },		// 63 bits per transform
-			{ 12, 1, 2 },		// 63 bits per transform
-			{ 12, 2, 1 },		// 63 bits per transform
-			{ 12, 5, 0 },		// 63 bits per transform
-			{ 13, 0, 4 },		// 63 bits per transform
-			{ 13, 1, 1 },		// 63 bits per transform
-			{ 13, 4, 0 },		// 63 bits per transform
-			{ 14, 0, 3 },		// 63 bits per transform
-			{ 14, 3, 0 },		// 63 bits per transform
-			{ 15, 0, 2 },		// 63 bits per transform
-			{ 15, 2, 0 },		// 63 bits per transform
-			{ 16, 0, 1 },		// 63 bits per transform
-			{ 16, 1, 0 },		// 63 bits per transform
-			{ 0, 1, 17 },		// 66 bits per transform
-			{ 0, 2, 16 },		// 66 bits per transform
-			{ 0, 3, 15 },		// 66 bits per transform
-			{ 0, 4, 14 },		// 66 bits per transform
-			{ 0, 5, 13 },		// 66 bits per transform
-			{ 0, 6, 12 },		// 66 bits per transform
-			{ 0, 7, 11 },		// 66 bits per transform
-			{ 0, 8, 10 },		// 66 bits per transform
-			{ 0, 9, 9 },		// 66 bits per transform
-			{ 0, 10, 8 },		// 66 bits per transform
-			{ 0, 11, 7 },		// 66 bits per transform
-			{ 0, 12, 6 },		// 66 bits per transform
-			{ 0, 13, 5 },		// 66 bits per transform
-			{ 0, 14, 4 },		// 66 bits per transform
-			{ 0, 15, 3 },		// 66 bits per transform
-			{ 0, 16, 2 },		// 66 bits per transform
-			{ 0, 17, 1 },		// 66 bits per transform
-			{ 1, 0, 17 },		// 66 bits per transform
-			{ 1, 1, 14 },		// 66 bits per transform
-			{ 1, 2, 13 },		// 66 bits per transform
-			{ 1, 3, 12 },		// 66 bits per transform
-			{ 1, 4, 11 },		// 66 bits per transform
-			{ 1, 5, 10 },		// 66 bits per transform
-			{ 1, 6, 9 },		// 66 bits per transform
-			{ 1, 7, 8 },		// 66 bits per transform
-			{ 1, 8, 7 },		// 66 bits per transform
-			{ 1, 9, 6 },		// 66 bits per transform
-			{ 1, 10, 5 },		// 66 bits per transform
-			{ 1, 11, 4 },		// 66 bits per transform
-			{ 1, 12, 3 },		// 66 bits per transform
-			{ 1, 13, 2 },		// 66 bits per transform
-			{ 1, 14, 1 },		// 66 bits per transform
-			{ 1, 17, 0 },		// 66 bits per transform
-			{ 2, 0, 16 },		// 66 bits per transform
-			{ 2, 1, 13 },		// 66 bits per transform
-			{ 2, 2, 12 },		// 66 bits per transform
-			{ 2, 3, 11 },		// 66 bits per transform
-			{ 2, 4, 10 },		// 66 bits per transform
-			{ 2, 5, 9 },		// 66 bits per transform
-			{ 2, 6, 8 },		// 66 bits per transform
-			{ 2, 7, 7 },		// 66 bits per transform
-			{ 2, 8, 6 },		// 66 bits per transform
-			{ 2, 9, 5 },		// 66 bits per transform
-			{ 2, 10, 4 },		// 66 bits per transform
-			{ 2, 11, 3 },		// 66 bits per transform
-			{ 2, 12, 2 },		// 66 bits per transform
-			{ 2, 13, 1 },		// 66 bits per transform
-			{ 2, 16, 0 },		// 66 bits per transform
-			{ 3, 0, 15 },		// 66 bits per transform
-			{ 3, 1, 12 },		// 66 bits per transform
-			{ 3, 2, 11 },		// 66 bits per transform
-			{ 3, 3, 10 },		// 66 bits per transform
-			{ 3, 4, 9 },		// 66 bits per transform
-			{ 3, 5, 8 },		// 66 bits per transform
-			{ 3, 6, 7 },		// 66 bits per transform
-			{ 3, 7, 6 },		// 66 bits per transform
-			{ 3, 8, 5 },		// 66 bits per transform
-			{ 3, 9, 4 },		// 66 bits per transform
-			{ 3, 10, 3 },		// 66 bits per transform
-			{ 3, 11, 2 },		// 66 bits per transform
-			{ 3, 12, 1 },		// 66 bits per transform
-			{ 3, 15, 0 },		// 66 bits per transform
-			{ 4, 0, 14 },		// 66 bits per transform
-			{ 4, 1, 11 },		// 66 bits per transform
-			{ 4, 2, 10 },		// 66 bits per transform
-			{ 4, 3, 9 },		// 66 bits per transform
-			{ 4, 4, 8 },		// 66 bits per transform
-			{ 4, 5, 7 },		// 66 bits per transform
-			{ 4, 6, 6 },		// 66 bits per transform
-			{ 4, 7, 5 },		// 66 bits per transform
-			{ 4, 8, 4 },		// 66 bits per transform
-			{ 4, 9, 3 },		// 66 bits per transform
-			{ 4, 10, 2 },		// 66 bits per transform
-			{ 4, 11, 1 },		// 66 bits per transform
-			{ 4, 14, 0 },		// 66 bits per transform
-			{ 5, 0, 13 },		// 66 bits per transform
-			{ 5, 1, 10 },		// 66 bits per transform
-			{ 5, 2, 9 },		// 66 bits per transform
-			{ 5, 3, 8 },		// 66 bits per transform
-			{ 5, 4, 7 },		// 66 bits per transform
-			{ 5, 5, 6 },		// 66 bits per transform
-			{ 5, 6, 5 },		// 66 bits per transform
-			{ 5, 7, 4 },		// 66 bits per transform
-			{ 5, 8, 3 },		// 66 bits per transform
-			{ 5, 9, 2 },		// 66 bits per transform
-			{ 5, 10, 1 },		// 66 bits per transform
-			{ 5, 13, 0 },		// 66 bits per transform
-			{ 6, 0, 12 },		// 66 bits per transform
-			{ 6, 1, 9 },		// 66 bits per transform
-			{ 6, 2, 8 },		// 66 bits per transform
-			{ 6, 3, 7 },		// 66 bits per transform
-			{ 6, 4, 6 },		// 66 bits per transform
-			{ 6, 5, 5 },		// 66 bits per transform
-			{ 6, 6, 4 },		// 66 bits per transform
-			{ 6, 7, 3 },		// 66 bits per transform
-			{ 6, 8, 2 },		// 66 bits per transform
-			{ 6, 9, 1 },		// 66 bits per transform
-			{ 6, 12, 0 },		// 66 bits per transform
-			{ 7, 0, 11 },		// 66 bits per transform
-			{ 7, 1, 8 },		// 66 bits per transform
-			{ 7, 2, 7 },		// 66 bits per transform
-			{ 7, 3, 6 },		// 66 bits per transform
-			{ 7, 4, 5 },		// 66 bits per transform
-			{ 7, 5, 4 },		// 66 bits per transform
-			{ 7, 6, 3 },		// 66 bits per transform
-			{ 7, 7, 2 },		// 66 bits per transform
-			{ 7, 8, 1 },		// 66 bits per transform
-			{ 7, 11, 0 },		// 66 bits per transform
-			{ 8, 0, 10 },		// 66 bits per transform
-			{ 8, 1, 7 },		// 66 bits per transform
-			{ 8, 2, 6 },		// 66 bits per transform
-			{ 8, 3, 5 },		// 66 bits per transform
-			{ 8, 4, 4 },		// 66 bits per transform
-			{ 8, 5, 3 },		// 66 bits per transform
-			{ 8, 6, 2 },		// 66 bits per transform
-			{ 8, 7, 1 },		// 66 bits per transform
-			{ 8, 10, 0 },		// 66 bits per transform
-			{ 9, 0, 9 },		// 66 bits per transform
-			{ 9, 1, 6 },		// 66 bits per transform
-			{ 9, 2, 5 },		// 66 bits per transform
-			{ 9, 3, 4 },		// 66 bits per transform
-			{ 9, 4, 3 },		// 66 bits per transform
-			{ 9, 5, 2 },		// 66 bits per transform
-			{ 9, 6, 1 },		// 66 bits per transform
-			{ 9, 9, 0 },		// 66 bits per transform
-			{ 10, 0, 8 },		// 66 bits per transform
-			{ 10, 1, 5 },		// 66 bits per transform
-			{ 10, 2, 4 },		// 66 bits per transform
-			{ 10, 3, 3 },		// 66 bits per transform
-			{ 10, 4, 2 },		// 66 bits per transform
-			{ 10, 5, 1 },		// 66 bits per transform
-			{ 10, 8, 0 },		// 66 bits per transform
-			{ 11, 0, 7 },		// 66 bits per transform
-			{ 11, 1, 4 },		// 66 bits per transform
-			{ 11, 2, 3 },		// 66 bits per transform
-			{ 11, 3, 2 },		// 66 bits per transform
-			{ 11, 4, 1 },		// 66 bits per transform
-			{ 11, 7, 0 },		// 66 bits per transform
-			{ 12, 0, 6 },		// 66 bits per transform
-			{ 12, 1, 3 },		// 66 bits per transform
-			{ 12, 2, 2 },		// 66 bits per transform
-			{ 12, 3, 1 },		// 66 bits per transform
-			{ 12, 6, 0 },		// 66 bits per transform
-			{ 13, 0, 5 },		// 66 bits per transform
-			{ 13, 1, 2 },		// 66 bits per transform
-			{ 13, 2, 1 },		// 66 bits per transform
-			{ 13, 5, 0 },		// 66 bits per transform
-			{ 14, 0, 4 },		// 66 bits per transform
-			{ 14, 1, 1 },		// 66 bits per transform
-			{ 14, 4, 0 },		// 66 bits per transform
-			{ 15, 0, 3 },		// 66 bits per transform
-			{ 15, 3, 0 },		// 66 bits per transform
-			{ 16, 0, 2 },		// 66 bits per transform
-			{ 16, 2, 0 },		// 66 bits per transform
-			{ 17, 0, 1 },		// 66 bits per transform
-			{ 17, 1, 0 },		// 66 bits per transform
-			{ 0, 2, 17 },		// 69 bits per transform
-			{ 0, 3, 16 },		// 69 bits per transform
-			{ 0, 4, 15 },		// 69 bits per transform
-			{ 0, 5, 14 },		// 69 bits per transform
-			{ 0, 6, 13 },		// 69 bits per transform
-			{ 0, 7, 12 },		// 69 bits per transform
-			{ 0, 8, 11 },		// 69 bits per transform
-			{ 0, 9, 10 },		// 69 bits per transform
-			{ 0, 10, 9 },		// 69 bits per transform
-			{ 0, 11, 8 },		// 69 bits per transform
-			{ 0, 12, 7 },		// 69 bits per transform
-			{ 0, 13, 6 },		// 69 bits per transform
-			{ 0, 14, 5 },		// 69 bits per transform
-			{ 0, 15, 4 },		// 69 bits per transform
-			{ 0, 16, 3 },		// 69 bits per transform
-			{ 0, 17, 2 },		// 69 bits per transform
-			{ 1, 1, 15 },		// 69 bits per transform
-			{ 1, 2, 14 },		// 69 bits per transform
-			{ 1, 3, 13 },		// 69 bits per transform
-			{ 1, 4, 12 },		// 69 bits per transform
-			{ 1, 5, 11 },		// 69 bits per transform
-			{ 1, 6, 10 },		// 69 bits per transform
-			{ 1, 7, 9 },		// 69 bits per transform
-			{ 1, 8, 8 },		// 69 bits per transform
-			{ 1, 9, 7 },		// 69 bits per transform
-			{ 1, 10, 6 },		// 69 bits per transform
-			{ 1, 11, 5 },		// 69 bits per transform
-			{ 1, 12, 4 },		// 69 bits per transform
-			{ 1, 13, 3 },		// 69 bits per transform
-			{ 1, 14, 2 },		// 69 bits per transform
-			{ 1, 15, 1 },		// 69 bits per transform
-			{ 2, 0, 17 },		// 69 bits per transform
-			{ 2, 1, 14 },		// 69 bits per transform
-			{ 2, 2, 13 },		// 69 bits per transform
-			{ 2, 3, 12 },		// 69 bits per transform
-			{ 2, 4, 11 },		// 69 bits per transform
-			{ 2, 5, 10 },		// 69 bits per transform
-			{ 2, 6, 9 },		// 69 bits per transform
-			{ 2, 7, 8 },		// 69 bits per transform
-			{ 2, 8, 7 },		// 69 bits per transform
-			{ 2, 9, 6 },		// 69 bits per transform
-			{ 2, 10, 5 },		// 69 bits per transform
-			{ 2, 11, 4 },		// 69 bits per transform
-			{ 2, 12, 3 },		// 69 bits per transform
-			{ 2, 13, 2 },		// 69 bits per transform
-			{ 2, 14, 1 },		// 69 bits per transform
-			{ 2, 17, 0 },		// 69 bits per transform
-			{ 3, 0, 16 },		// 69 bits per transform
-			{ 3, 1, 13 },		// 69 bits per transform
-			{ 3, 2, 12 },		// 69 bits per transform
-			{ 3, 3, 11 },		// 69 bits per transform
-			{ 3, 4, 10 },		// 69 bits per transform
-			{ 3, 5, 9 },		// 69 bits per transform
-			{ 3, 6, 8 },		// 69 bits per transform
-			{ 3, 7, 7 },		// 69 bits per transform
-			{ 3, 8, 6 },		// 69 bits per transform
-			{ 3, 9, 5 },		// 69 bits per transform
-			{ 3, 10, 4 },		// 69 bits per transform
-			{ 3, 11, 3 },		// 69 bits per transform
-			{ 3, 12, 2 },		// 69 bits per transform
-			{ 3, 13, 1 },		// 69 bits per transform
-			{ 3, 16, 0 },		// 69 bits per transform
-			{ 4, 0, 15 },		// 69 bits per transform
-			{ 4, 1, 12 },		// 69 bits per transform
-			{ 4, 2, 11 },		// 69 bits per transform
-			{ 4, 3, 10 },		// 69 bits per transform
-			{ 4, 4, 9 },		// 69 bits per transform
-			{ 4, 5, 8 },		// 69 bits per transform
-			{ 4, 6, 7 },		// 69 bits per transform
-			{ 4, 7, 6 },		// 69 bits per transform
-			{ 4, 8, 5 },		// 69 bits per transform
-			{ 4, 9, 4 },		// 69 bits per transform
-			{ 4, 10, 3 },		// 69 bits per transform
-			{ 4, 11, 2 },		// 69 bits per transform
-			{ 4, 12, 1 },		// 69 bits per transform
-			{ 4, 15, 0 },		// 69 bits per transform
-			{ 5, 0, 14 },		// 69 bits per transform
-			{ 5, 1, 11 },		// 69 bits per transform
-			{ 5, 2, 10 },		// 69 bits per transform
-			{ 5, 3, 9 },		// 69 bits per transform
-			{ 5, 4, 8 },		// 69 bits per transform
-			{ 5, 5, 7 },		// 69 bits per transform
-			{ 5, 6, 6 },		// 69 bits per transform
-			{ 5, 7, 5 },		// 69 bits per transform
-			{ 5, 8, 4 },		// 69 bits per transform
-			{ 5, 9, 3 },		// 69 bits per transform
-			{ 5, 10, 2 },		// 69 bits per transform
-			{ 5, 11, 1 },		// 69 bits per transform
-			{ 5, 14, 0 },		// 69 bits per transform
-			{ 6, 0, 13 },		// 69 bits per transform
-			{ 6, 1, 10 },		// 69 bits per transform
-			{ 6, 2, 9 },		// 69 bits per transform
-			{ 6, 3, 8 },		// 69 bits per transform
-			{ 6, 4, 7 },		// 69 bits per transform
-			{ 6, 5, 6 },		// 69 bits per transform
-			{ 6, 6, 5 },		// 69 bits per transform
-			{ 6, 7, 4 },		// 69 bits per transform
-			{ 6, 8, 3 },		// 69 bits per transform
-			{ 6, 9, 2 },		// 69 bits per transform
-			{ 6, 10, 1 },		// 69 bits per transform
-			{ 6, 13, 0 },		// 69 bits per transform
-			{ 7, 0, 12 },		// 69 bits per transform
-			{ 7, 1, 9 },		// 69 bits per transform
-			{ 7, 2, 8 },		// 69 bits per transform
-			{ 7, 3, 7 },		// 69 bits per transform
-			{ 7, 4, 6 },		// 69 bits per transform
-			{ 7, 5, 5 },		// 69 bits per transform
-			{ 7, 6, 4 },		// 69 bits per transform
-			{ 7, 7, 3 },		// 69 bits per transform
-			{ 7, 8, 2 },		// 69 bits per transform
-			{ 7, 9, 1 },		// 69 bits per transform
-			{ 7, 12, 0 },		// 69 bits per transform
-			{ 8, 0, 11 },		// 69 bits per transform
-			{ 8, 1, 8 },		// 69 bits per transform
-			{ 8, 2, 7 },		// 69 bits per transform
-			{ 8, 3, 6 },		// 69 bits per transform
-			{ 8, 4, 5 },		// 69 bits per transform
-			{ 8, 5, 4 },		// 69 bits per transform
-			{ 8, 6, 3 },		// 69 bits per transform
-			{ 8, 7, 2 },		// 69 bits per transform
-			{ 8, 8, 1 },		// 69 bits per transform
-			{ 8, 11, 0 },		// 69 bits per transform
-			{ 9, 0, 10 },		// 69 bits per transform
-			{ 9, 1, 7 },		// 69 bits per transform
-			{ 9, 2, 6 },		// 69 bits per transform
-			{ 9, 3, 5 },		// 69 bits per transform
-			{ 9, 4, 4 },		// 69 bits per transform
-			{ 9, 5, 3 },		// 69 bits per transform
-			{ 9, 6, 2 },		// 69 bits per transform
-			{ 9, 7, 1 },		// 69 bits per transform
-			{ 9, 10, 0 },		// 69 bits per transform
-			{ 10, 0, 9 },		// 69 bits per transform
-			{ 10, 1, 6 },		// 69 bits per transform
-			{ 10, 2, 5 },		// 69 bits per transform
-			{ 10, 3, 4 },		// 69 bits per transform
-			{ 10, 4, 3 },		// 69 bits per transform
-			{ 10, 5, 2 },		// 69 bits per transform
-			{ 10, 6, 1 },		// 69 bits per transform
-			{ 10, 9, 0 },		// 69 bits per transform
-			{ 11, 0, 8 },		// 69 bits per transform
-			{ 11, 1, 5 },		// 69 bits per transform
-			{ 11, 2, 4 },		// 69 bits per transform
-			{ 11, 3, 3 },		// 69 bits per transform
-			{ 11, 4, 2 },		// 69 bits per transform
-			{ 11, 5, 1 },		// 69 bits per transform
-			{ 11, 8, 0 },		// 69 bits per transform
-			{ 12, 0, 7 },		// 69 bits per transform
-			{ 12, 1, 4 },		// 69 bits per transform
-			{ 12, 2, 3 },		// 69 bits per transform
-			{ 12, 3, 2 },		// 69 bits per transform
-			{ 12, 4, 1 },		// 69 bits per transform
-			{ 12, 7, 0 },		// 69 bits per transform
-			{ 13, 0, 6 },		// 69 bits per transform
-			{ 13, 1, 3 },		// 69 bits per transform
-			{ 13, 2, 2 },		// 69 bits per transform
-			{ 13, 3, 1 },		// 69 bits per transform
-			{ 13, 6, 0 },		// 69 bits per transform
-			{ 14, 0, 5 },		// 69 bits per transform
-			{ 14, 1, 2 },		// 69 bits per transform
-			{ 14, 2, 1 },		// 69 bits per transform
-			{ 14, 5, 0 },		// 69 bits per transform
-			{ 15, 0, 4 },		// 69 bits per transform
-			{ 15, 1, 1 },		// 69 bits per transform
-			{ 15, 4, 0 },		// 69 bits per transform
-			{ 16, 0, 3 },		// 69 bits per transform
-			{ 16, 3, 0 },		// 69 bits per transform
-			{ 17, 0, 2 },		// 69 bits per transform
-			{ 17, 2, 0 },		// 69 bits per transform
-			{ 0, 3, 17 },		// 72 bits per transform
-			{ 0, 4, 16 },		// 72 bits per transform
-			{ 0, 5, 15 },		// 72 bits per transform
-			{ 0, 6, 14 },		// 72 bits per transform
-			{ 0, 7, 13 },		// 72 bits per transform
-			{ 0, 8, 12 },		// 72 bits per transform
-			{ 0, 9, 11 },		// 72 bits per transform
-			{ 0, 10, 10 },		// 72 bits per transform
-			{ 0, 11, 9 },		// 72 bits per transform
-			{ 0, 12, 8 },		// 72 bits per transform
-			{ 0, 13, 7 },		// 72 bits per transform
-			{ 0, 14, 6 },		// 72 bits per transform
-			{ 0, 15, 5 },		// 72 bits per transform
-			{ 0, 16, 4 },		// 72 bits per transform
-			{ 0, 17, 3 },		// 72 bits per transform
-			{ 1, 1, 16 },		// 72 bits per transform
-			{ 1, 2, 15 },		// 72 bits per transform
-			{ 1, 3, 14 },		// 72 bits per transform
-			{ 1, 4, 13 },		// 72 bits per transform
-			{ 1, 5, 12 },		// 72 bits per transform
-			{ 1, 6, 11 },		// 72 bits per transform
-			{ 1, 7, 10 },		// 72 bits per transform
-			{ 1, 8, 9 },		// 72 bits per transform
-			{ 1, 9, 8 },		// 72 bits per transform
-			{ 1, 10, 7 },		// 72 bits per transform
-			{ 1, 11, 6 },		// 72 bits per transform
-			{ 1, 12, 5 },		// 72 bits per transform
-			{ 1, 13, 4 },		// 72 bits per transform
-			{ 1, 14, 3 },		// 72 bits per transform
-			{ 1, 15, 2 },		// 72 bits per transform
-			{ 1, 16, 1 },		// 72 bits per transform
-			{ 2, 1, 15 },		// 72 bits per transform
-			{ 2, 2, 14 },		// 72 bits per transform
-			{ 2, 3, 13 },		// 72 bits per transform
-			{ 2, 4, 12 },		// 72 bits per transform
-			{ 2, 5, 11 },		// 72 bits per transform
-			{ 2, 6, 10 },		// 72 bits per transform
-			{ 2, 7, 9 },		// 72 bits per transform
-			{ 2, 8, 8 },		// 72 bits per transform
-			{ 2, 9, 7 },		// 72 bits per transform
-			{ 2, 10, 6 },		// 72 bits per transform
-			{ 2, 11, 5 },		// 72 bits per transform
-			{ 2, 12, 4 },		// 72 bits per transform
-			{ 2, 13, 3 },		// 72 bits per transform
-			{ 2, 14, 2 },		// 72 bits per transform
-			{ 2, 15, 1 },		// 72 bits per transform
-			{ 3, 0, 17 },		// 72 bits per transform
-			{ 3, 1, 14 },		// 72 bits per transform
-			{ 3, 2, 13 },		// 72 bits per transform
-			{ 3, 3, 12 },		// 72 bits per transform
-			{ 3, 4, 11 },		// 72 bits per transform
-			{ 3, 5, 10 },		// 72 bits per transform
-			{ 3, 6, 9 },		// 72 bits per transform
-			{ 3, 7, 8 },		// 72 bits per transform
-			{ 3, 8, 7 },		// 72 bits per transform
-			{ 3, 9, 6 },		// 72 bits per transform
-			{ 3, 10, 5 },		// 72 bits per transform
-			{ 3, 11, 4 },		// 72 bits per transform
-			{ 3, 12, 3 },		// 72 bits per transform
-			{ 3, 13, 2 },		// 72 bits per transform
-			{ 3, 14, 1 },		// 72 bits per transform
-			{ 3, 17, 0 },		// 72 bits per transform
-			{ 4, 0, 16 },		// 72 bits per transform
-			{ 4, 1, 13 },		// 72 bits per transform
-			{ 4, 2, 12 },		// 72 bits per transform
-			{ 4, 3, 11 },		// 72 bits per transform
-			{ 4, 4, 10 },		// 72 bits per transform
-			{ 4, 5, 9 },		// 72 bits per transform
-			{ 4, 6, 8 },		// 72 bits per transform
-			{ 4, 7, 7 },		// 72 bits per transform
-			{ 4, 8, 6 },		// 72 bits per transform
-			{ 4, 9, 5 },		// 72 bits per transform
-			{ 4, 10, 4 },		// 72 bits per transform
-			{ 4, 11, 3 },		// 72 bits per transform
-			{ 4, 12, 2 },		// 72 bits per transform
-			{ 4, 13, 1 },		// 72 bits per transform
-			{ 4, 16, 0 },		// 72 bits per transform
-			{ 5, 0, 15 },		// 72 bits per transform
-			{ 5, 1, 12 },		// 72 bits per transform
-			{ 5, 2, 11 },		// 72 bits per transform
-			{ 5, 3, 10 },		// 72 bits per transform
-			{ 5, 4, 9 },		// 72 bits per transform
-			{ 5, 5, 8 },		// 72 bits per transform
-			{ 5, 6, 7 },		// 72 bits per transform
-			{ 5, 7, 6 },		// 72 bits per transform
-			{ 5, 8, 5 },		// 72 bits per transform
-			{ 5, 9, 4 },		// 72 bits per transform
-			{ 5, 10, 3 },		// 72 bits per transform
-			{ 5, 11, 2 },		// 72 bits per transform
-			{ 5, 12, 1 },		// 72 bits per transform
-			{ 5, 15, 0 },		// 72 bits per transform
-			{ 6, 0, 14 },		// 72 bits per transform
-			{ 6, 1, 11 },		// 72 bits per transform
-			{ 6, 2, 10 },		// 72 bits per transform
-			{ 6, 3, 9 },		// 72 bits per transform
-			{ 6, 4, 8 },		// 72 bits per transform
-			{ 6, 5, 7 },		// 72 bits per transform
-			{ 6, 6, 6 },		// 72 bits per transform
-			{ 6, 7, 5 },		// 72 bits per transform
-			{ 6, 8, 4 },		// 72 bits per transform
-			{ 6, 9, 3 },		// 72 bits per transform
-			{ 6, 10, 2 },		// 72 bits per transform
-			{ 6, 11, 1 },		// 72 bits per transform
-			{ 6, 14, 0 },		// 72 bits per transform
-			{ 7, 0, 13 },		// 72 bits per transform
-			{ 7, 1, 10 },		// 72 bits per transform
-			{ 7, 2, 9 },		// 72 bits per transform
-			{ 7, 3, 8 },		// 72 bits per transform
-			{ 7, 4, 7 },		// 72 bits per transform
-			{ 7, 5, 6 },		// 72 bits per transform
-			{ 7, 6, 5 },		// 72 bits per transform
-			{ 7, 7, 4 },		// 72 bits per transform
-			{ 7, 8, 3 },		// 72 bits per transform
-			{ 7, 9, 2 },		// 72 bits per transform
-			{ 7, 10, 1 },		// 72 bits per transform
-			{ 7, 13, 0 },		// 72 bits per transform
-			{ 8, 0, 12 },		// 72 bits per transform
-			{ 8, 1, 9 },		// 72 bits per transform
-			{ 8, 2, 8 },		// 72 bits per transform
-			{ 8, 3, 7 },		// 72 bits per transform
-			{ 8, 4, 6 },		// 72 bits per transform
-			{ 8, 5, 5 },		// 72 bits per transform
-			{ 8, 6, 4 },		// 72 bits per transform
-			{ 8, 7, 3 },		// 72 bits per transform
-			{ 8, 8, 2 },		// 72 bits per transform
-			{ 8, 9, 1 },		// 72 bits per transform
-			{ 8, 12, 0 },		// 72 bits per transform
-			{ 9, 0, 11 },		// 72 bits per transform
-			{ 9, 1, 8 },		// 72 bits per transform
-			{ 9, 2, 7 },		// 72 bits per transform
-			{ 9, 3, 6 },		// 72 bits per transform
-			{ 9, 4, 5 },		// 72 bits per transform
-			{ 9, 5, 4 },		// 72 bits per transform
-			{ 9, 6, 3 },		// 72 bits per transform
-			{ 9, 7, 2 },		// 72 bits per transform
-			{ 9, 8, 1 },		// 72 bits per transform
-			{ 9, 11, 0 },		// 72 bits per transform
-			{ 10, 0, 10 },		// 72 bits per transform
-			{ 10, 1, 7 },		// 72 bits per transform
-			{ 10, 2, 6 },		// 72 bits per transform
-			{ 10, 3, 5 },		// 72 bits per transform
-			{ 10, 4, 4 },		// 72 bits per transform
-			{ 10, 5, 3 },		// 72 bits per transform
-			{ 10, 6, 2 },		// 72 bits per transform
-			{ 10, 7, 1 },		// 72 bits per transform
-			{ 10, 10, 0 },		// 72 bits per transform
-			{ 11, 0, 9 },		// 72 bits per transform
-			{ 11, 1, 6 },		// 72 bits per transform
-			{ 11, 2, 5 },		// 72 bits per transform
-			{ 11, 3, 4 },		// 72 bits per transform
-			{ 11, 4, 3 },		// 72 bits per transform
-			{ 11, 5, 2 },		// 72 bits per transform
-			{ 11, 6, 1 },		// 72 bits per transform
-			{ 11, 9, 0 },		// 72 bits per transform
-			{ 12, 0, 8 },		// 72 bits per transform
-			{ 12, 1, 5 },		// 72 bits per transform
-			{ 12, 2, 4 },		// 72 bits per transform
-			{ 12, 3, 3 },		// 72 bits per transform
-			{ 12, 4, 2 },		// 72 bits per transform
-			{ 12, 5, 1 },		// 72 bits per transform
-			{ 12, 8, 0 },		// 72 bits per transform
-			{ 13, 0, 7 },		// 72 bits per transform
-			{ 13, 1, 4 },		// 72 bits per transform
-			{ 13, 2, 3 },		// 72 bits per transform
-			{ 13, 3, 2 },		// 72 bits per transform
-			{ 13, 4, 1 },		// 72 bits per transform
-			{ 13, 7, 0 },		// 72 bits per transform
-			{ 14, 0, 6 },		// 72 bits per transform
-			{ 14, 1, 3 },		// 72 bits per transform
-			{ 14, 2, 2 },		// 72 bits per transform
-			{ 14, 3, 1 },		// 72 bits per transform
-			{ 14, 6, 0 },		// 72 bits per transform
-			{ 15, 0, 5 },		// 72 bits per transform
-			{ 15, 1, 2 },		// 72 bits per transform
-			{ 15, 2, 1 },		// 72 bits per transform
-			{ 15, 5, 0 },		// 72 bits per transform
-			{ 16, 0, 4 },		// 72 bits per transform
-			{ 16, 1, 1 },		// 72 bits per transform
-			{ 16, 4, 0 },		// 72 bits per transform
-			{ 17, 0, 3 },		// 72 bits per transform
-			{ 17, 3, 0 },		// 72 bits per transform
-			{ 0, 4, 17 },		// 75 bits per transform
-			{ 0, 5, 16 },		// 75 bits per transform
-			{ 0, 6, 15 },		// 75 bits per transform
-			{ 0, 7, 14 },		// 75 bits per transform
-			{ 0, 8, 13 },		// 75 bits per transform
-			{ 0, 9, 12 },		// 75 bits per transform
-			{ 0, 10, 11 },		// 75 bits per transform
-			{ 0, 11, 10 },		// 75 bits per transform
-			{ 0, 12, 9 },		// 75 bits per transform
-			{ 0, 13, 8 },		// 75 bits per transform
-			{ 0, 14, 7 },		// 75 bits per transform
-			{ 0, 15, 6 },		// 75 bits per transform
-			{ 0, 16, 5 },		// 75 bits per transform
-			{ 0, 17, 4 },		// 75 bits per transform
-			{ 1, 1, 17 },		// 75 bits per transform
-			{ 1, 2, 16 },		// 75 bits per transform
-			{ 1, 3, 15 },		// 75 bits per transform
-			{ 1, 4, 14 },		// 75 bits per transform
-			{ 1, 5, 13 },		// 75 bits per transform
-			{ 1, 6, 12 },		// 75 bits per transform
-			{ 1, 7, 11 },		// 75 bits per transform
-			{ 1, 8, 10 },		// 75 bits per transform
-			{ 1, 9, 9 },		// 75 bits per transform
-			{ 1, 10, 8 },		// 75 bits per transform
-			{ 1, 11, 7 },		// 75 bits per transform
-			{ 1, 12, 6 },		// 75 bits per transform
-			{ 1, 13, 5 },		// 75 bits per transform
-			{ 1, 14, 4 },		// 75 bits per transform
-			{ 1, 15, 3 },		// 75 bits per transform
-			{ 1, 16, 2 },		// 75 bits per transform
-			{ 1, 17, 1 },		// 75 bits per transform
-			{ 2, 1, 16 },		// 75 bits per transform
-			{ 2, 2, 15 },		// 75 bits per transform
-			{ 2, 3, 14 },		// 75 bits per transform
-			{ 2, 4, 13 },		// 75 bits per transform
-			{ 2, 5, 12 },		// 75 bits per transform
-			{ 2, 6, 11 },		// 75 bits per transform
-			{ 2, 7, 10 },		// 75 bits per transform
-			{ 2, 8, 9 },		// 75 bits per transform
-			{ 2, 9, 8 },		// 75 bits per transform
-			{ 2, 10, 7 },		// 75 bits per transform
-			{ 2, 11, 6 },		// 75 bits per transform
-			{ 2, 12, 5 },		// 75 bits per transform
-			{ 2, 13, 4 },		// 75 bits per transform
-			{ 2, 14, 3 },		// 75 bits per transform
-			{ 2, 15, 2 },		// 75 bits per transform
-			{ 2, 16, 1 },		// 75 bits per transform
-			{ 3, 1, 15 },		// 75 bits per transform
-			{ 3, 2, 14 },		// 75 bits per transform
-			{ 3, 3, 13 },		// 75 bits per transform
-			{ 3, 4, 12 },		// 75 bits per transform
-			{ 3, 5, 11 },		// 75 bits per transform
-			{ 3, 6, 10 },		// 75 bits per transform
-			{ 3, 7, 9 },		// 75 bits per transform
-			{ 3, 8, 8 },		// 75 bits per transform
-			{ 3, 9, 7 },		// 75 bits per transform
-			{ 3, 10, 6 },		// 75 bits per transform
-			{ 3, 11, 5 },		// 75 bits per transform
-			{ 3, 12, 4 },		// 75 bits per transform
-			{ 3, 13, 3 },		// 75 bits per transform
-			{ 3, 14, 2 },		// 75 bits per transform
-			{ 3, 15, 1 },		// 75 bits per transform
-			{ 4, 0, 17 },		// 75 bits per transform
-			{ 4, 1, 14 },		// 75 bits per transform
-			{ 4, 2, 13 },		// 75 bits per transform
-			{ 4, 3, 12 },		// 75 bits per transform
-			{ 4, 4, 11 },		// 75 bits per transform
-			{ 4, 5, 10 },		// 75 bits per transform
-			{ 4, 6, 9 },		// 75 bits per transform
-			{ 4, 7, 8 },		// 75 bits per transform
-			{ 4, 8, 7 },		// 75 bits per transform
-			{ 4, 9, 6 },		// 75 bits per transform
-			{ 4, 10, 5 },		// 75 bits per transform
-			{ 4, 11, 4 },		// 75 bits per transform
-			{ 4, 12, 3 },		// 75 bits per transform
-			{ 4, 13, 2 },		// 75 bits per transform
-			{ 4, 14, 1 },		// 75 bits per transform
-			{ 4, 17, 0 },		// 75 bits per transform
-			{ 5, 0, 16 },		// 75 bits per transform
-			{ 5, 1, 13 },		// 75 bits per transform
-			{ 5, 2, 12 },		// 75 bits per transform
-			{ 5, 3, 11 },		// 75 bits per transform
-			{ 5, 4, 10 },		// 75 bits per transform
-			{ 5, 5, 9 },		// 75 bits per transform
-			{ 5, 6, 8 },		// 75 bits per transform
-			{ 5, 7, 7 },		// 75 bits per transform
-			{ 5, 8, 6 },		// 75 bits per transform
-			{ 5, 9, 5 },		// 75 bits per transform
-			{ 5, 10, 4 },		// 75 bits per transform
-			{ 5, 11, 3 },		// 75 bits per transform
-			{ 5, 12, 2 },		// 75 bits per transform
-			{ 5, 13, 1 },		// 75 bits per transform
-			{ 5, 16, 0 },		// 75 bits per transform
-			{ 6, 0, 15 },		// 75 bits per transform
-			{ 6, 1, 12 },		// 75 bits per transform
-			{ 6, 2, 11 },		// 75 bits per transform
-			{ 6, 3, 10 },		// 75 bits per transform
-			{ 6, 4, 9 },		// 75 bits per transform
-			{ 6, 5, 8 },		// 75 bits per transform
-			{ 6, 6, 7 },		// 75 bits per transform
-			{ 6, 7, 6 },		// 75 bits per transform
-			{ 6, 8, 5 },		// 75 bits per transform
-			{ 6, 9, 4 },		// 75 bits per transform
-			{ 6, 10, 3 },		// 75 bits per transform
-			{ 6, 11, 2 },		// 75 bits per transform
-			{ 6, 12, 1 },		// 75 bits per transform
-			{ 6, 15, 0 },		// 75 bits per transform
-			{ 7, 0, 14 },		// 75 bits per transform
-			{ 7, 1, 11 },		// 75 bits per transform
-			{ 7, 2, 10 },		// 75 bits per transform
-			{ 7, 3, 9 },		// 75 bits per transform
-			{ 7, 4, 8 },		// 75 bits per transform
-			{ 7, 5, 7 },		// 75 bits per transform
-			{ 7, 6, 6 },		// 75 bits per transform
-			{ 7, 7, 5 },		// 75 bits per transform
-			{ 7, 8, 4 },		// 75 bits per transform
-			{ 7, 9, 3 },		// 75 bits per transform
-			{ 7, 10, 2 },		// 75 bits per transform
-			{ 7, 11, 1 },		// 75 bits per transform
-			{ 7, 14, 0 },		// 75 bits per transform
-			{ 8, 0, 13 },		// 75 bits per transform
-			{ 8, 1, 10 },		// 75 bits per transform
-			{ 8, 2, 9 },		// 75 bits per transform
-			{ 8, 3, 8 },		// 75 bits per transform
-			{ 8, 4, 7 },		// 75 bits per transform
-			{ 8, 5, 6 },		// 75 bits per transform
-			{ 8, 6, 5 },		// 75 bits per transform
-			{ 8, 7, 4 },		// 75 bits per transform
-			{ 8, 8, 3 },		// 75 bits per transform
-			{ 8, 9, 2 },		// 75 bits per transform
-			{ 8, 10, 1 },		// 75 bits per transform
-			{ 8, 13, 0 },		// 75 bits per transform
-			{ 9, 0, 12 },		// 75 bits per transform
-			{ 9, 1, 9 },		// 75 bits per transform
-			{ 9, 2, 8 },		// 75 bits per transform
-			{ 9, 3, 7 },		// 75 bits per transform
-			{ 9, 4, 6 },		// 75 bits per transform
-			{ 9, 5, 5 },		// 75 bits per transform
-			{ 9, 6, 4 },		// 75 bits per transform
-			{ 9, 7, 3 },		// 75 bits per transform
-			{ 9, 8, 2 },		// 75 bits per transform
-			{ 9, 9, 1 },		// 75 bits per transform
-			{ 9, 12, 0 },		// 75 bits per transform
-			{ 10, 0, 11 },		// 75 bits per transform
-			{ 10, 1, 8 },		// 75 bits per transform
-			{ 10, 2, 7 },		// 75 bits per transform
-			{ 10, 3, 6 },		// 75 bits per transform
-			{ 10, 4, 5 },		// 75 bits per transform
-			{ 10, 5, 4 },		// 75 bits per transform
-			{ 10, 6, 3 },		// 75 bits per transform
-			{ 10, 7, 2 },		// 75 bits per transform
-			{ 10, 8, 1 },		// 75 bits per transform
-			{ 10, 11, 0 },		// 75 bits per transform
-			{ 11, 0, 10 },		// 75 bits per transform
-			{ 11, 1, 7 },		// 75 bits per transform
-			{ 11, 2, 6 },		// 75 bits per transform
-			{ 11, 3, 5 },		// 75 bits per transform
-			{ 11, 4, 4 },		// 75 bits per transform
-			{ 11, 5, 3 },		// 75 bits per transform
-			{ 11, 6, 2 },		// 75 bits per transform
-			{ 11, 7, 1 },		// 75 bits per transform
-			{ 11, 10, 0 },		// 75 bits per transform
-			{ 12, 0, 9 },		// 75 bits per transform
-			{ 12, 1, 6 },		// 75 bits per transform
-			{ 12, 2, 5 },		// 75 bits per transform
-			{ 12, 3, 4 },		// 75 bits per transform
-			{ 12, 4, 3 },		// 75 bits per transform
-			{ 12, 5, 2 },		// 75 bits per transform
-			{ 12, 6, 1 },		// 75 bits per transform
-			{ 12, 9, 0 },		// 75 bits per transform
-			{ 13, 0, 8 },		// 75 bits per transform
-			{ 13, 1, 5 },		// 75 bits per transform
-			{ 13, 2, 4 },		// 75 bits per transform
-			{ 13, 3, 3 },		// 75 bits per transform
-			{ 13, 4, 2 },		// 75 bits per transform
-			{ 13, 5, 1 },		// 75 bits per transform
-			{ 13, 8, 0 },		// 75 bits per transform
-			{ 14, 0, 7 },		// 75 bits per transform
-			{ 14, 1, 4 },		// 75 bits per transform
-			{ 14, 2, 3 },		// 75 bits per transform
-			{ 14, 3, 2 },		// 75 bits per transform
-			{ 14, 4, 1 },		// 75 bits per transform
-			{ 14, 7, 0 },		// 75 bits per transform
-			{ 15, 0, 6 },		// 75 bits per transform
-			{ 15, 1, 3 },		// 75 bits per transform
-			{ 15, 2, 2 },		// 75 bits per transform
-			{ 15, 3, 1 },		// 75 bits per transform
-			{ 15, 6, 0 },		// 75 bits per transform
-			{ 16, 0, 5 },		// 75 bits per transform
-			{ 16, 1, 2 },		// 75 bits per transform
-			{ 16, 2, 1 },		// 75 bits per transform
-			{ 16, 5, 0 },		// 75 bits per transform
-			{ 17, 0, 4 },		// 75 bits per transform
-			{ 17, 1, 1 },		// 75 bits per transform
-			{ 17, 4, 0 },		// 75 bits per transform
-			{ 0, 5, 17 },		// 78 bits per transform
-			{ 0, 6, 16 },		// 78 bits per transform
-			{ 0, 7, 15 },		// 78 bits per transform
-			{ 0, 8, 14 },		// 78 bits per transform
-			{ 0, 9, 13 },		// 78 bits per transform
-			{ 0, 10, 12 },		// 78 bits per transform
-			{ 0, 11, 11 },		// 78 bits per transform
-			{ 0, 12, 10 },		// 78 bits per transform
-			{ 0, 13, 9 },		// 78 bits per transform
-			{ 0, 14, 8 },		// 78 bits per transform
-			{ 0, 15, 7 },		// 78 bits per transform
-			{ 0, 16, 6 },		// 78 bits per transform
-			{ 0, 17, 5 },		// 78 bits per transform
-			{ 1, 2, 17 },		// 78 bits per transform
-			{ 1, 3, 16 },		// 78 bits per transform
-			{ 1, 4, 15 },		// 78 bits per transform
-			{ 1, 5, 14 },		// 78 bits per transform
-			{ 1, 6, 13 },		// 78 bits per transform
-			{ 1, 7, 12 },		// 78 bits per transform
-			{ 1, 8, 11 },		// 78 bits per transform
-			{ 1, 9, 10 },		// 78 bits per transform
-			{ 1, 10, 9 },		// 78 bits per transform
-			{ 1, 11, 8 },		// 78 bits per transform
-			{ 1, 12, 7 },		// 78 bits per transform
-			{ 1, 13, 6 },		// 78 bits per transform
-			{ 1, 14, 5 },		// 78 bits per transform
-			{ 1, 15, 4 },		// 78 bits per transform
-			{ 1, 16, 3 },		// 78 bits per transform
-			{ 1, 17, 2 },		// 78 bits per transform
-			{ 2, 1, 17 },		// 78 bits per transform
-			{ 2, 2, 16 },		// 78 bits per transform
-			{ 2, 3, 15 },		// 78 bits per transform
-			{ 2, 4, 14 },		// 78 bits per transform
-			{ 2, 5, 13 },		// 78 bits per transform
-			{ 2, 6, 12 },		// 78 bits per transform
-			{ 2, 7, 11 },		// 78 bits per transform
-			{ 2, 8, 10 },		// 78 bits per transform
-			{ 2, 9, 9 },		// 78 bits per transform
-			{ 2, 10, 8 },		// 78 bits per transform
-			{ 2, 11, 7 },		// 78 bits per transform
-			{ 2, 12, 6 },		// 78 bits per transform
-			{ 2, 13, 5 },		// 78 bits per transform
-			{ 2, 14, 4 },		// 78 bits per transform
-			{ 2, 15, 3 },		// 78 bits per transform
-			{ 2, 16, 2 },		// 78 bits per transform
-			{ 2, 17, 1 },		// 78 bits per transform
-			{ 3, 1, 16 },		// 78 bits per transform
-			{ 3, 2, 15 },		// 78 bits per transform
-			{ 3, 3, 14 },		// 78 bits per transform
-			{ 3, 4, 13 },		// 78 bits per transform
-			{ 3, 5, 12 },		// 78 bits per transform
-			{ 3, 6, 11 },		// 78 bits per transform
-			{ 3, 7, 10 },		// 78 bits per transform
-			{ 3, 8, 9 },		// 78 bits per transform
-			{ 3, 9, 8 },		// 78 bits per transform
-			{ 3, 10, 7 },		// 78 bits per transform
-			{ 3, 11, 6 },		// 78 bits per transform
-			{ 3, 12, 5 },		// 78 bits per transform
-			{ 3, 13, 4 },		// 78 bits per transform
-			{ 3, 14, 3 },		// 78 bits per transform
-			{ 3, 15, 2 },		// 78 bits per transform
-			{ 3, 16, 1 },		// 78 bits per transform
-			{ 4, 1, 15 },		// 78 bits per transform
-			{ 4, 2, 14 },		// 78 bits per transform
-			{ 4, 3, 13 },		// 78 bits per transform
-			{ 4, 4, 12 },		// 78 bits per transform
-			{ 4, 5, 11 },		// 78 bits per transform
-			{ 4, 6, 10 },		// 78 bits per transform
-			{ 4, 7, 9 },		// 78 bits per transform
-			{ 4, 8, 8 },		// 78 bits per transform
-			{ 4, 9, 7 },		// 78 bits per transform
-			{ 4, 10, 6 },		// 78 bits per transform
-			{ 4, 11, 5 },		// 78 bits per transform
-			{ 4, 12, 4 },		// 78 bits per transform
-			{ 4, 13, 3 },		// 78 bits per transform
-			{ 4, 14, 2 },		// 78 bits per transform
-			{ 4, 15, 1 },		// 78 bits per transform
-			{ 5, 0, 17 },		// 78 bits per transform
-			{ 5, 1, 14 },		// 78 bits per transform
-			{ 5, 2, 13 },		// 78 bits per transform
-			{ 5, 3, 12 },		// 78 bits per transform
-			{ 5, 4, 11 },		// 78 bits per transform
-			{ 5, 5, 10 },		// 78 bits per transform
-			{ 5, 6, 9 },		// 78 bits per transform
-			{ 5, 7, 8 },		// 78 bits per transform
-			{ 5, 8, 7 },		// 78 bits per transform
-			{ 5, 9, 6 },		// 78 bits per transform
-			{ 5, 10, 5 },		// 78 bits per transform
-			{ 5, 11, 4 },		// 78 bits per transform
-			{ 5, 12, 3 },		// 78 bits per transform
-			{ 5, 13, 2 },		// 78 bits per transform
-			{ 5, 14, 1 },		// 78 bits per transform
-			{ 5, 17, 0 },		// 78 bits per transform
-			{ 6, 0, 16 },		// 78 bits per transform
-			{ 6, 1, 13 },		// 78 bits per transform
-			{ 6, 2, 12 },		// 78 bits per transform
-			{ 6, 3, 11 },		// 78 bits per transform
-			{ 6, 4, 10 },		// 78 bits per transform
-			{ 6, 5, 9 },		// 78 bits per transform
-			{ 6, 6, 8 },		// 78 bits per transform
-			{ 6, 7, 7 },		// 78 bits per transform
-			{ 6, 8, 6 },		// 78 bits per transform
-			{ 6, 9, 5 },		// 78 bits per transform
-			{ 6, 10, 4 },		// 78 bits per transform
-			{ 6, 11, 3 },		// 78 bits per transform
-			{ 6, 12, 2 },		// 78 bits per transform
-			{ 6, 13, 1 },		// 78 bits per transform
-			{ 6, 16, 0 },		// 78 bits per transform
-			{ 7, 0, 15 },		// 78 bits per transform
-			{ 7, 1, 12 },		// 78 bits per transform
-			{ 7, 2, 11 },		// 78 bits per transform
-			{ 7, 3, 10 },		// 78 bits per transform
-			{ 7, 4, 9 },		// 78 bits per transform
-			{ 7, 5, 8 },		// 78 bits per transform
-			{ 7, 6, 7 },		// 78 bits per transform
-			{ 7, 7, 6 },		// 78 bits per transform
-			{ 7, 8, 5 },		// 78 bits per transform
-			{ 7, 9, 4 },		// 78 bits per transform
-			{ 7, 10, 3 },		// 78 bits per transform
-			{ 7, 11, 2 },		// 78 bits per transform
-			{ 7, 12, 1 },		// 78 bits per transform
-			{ 7, 15, 0 },		// 78 bits per transform
-			{ 8, 0, 14 },		// 78 bits per transform
-			{ 8, 1, 11 },		// 78 bits per transform
-			{ 8, 2, 10 },		// 78 bits per transform
-			{ 8, 3, 9 },		// 78 bits per transform
-			{ 8, 4, 8 },		// 78 bits per transform
-			{ 8, 5, 7 },		// 78 bits per transform
-			{ 8, 6, 6 },		// 78 bits per transform
-			{ 8, 7, 5 },		// 78 bits per transform
-			{ 8, 8, 4 },		// 78 bits per transform
-			{ 8, 9, 3 },		// 78 bits per transform
-			{ 8, 10, 2 },		// 78 bits per transform
-			{ 8, 11, 1 },		// 78 bits per transform
-			{ 8, 14, 0 },		// 78 bits per transform
-			{ 9, 0, 13 },		// 78 bits per transform
-			{ 9, 1, 10 },		// 78 bits per transform
-			{ 9, 2, 9 },		// 78 bits per transform
-			{ 9, 3, 8 },		// 78 bits per transform
-			{ 9, 4, 7 },		// 78 bits per transform
-			{ 9, 5, 6 },		// 78 bits per transform
-			{ 9, 6, 5 },		// 78 bits per transform
-			{ 9, 7, 4 },		// 78 bits per transform
-			{ 9, 8, 3 },		// 78 bits per transform
-			{ 9, 9, 2 },		// 78 bits per transform
-			{ 9, 10, 1 },		// 78 bits per transform
-			{ 9, 13, 0 },		// 78 bits per transform
-			{ 10, 0, 12 },		// 78 bits per transform
-			{ 10, 1, 9 },		// 78 bits per transform
-			{ 10, 2, 8 },		// 78 bits per transform
-			{ 10, 3, 7 },		// 78 bits per transform
-			{ 10, 4, 6 },		// 78 bits per transform
-			{ 10, 5, 5 },		// 78 bits per transform
-			{ 10, 6, 4 },		// 78 bits per transform
-			{ 10, 7, 3 },		// 78 bits per transform
-			{ 10, 8, 2 },		// 78 bits per transform
-			{ 10, 9, 1 },		// 78 bits per transform
-			{ 10, 12, 0 },		// 78 bits per transform
-			{ 11, 0, 11 },		// 78 bits per transform
-			{ 11, 1, 8 },		// 78 bits per transform
-			{ 11, 2, 7 },		// 78 bits per transform
-			{ 11, 3, 6 },		// 78 bits per transform
-			{ 11, 4, 5 },		// 78 bits per transform
-			{ 11, 5, 4 },		// 78 bits per transform
-			{ 11, 6, 3 },		// 78 bits per transform
-			{ 11, 7, 2 },		// 78 bits per transform
-			{ 11, 8, 1 },		// 78 bits per transform
-			{ 11, 11, 0 },		// 78 bits per transform
-			{ 12, 0, 10 },		// 78 bits per transform
-			{ 12, 1, 7 },		// 78 bits per transform
-			{ 12, 2, 6 },		// 78 bits per transform
-			{ 12, 3, 5 },		// 78 bits per transform
-			{ 12, 4, 4 },		// 78 bits per transform
-			{ 12, 5, 3 },		// 78 bits per transform
-			{ 12, 6, 2 },		// 78 bits per transform
-			{ 12, 7, 1 },		// 78 bits per transform
-			{ 12, 10, 0 },		// 78 bits per transform
-			{ 13, 0, 9 },		// 78 bits per transform
-			{ 13, 1, 6 },		// 78 bits per transform
-			{ 13, 2, 5 },		// 78 bits per transform
-			{ 13, 3, 4 },		// 78 bits per transform
-			{ 13, 4, 3 },		// 78 bits per transform
-			{ 13, 5, 2 },		// 78 bits per transform
-			{ 13, 6, 1 },		// 78 bits per transform
-			{ 13, 9, 0 },		// 78 bits per transform
-			{ 14, 0, 8 },		// 78 bits per transform
-			{ 14, 1, 5 },		// 78 bits per transform
-			{ 14, 2, 4 },		// 78 bits per transform
-			{ 14, 3, 3 },		// 78 bits per transform
-			{ 14, 4, 2 },		// 78 bits per transform
-			{ 14, 5, 1 },		// 78 bits per transform
-			{ 14, 8, 0 },		// 78 bits per transform
-			{ 15, 0, 7 },		// 78 bits per transform
-			{ 15, 1, 4 },		// 78 bits per transform
-			{ 15, 2, 3 },		// 78 bits per transform
-			{ 15, 3, 2 },		// 78 bits per transform
-			{ 15, 4, 1 },		// 78 bits per transform
-			{ 15, 7, 0 },		// 78 bits per transform
-			{ 16, 0, 6 },		// 78 bits per transform
-			{ 16, 1, 3 },		// 78 bits per transform
-			{ 16, 2, 2 },		// 78 bits per transform
-			{ 16, 3, 1 },		// 78 bits per transform
-			{ 16, 6, 0 },		// 78 bits per transform
-			{ 17, 0, 5 },		// 78 bits per transform
-			{ 17, 1, 2 },		// 78 bits per transform
-			{ 17, 2, 1 },		// 78 bits per transform
-			{ 17, 5, 0 },		// 78 bits per transform
-			{ 0, 6, 17 },		// 81 bits per transform
-			{ 0, 7, 16 },		// 81 bits per transform
-			{ 0, 8, 15 },		// 81 bits per transform
-			{ 0, 9, 14 },		// 81 bits per transform
-			{ 0, 10, 13 },		// 81 bits per transform
-			{ 0, 11, 12 },		// 81 bits per transform
-			{ 0, 12, 11 },		// 81 bits per transform
-			{ 0, 13, 10 },		// 81 bits per transform
-			{ 0, 14, 9 },		// 81 bits per transform
-			{ 0, 15, 8 },		// 81 bits per transform
-			{ 0, 16, 7 },		// 81 bits per transform
-			{ 0, 17, 6 },		// 81 bits per transform
-			{ 1, 3, 17 },		// 81 bits per transform
-			{ 1, 4, 16 },		// 81 bits per transform
-			{ 1, 5, 15 },		// 81 bits per transform
-			{ 1, 6, 14 },		// 81 bits per transform
-			{ 1, 7, 13 },		// 81 bits per transform
-			{ 1, 8, 12 },		// 81 bits per transform
-			{ 1, 9, 11 },		// 81 bits per transform
-			{ 1, 10, 10 },		// 81 bits per transform
-			{ 1, 11, 9 },		// 81 bits per transform
-			{ 1, 12, 8 },		// 81 bits per transform
-			{ 1, 13, 7 },		// 81 bits per transform
-			{ 1, 14, 6 },		// 81 bits per transform
-			{ 1, 15, 5 },		// 81 bits per transform
-			{ 1, 16, 4 },		// 81 bits per transform
-			{ 1, 17, 3 },		// 81 bits per transform
-			{ 2, 2, 17 },		// 81 bits per transform
-			{ 2, 3, 16 },		// 81 bits per transform
-			{ 2, 4, 15 },		// 81 bits per transform
-			{ 2, 5, 14 },		// 81 bits per transform
-			{ 2, 6, 13 },		// 81 bits per transform
-			{ 2, 7, 12 },		// 81 bits per transform
-			{ 2, 8, 11 },		// 81 bits per transform
-			{ 2, 9, 10 },		// 81 bits per transform
-			{ 2, 10, 9 },		// 81 bits per transform
-			{ 2, 11, 8 },		// 81 bits per transform
-			{ 2, 12, 7 },		// 81 bits per transform
-			{ 2, 13, 6 },		// 81 bits per transform
-			{ 2, 14, 5 },		// 81 bits per transform
-			{ 2, 15, 4 },		// 81 bits per transform
-			{ 2, 16, 3 },		// 81 bits per transform
-			{ 2, 17, 2 },		// 81 bits per transform
-			{ 3, 1, 17 },		// 81 bits per transform
-			{ 3, 2, 16 },		// 81 bits per transform
-			{ 3, 3, 15 },		// 81 bits per transform
-			{ 3, 4, 14 },		// 81 bits per transform
-			{ 3, 5, 13 },		// 81 bits per transform
-			{ 3, 6, 12 },		// 81 bits per transform
-			{ 3, 7, 11 },		// 81 bits per transform
-			{ 3, 8, 10 },		// 81 bits per transform
-			{ 3, 9, 9 },		// 81 bits per transform
-			{ 3, 10, 8 },		// 81 bits per transform
-			{ 3, 11, 7 },		// 81 bits per transform
-			{ 3, 12, 6 },		// 81 bits per transform
-			{ 3, 13, 5 },		// 81 bits per transform
-			{ 3, 14, 4 },		// 81 bits per transform
-			{ 3, 15, 3 },		// 81 bits per transform
-			{ 3, 16, 2 },		// 81 bits per transform
-			{ 3, 17, 1 },		// 81 bits per transform
-			{ 4, 1, 16 },		// 81 bits per transform
-			{ 4, 2, 15 },		// 81 bits per transform
-			{ 4, 3, 14 },		// 81 bits per transform
-			{ 4, 4, 13 },		// 81 bits per transform
-			{ 4, 5, 12 },		// 81 bits per transform
-			{ 4, 6, 11 },		// 81 bits per transform
-			{ 4, 7, 10 },		// 81 bits per transform
-			{ 4, 8, 9 },		// 81 bits per transform
-			{ 4, 9, 8 },		// 81 bits per transform
-			{ 4, 10, 7 },		// 81 bits per transform
-			{ 4, 11, 6 },		// 81 bits per transform
-			{ 4, 12, 5 },		// 81 bits per transform
-			{ 4, 13, 4 },		// 81 bits per transform
-			{ 4, 14, 3 },		// 81 bits per transform
-			{ 4, 15, 2 },		// 81 bits per transform
-			{ 4, 16, 1 },		// 81 bits per transform
-			{ 5, 1, 15 },		// 81 bits per transform
-			{ 5, 2, 14 },		// 81 bits per transform
-			{ 5, 3, 13 },		// 81 bits per transform
-			{ 5, 4, 12 },		// 81 bits per transform
-			{ 5, 5, 11 },		// 81 bits per transform
-			{ 5, 6, 10 },		// 81 bits per transform
-			{ 5, 7, 9 },		// 81 bits per transform
-			{ 5, 8, 8 },		// 81 bits per transform
-			{ 5, 9, 7 },		// 81 bits per transform
-			{ 5, 10, 6 },		// 81 bits per transform
-			{ 5, 11, 5 },		// 81 bits per transform
-			{ 5, 12, 4 },		// 81 bits per transform
-			{ 5, 13, 3 },		// 81 bits per transform
-			{ 5, 14, 2 },		// 81 bits per transform
-			{ 5, 15, 1 },		// 81 bits per transform
-			{ 6, 0, 17 },		// 81 bits per transform
-			{ 6, 1, 14 },		// 81 bits per transform
-			{ 6, 2, 13 },		// 81 bits per transform
-			{ 6, 3, 12 },		// 81 bits per transform
-			{ 6, 4, 11 },		// 81 bits per transform
-			{ 6, 5, 10 },		// 81 bits per transform
-			{ 6, 6, 9 },		// 81 bits per transform
-			{ 6, 7, 8 },		// 81 bits per transform
-			{ 6, 8, 7 },		// 81 bits per transform
-			{ 6, 9, 6 },		// 81 bits per transform
-			{ 6, 10, 5 },		// 81 bits per transform
-			{ 6, 11, 4 },		// 81 bits per transform
-			{ 6, 12, 3 },		// 81 bits per transform
-			{ 6, 13, 2 },		// 81 bits per transform
-			{ 6, 14, 1 },		// 81 bits per transform
-			{ 6, 17, 0 },		// 81 bits per transform
-			{ 7, 0, 16 },		// 81 bits per transform
-			{ 7, 1, 13 },		// 81 bits per transform
-			{ 7, 2, 12 },		// 81 bits per transform
-			{ 7, 3, 11 },		// 81 bits per transform
-			{ 7, 4, 10 },		// 81 bits per transform
-			{ 7, 5, 9 },		// 81 bits per transform
-			{ 7, 6, 8 },		// 81 bits per transform
-			{ 7, 7, 7 },		// 81 bits per transform
-			{ 7, 8, 6 },		// 81 bits per transform
-			{ 7, 9, 5 },		// 81 bits per transform
-			{ 7, 10, 4 },		// 81 bits per transform
-			{ 7, 11, 3 },		// 81 bits per transform
-			{ 7, 12, 2 },		// 81 bits per transform
-			{ 7, 13, 1 },		// 81 bits per transform
-			{ 7, 16, 0 },		// 81 bits per transform
-			{ 8, 0, 15 },		// 81 bits per transform
-			{ 8, 1, 12 },		// 81 bits per transform
-			{ 8, 2, 11 },		// 81 bits per transform
-			{ 8, 3, 10 },		// 81 bits per transform
-			{ 8, 4, 9 },		// 81 bits per transform
-			{ 8, 5, 8 },		// 81 bits per transform
-			{ 8, 6, 7 },		// 81 bits per transform
-			{ 8, 7, 6 },		// 81 bits per transform
-			{ 8, 8, 5 },		// 81 bits per transform
-			{ 8, 9, 4 },		// 81 bits per transform
-			{ 8, 10, 3 },		// 81 bits per transform
-			{ 8, 11, 2 },		// 81 bits per transform
-			{ 8, 12, 1 },		// 81 bits per transform
-			{ 8, 15, 0 },		// 81 bits per transform
-			{ 9, 0, 14 },		// 81 bits per transform
-			{ 9, 1, 11 },		// 81 bits per transform
-			{ 9, 2, 10 },		// 81 bits per transform
-			{ 9, 3, 9 },		// 81 bits per transform
-			{ 9, 4, 8 },		// 81 bits per transform
-			{ 9, 5, 7 },		// 81 bits per transform
-			{ 9, 6, 6 },		// 81 bits per transform
-			{ 9, 7, 5 },		// 81 bits per transform
-			{ 9, 8, 4 },		// 81 bits per transform
-			{ 9, 9, 3 },		// 81 bits per transform
-			{ 9, 10, 2 },		// 81 bits per transform
-			{ 9, 11, 1 },		// 81 bits per transform
-			{ 9, 14, 0 },		// 81 bits per transform
-			{ 10, 0, 13 },		// 81 bits per transform
-			{ 10, 1, 10 },		// 81 bits per transform
-			{ 10, 2, 9 },		// 81 bits per transform
-			{ 10, 3, 8 },		// 81 bits per transform
-			{ 10, 4, 7 },		// 81 bits per transform
-			{ 10, 5, 6 },		// 81 bits per transform
-			{ 10, 6, 5 },		// 81 bits per transform
-			{ 10, 7, 4 },		// 81 bits per transform
-			{ 10, 8, 3 },		// 81 bits per transform
-			{ 10, 9, 2 },		// 81 bits per transform
-			{ 10, 10, 1 },		// 81 bits per transform
-			{ 10, 13, 0 },		// 81 bits per transform
-			{ 11, 0, 12 },		// 81 bits per transform
-			{ 11, 1, 9 },		// 81 bits per transform
-			{ 11, 2, 8 },		// 81 bits per transform
-			{ 11, 3, 7 },		// 81 bits per transform
-			{ 11, 4, 6 },		// 81 bits per transform
-			{ 11, 5, 5 },		// 81 bits per transform
-			{ 11, 6, 4 },		// 81 bits per transform
-			{ 11, 7, 3 },		// 81 bits per transform
-			{ 11, 8, 2 },		// 81 bits per transform
-			{ 11, 9, 1 },		// 81 bits per transform
-			{ 11, 12, 0 },		// 81 bits per transform
-			{ 12, 0, 11 },		// 81 bits per transform
-			{ 12, 1, 8 },		// 81 bits per transform
-			{ 12, 2, 7 },		// 81 bits per transform
-			{ 12, 3, 6 },		// 81 bits per transform
-			{ 12, 4, 5 },		// 81 bits per transform
-			{ 12, 5, 4 },		// 81 bits per transform
-			{ 12, 6, 3 },		// 81 bits per transform
-			{ 12, 7, 2 },		// 81 bits per transform
-			{ 12, 8, 1 },		// 81 bits per transform
-			{ 12, 11, 0 },		// 81 bits per transform
-			{ 13, 0, 10 },		// 81 bits per transform
-			{ 13, 1, 7 },		// 81 bits per transform
-			{ 13, 2, 6 },		// 81 bits per transform
-			{ 13, 3, 5 },		// 81 bits per transform
-			{ 13, 4, 4 },		// 81 bits per transform
-			{ 13, 5, 3 },		// 81 bits per transform
-			{ 13, 6, 2 },		// 81 bits per transform
-			{ 13, 7, 1 },		// 81 bits per transform
-			{ 13, 10, 0 },		// 81 bits per transform
-			{ 14, 0, 9 },		// 81 bits per transform
-			{ 14, 1, 6 },		// 81 bits per transform
-			{ 14, 2, 5 },		// 81 bits per transform
-			{ 14, 3, 4 },		// 81 bits per transform
-			{ 14, 4, 3 },		// 81 bits per transform
-			{ 14, 5, 2 },		// 81 bits per transform
-			{ 14, 6, 1 },		// 81 bits per transform
-			{ 14, 9, 0 },		// 81 bits per transform
-			{ 15, 0, 8 },		// 81 bits per transform
-			{ 15, 1, 5 },		// 81 bits per transform
-			{ 15, 2, 4 },		// 81 bits per transform
-			{ 15, 3, 3 },		// 81 bits per transform
-			{ 15, 4, 2 },		// 81 bits per transform
-			{ 15, 5, 1 },		// 81 bits per transform
-			{ 15, 8, 0 },		// 81 bits per transform
-			{ 16, 0, 7 },		// 81 bits per transform
-			{ 16, 1, 4 },		// 81 bits per transform
-			{ 16, 2, 3 },		// 81 bits per transform
-			{ 16, 3, 2 },		// 81 bits per transform
-			{ 16, 4, 1 },		// 81 bits per transform
-			{ 16, 7, 0 },		// 81 bits per transform
-			{ 17, 0, 6 },		// 81 bits per transform
-			{ 17, 1, 3 },		// 81 bits per transform
-			{ 17, 2, 2 },		// 81 bits per transform
-			{ 17, 3, 1 },		// 81 bits per transform
-			{ 17, 6, 0 },		// 81 bits per transform
-			{ 0, 7, 17 },		// 84 bits per transform
-			{ 0, 8, 16 },		// 84 bits per transform
-			{ 0, 9, 15 },		// 84 bits per transform
-			{ 0, 10, 14 },		// 84 bits per transform
-			{ 0, 11, 13 },		// 84 bits per transform
-			{ 0, 12, 12 },		// 84 bits per transform
-			{ 0, 13, 11 },		// 84 bits per transform
-			{ 0, 14, 10 },		// 84 bits per transform
-			{ 0, 15, 9 },		// 84 bits per transform
-			{ 0, 16, 8 },		// 84 bits per transform
-			{ 0, 17, 7 },		// 84 bits per transform
-			{ 1, 4, 17 },		// 84 bits per transform
-			{ 1, 5, 16 },		// 84 bits per transform
-			{ 1, 6, 15 },		// 84 bits per transform
-			{ 1, 7, 14 },		// 84 bits per transform
-			{ 1, 8, 13 },		// 84 bits per transform
-			{ 1, 9, 12 },		// 84 bits per transform
-			{ 1, 10, 11 },		// 84 bits per transform
-			{ 1, 11, 10 },		// 84 bits per transform
-			{ 1, 12, 9 },		// 84 bits per transform
-			{ 1, 13, 8 },		// 84 bits per transform
-			{ 1, 14, 7 },		// 84 bits per transform
-			{ 1, 15, 6 },		// 84 bits per transform
-			{ 1, 16, 5 },		// 84 bits per transform
-			{ 1, 17, 4 },		// 84 bits per transform
-			{ 2, 3, 17 },		// 84 bits per transform
-			{ 2, 4, 16 },		// 84 bits per transform
-			{ 2, 5, 15 },		// 84 bits per transform
-			{ 2, 6, 14 },		// 84 bits per transform
-			{ 2, 7, 13 },		// 84 bits per transform
-			{ 2, 8, 12 },		// 84 bits per transform
-			{ 2, 9, 11 },		// 84 bits per transform
-			{ 2, 10, 10 },		// 84 bits per transform
-			{ 2, 11, 9 },		// 84 bits per transform
-			{ 2, 12, 8 },		// 84 bits per transform
-			{ 2, 13, 7 },		// 84 bits per transform
-			{ 2, 14, 6 },		// 84 bits per transform
-			{ 2, 15, 5 },		// 84 bits per transform
-			{ 2, 16, 4 },		// 84 bits per transform
-			{ 2, 17, 3 },		// 84 bits per transform
-			{ 3, 2, 17 },		// 84 bits per transform
-			{ 3, 3, 16 },		// 84 bits per transform
-			{ 3, 4, 15 },		// 84 bits per transform
-			{ 3, 5, 14 },		// 84 bits per transform
-			{ 3, 6, 13 },		// 84 bits per transform
-			{ 3, 7, 12 },		// 84 bits per transform
-			{ 3, 8, 11 },		// 84 bits per transform
-			{ 3, 9, 10 },		// 84 bits per transform
-			{ 3, 10, 9 },		// 84 bits per transform
-			{ 3, 11, 8 },		// 84 bits per transform
-			{ 3, 12, 7 },		// 84 bits per transform
-			{ 3, 13, 6 },		// 84 bits per transform
-			{ 3, 14, 5 },		// 84 bits per transform
-			{ 3, 15, 4 },		// 84 bits per transform
-			{ 3, 16, 3 },		// 84 bits per transform
-			{ 3, 17, 2 },		// 84 bits per transform
-			{ 4, 1, 17 },		// 84 bits per transform
-			{ 4, 2, 16 },		// 84 bits per transform
-			{ 4, 3, 15 },		// 84 bits per transform
-			{ 4, 4, 14 },		// 84 bits per transform
-			{ 4, 5, 13 },		// 84 bits per transform
-			{ 4, 6, 12 },		// 84 bits per transform
-			{ 4, 7, 11 },		// 84 bits per transform
-			{ 4, 8, 10 },		// 84 bits per transform
-			{ 4, 9, 9 },		// 84 bits per transform
-			{ 4, 10, 8 },		// 84 bits per transform
-			{ 4, 11, 7 },		// 84 bits per transform
-			{ 4, 12, 6 },		// 84 bits per transform
-			{ 4, 13, 5 },		// 84 bits per transform
-			{ 4, 14, 4 },		// 84 bits per transform
-			{ 4, 15, 3 },		// 84 bits per transform
-			{ 4, 16, 2 },		// 84 bits per transform
-			{ 4, 17, 1 },		// 84 bits per transform
-			{ 5, 1, 16 },		// 84 bits per transform
-			{ 5, 2, 15 },		// 84 bits per transform
-			{ 5, 3, 14 },		// 84 bits per transform
-			{ 5, 4, 13 },		// 84 bits per transform
-			{ 5, 5, 12 },		// 84 bits per transform
-			{ 5, 6, 11 },		// 84 bits per transform
-			{ 5, 7, 10 },		// 84 bits per transform
-			{ 5, 8, 9 },		// 84 bits per transform
-			{ 5, 9, 8 },		// 84 bits per transform
-			{ 5, 10, 7 },		// 84 bits per transform
-			{ 5, 11, 6 },		// 84 bits per transform
-			{ 5, 12, 5 },		// 84 bits per transform
-			{ 5, 13, 4 },		// 84 bits per transform
-			{ 5, 14, 3 },		// 84 bits per transform
-			{ 5, 15, 2 },		// 84 bits per transform
-			{ 5, 16, 1 },		// 84 bits per transform
-			{ 6, 1, 15 },		// 84 bits per transform
-			{ 6, 2, 14 },		// 84 bits per transform
-			{ 6, 3, 13 },		// 84 bits per transform
-			{ 6, 4, 12 },		// 84 bits per transform
-			{ 6, 5, 11 },		// 84 bits per transform
-			{ 6, 6, 10 },		// 84 bits per transform
-			{ 6, 7, 9 },		// 84 bits per transform
-			{ 6, 8, 8 },		// 84 bits per transform
-			{ 6, 9, 7 },		// 84 bits per transform
-			{ 6, 10, 6 },		// 84 bits per transform
-			{ 6, 11, 5 },		// 84 bits per transform
-			{ 6, 12, 4 },		// 84 bits per transform
-			{ 6, 13, 3 },		// 84 bits per transform
-			{ 6, 14, 2 },		// 84 bits per transform
-			{ 6, 15, 1 },		// 84 bits per transform
-			{ 7, 0, 17 },		// 84 bits per transform
-			{ 7, 1, 14 },		// 84 bits per transform
-			{ 7, 2, 13 },		// 84 bits per transform
-			{ 7, 3, 12 },		// 84 bits per transform
-			{ 7, 4, 11 },		// 84 bits per transform
-			{ 7, 5, 10 },		// 84 bits per transform
-			{ 7, 6, 9 },		// 84 bits per transform
-			{ 7, 7, 8 },		// 84 bits per transform
-			{ 7, 8, 7 },		// 84 bits per transform
-			{ 7, 9, 6 },		// 84 bits per transform
-			{ 7, 10, 5 },		// 84 bits per transform
-			{ 7, 11, 4 },		// 84 bits per transform
-			{ 7, 12, 3 },		// 84 bits per transform
-			{ 7, 13, 2 },		// 84 bits per transform
-			{ 7, 14, 1 },		// 84 bits per transform
-			{ 7, 17, 0 },		// 84 bits per transform
-			{ 8, 0, 16 },		// 84 bits per transform
-			{ 8, 1, 13 },		// 84 bits per transform
-			{ 8, 2, 12 },		// 84 bits per transform
-			{ 8, 3, 11 },		// 84 bits per transform
-			{ 8, 4, 10 },		// 84 bits per transform
-			{ 8, 5, 9 },		// 84 bits per transform
-			{ 8, 6, 8 },		// 84 bits per transform
-			{ 8, 7, 7 },		// 84 bits per transform
-			{ 8, 8, 6 },		// 84 bits per transform
-			{ 8, 9, 5 },		// 84 bits per transform
-			{ 8, 10, 4 },		// 84 bits per transform
-			{ 8, 11, 3 },		// 84 bits per transform
-			{ 8, 12, 2 },		// 84 bits per transform
-			{ 8, 13, 1 },		// 84 bits per transform
-			{ 8, 16, 0 },		// 84 bits per transform
-			{ 9, 0, 15 },		// 84 bits per transform
-			{ 9, 1, 12 },		// 84 bits per transform
-			{ 9, 2, 11 },		// 84 bits per transform
-			{ 9, 3, 10 },		// 84 bits per transform
-			{ 9, 4, 9 },		// 84 bits per transform
-			{ 9, 5, 8 },		// 84 bits per transform
-			{ 9, 6, 7 },		// 84 bits per transform
-			{ 9, 7, 6 },		// 84 bits per transform
-			{ 9, 8, 5 },		// 84 bits per transform
-			{ 9, 9, 4 },		// 84 bits per transform
-			{ 9, 10, 3 },		// 84 bits per transform
-			{ 9, 11, 2 },		// 84 bits per transform
-			{ 9, 12, 1 },		// 84 bits per transform
-			{ 9, 15, 0 },		// 84 bits per transform
-			{ 10, 0, 14 },		// 84 bits per transform
-			{ 10, 1, 11 },		// 84 bits per transform
-			{ 10, 2, 10 },		// 84 bits per transform
-			{ 10, 3, 9 },		// 84 bits per transform
-			{ 10, 4, 8 },		// 84 bits per transform
-			{ 10, 5, 7 },		// 84 bits per transform
-			{ 10, 6, 6 },		// 84 bits per transform
-			{ 10, 7, 5 },		// 84 bits per transform
-			{ 10, 8, 4 },		// 84 bits per transform
-			{ 10, 9, 3 },		// 84 bits per transform
-			{ 10, 10, 2 },		// 84 bits per transform
-			{ 10, 11, 1 },		// 84 bits per transform
-			{ 10, 14, 0 },		// 84 bits per transform
-			{ 11, 0, 13 },		// 84 bits per transform
-			{ 11, 1, 10 },		// 84 bits per transform
-			{ 11, 2, 9 },		// 84 bits per transform
-			{ 11, 3, 8 },		// 84 bits per transform
-			{ 11, 4, 7 },		// 84 bits per transform
-			{ 11, 5, 6 },		// 84 bits per transform
-			{ 11, 6, 5 },		// 84 bits per transform
-			{ 11, 7, 4 },		// 84 bits per transform
-			{ 11, 8, 3 },		// 84 bits per transform
-			{ 11, 9, 2 },		// 84 bits per transform
-			{ 11, 10, 1 },		// 84 bits per transform
-			{ 11, 13, 0 },		// 84 bits per transform
-			{ 12, 0, 12 },		// 84 bits per transform
-			{ 12, 1, 9 },		// 84 bits per transform
-			{ 12, 2, 8 },		// 84 bits per transform
-			{ 12, 3, 7 },		// 84 bits per transform
-			{ 12, 4, 6 },		// 84 bits per transform
-			{ 12, 5, 5 },		// 84 bits per transform
-			{ 12, 6, 4 },		// 84 bits per transform
-			{ 12, 7, 3 },		// 84 bits per transform
-			{ 12, 8, 2 },		// 84 bits per transform
-			{ 12, 9, 1 },		// 84 bits per transform
-			{ 12, 12, 0 },		// 84 bits per transform
-			{ 13, 0, 11 },		// 84 bits per transform
-			{ 13, 1, 8 },		// 84 bits per transform
-			{ 13, 2, 7 },		// 84 bits per transform
-			{ 13, 3, 6 },		// 84 bits per transform
-			{ 13, 4, 5 },		// 84 bits per transform
-			{ 13, 5, 4 },		// 84 bits per transform
-			{ 13, 6, 3 },		// 84 bits per transform
-			{ 13, 7, 2 },		// 84 bits per transform
-			{ 13, 8, 1 },		// 84 bits per transform
-			{ 13, 11, 0 },		// 84 bits per transform
-			{ 14, 0, 10 },		// 84 bits per transform
-			{ 14, 1, 7 },		// 84 bits per transform
-			{ 14, 2, 6 },		// 84 bits per transform
-			{ 14, 3, 5 },		// 84 bits per transform
-			{ 14, 4, 4 },		// 84 bits per transform
-			{ 14, 5, 3 },		// 84 bits per transform
-			{ 14, 6, 2 },		// 84 bits per transform
-			{ 14, 7, 1 },		// 84 bits per transform
-			{ 14, 10, 0 },		// 84 bits per transform
-			{ 15, 0, 9 },		// 84 bits per transform
-			{ 15, 1, 6 },		// 84 bits per transform
-			{ 15, 2, 5 },		// 84 bits per transform
-			{ 15, 3, 4 },		// 84 bits per transform
-			{ 15, 4, 3 },		// 84 bits per transform
-			{ 15, 5, 2 },		// 84 bits per transform
-			{ 15, 6, 1 },		// 84 bits per transform
-			{ 15, 9, 0 },		// 84 bits per transform
-			{ 16, 0, 8 },		// 84 bits per transform
-			{ 16, 1, 5 },		// 84 bits per transform
-			{ 16, 2, 4 },		// 84 bits per transform
-			{ 16, 3, 3 },		// 84 bits per transform
-			{ 16, 4, 2 },		// 84 bits per transform
-			{ 16, 5, 1 },		// 84 bits per transform
-			{ 16, 8, 0 },		// 84 bits per transform
-			{ 17, 0, 7 },		// 84 bits per transform
-			{ 17, 1, 4 },		// 84 bits per transform
-			{ 17, 2, 3 },		// 84 bits per transform
-			{ 17, 3, 2 },		// 84 bits per transform
-			{ 17, 4, 1 },		// 84 bits per transform
-			{ 17, 7, 0 },		// 84 bits per transform
-			{ 0, 8, 17 },		// 87 bits per transform
-			{ 0, 9, 16 },		// 87 bits per transform
-			{ 0, 10, 15 },		// 87 bits per transform
-			{ 0, 11, 14 },		// 87 bits per transform
-			{ 0, 12, 13 },		// 87 bits per transform
-			{ 0, 13, 12 },		// 87 bits per transform
-			{ 0, 14, 11 },		// 87 bits per transform
-			{ 0, 15, 10 },		// 87 bits per transform
-			{ 0, 16, 9 },		// 87 bits per transform
-			{ 0, 17, 8 },		// 87 bits per transform
-			{ 1, 5, 17 },		// 87 bits per transform
-			{ 1, 6, 16 },		// 87 bits per transform
-			{ 1, 7, 15 },		// 87 bits per transform
-			{ 1, 8, 14 },		// 87 bits per transform
-			{ 1, 9, 13 },		// 87 bits per transform
-			{ 1, 10, 12 },		// 87 bits per transform
-			{ 1, 11, 11 },		// 87 bits per transform
-			{ 1, 12, 10 },		// 87 bits per transform
-			{ 1, 13, 9 },		// 87 bits per transform
-			{ 1, 14, 8 },		// 87 bits per transform
-			{ 1, 15, 7 },		// 87 bits per transform
-			{ 1, 16, 6 },		// 87 bits per transform
-			{ 1, 17, 5 },		// 87 bits per transform
-			{ 2, 4, 17 },		// 87 bits per transform
-			{ 2, 5, 16 },		// 87 bits per transform
-			{ 2, 6, 15 },		// 87 bits per transform
-			{ 2, 7, 14 },		// 87 bits per transform
-			{ 2, 8, 13 },		// 87 bits per transform
-			{ 2, 9, 12 },		// 87 bits per transform
-			{ 2, 10, 11 },		// 87 bits per transform
-			{ 2, 11, 10 },		// 87 bits per transform
-			{ 2, 12, 9 },		// 87 bits per transform
-			{ 2, 13, 8 },		// 87 bits per transform
-			{ 2, 14, 7 },		// 87 bits per transform
-			{ 2, 15, 6 },		// 87 bits per transform
-			{ 2, 16, 5 },		// 87 bits per transform
-			{ 2, 17, 4 },		// 87 bits per transform
-			{ 3, 3, 17 },		// 87 bits per transform
-			{ 3, 4, 16 },		// 87 bits per transform
-			{ 3, 5, 15 },		// 87 bits per transform
-			{ 3, 6, 14 },		// 87 bits per transform
-			{ 3, 7, 13 },		// 87 bits per transform
-			{ 3, 8, 12 },		// 87 bits per transform
-			{ 3, 9, 11 },		// 87 bits per transform
-			{ 3, 10, 10 },		// 87 bits per transform
-			{ 3, 11, 9 },		// 87 bits per transform
-			{ 3, 12, 8 },		// 87 bits per transform
-			{ 3, 13, 7 },		// 87 bits per transform
-			{ 3, 14, 6 },		// 87 bits per transform
-			{ 3, 15, 5 },		// 87 bits per transform
-			{ 3, 16, 4 },		// 87 bits per transform
-			{ 3, 17, 3 },		// 87 bits per transform
-			{ 4, 2, 17 },		// 87 bits per transform
-			{ 4, 3, 16 },		// 87 bits per transform
-			{ 4, 4, 15 },		// 87 bits per transform
-			{ 4, 5, 14 },		// 87 bits per transform
-			{ 4, 6, 13 },		// 87 bits per transform
-			{ 4, 7, 12 },		// 87 bits per transform
-			{ 4, 8, 11 },		// 87 bits per transform
-			{ 4, 9, 10 },		// 87 bits per transform
-			{ 4, 10, 9 },		// 87 bits per transform
-			{ 4, 11, 8 },		// 87 bits per transform
-			{ 4, 12, 7 },		// 87 bits per transform
-			{ 4, 13, 6 },		// 87 bits per transform
-			{ 4, 14, 5 },		// 87 bits per transform
-			{ 4, 15, 4 },		// 87 bits per transform
-			{ 4, 16, 3 },		// 87 bits per transform
-			{ 4, 17, 2 },		// 87 bits per transform
-			{ 5, 1, 17 },		// 87 bits per transform
-			{ 5, 2, 16 },		// 87 bits per transform
-			{ 5, 3, 15 },		// 87 bits per transform
-			{ 5, 4, 14 },		// 87 bits per transform
-			{ 5, 5, 13 },		// 87 bits per transform
-			{ 5, 6, 12 },		// 87 bits per transform
-			{ 5, 7, 11 },		// 87 bits per transform
-			{ 5, 8, 10 },		// 87 bits per transform
-			{ 5, 9, 9 },		// 87 bits per transform
-			{ 5, 10, 8 },		// 87 bits per transform
-			{ 5, 11, 7 },		// 87 bits per transform
-			{ 5, 12, 6 },		// 87 bits per transform
-			{ 5, 13, 5 },		// 87 bits per transform
-			{ 5, 14, 4 },		// 87 bits per transform
-			{ 5, 15, 3 },		// 87 bits per transform
-			{ 5, 16, 2 },		// 87 bits per transform
-			{ 5, 17, 1 },		// 87 bits per transform
-			{ 6, 1, 16 },		// 87 bits per transform
-			{ 6, 2, 15 },		// 87 bits per transform
-			{ 6, 3, 14 },		// 87 bits per transform
-			{ 6, 4, 13 },		// 87 bits per transform
-			{ 6, 5, 12 },		// 87 bits per transform
-			{ 6, 6, 11 },		// 87 bits per transform
-			{ 6, 7, 10 },		// 87 bits per transform
-			{ 6, 8, 9 },		// 87 bits per transform
-			{ 6, 9, 8 },		// 87 bits per transform
-			{ 6, 10, 7 },		// 87 bits per transform
-			{ 6, 11, 6 },		// 87 bits per transform
-			{ 6, 12, 5 },		// 87 bits per transform
-			{ 6, 13, 4 },		// 87 bits per transform
-			{ 6, 14, 3 },		// 87 bits per transform
-			{ 6, 15, 2 },		// 87 bits per transform
-			{ 6, 16, 1 },		// 87 bits per transform
-			{ 7, 1, 15 },		// 87 bits per transform
-			{ 7, 2, 14 },		// 87 bits per transform
-			{ 7, 3, 13 },		// 87 bits per transform
-			{ 7, 4, 12 },		// 87 bits per transform
-			{ 7, 5, 11 },		// 87 bits per transform
-			{ 7, 6, 10 },		// 87 bits per transform
-			{ 7, 7, 9 },		// 87 bits per transform
-			{ 7, 8, 8 },		// 87 bits per transform
-			{ 7, 9, 7 },		// 87 bits per transform
-			{ 7, 10, 6 },		// 87 bits per transform
-			{ 7, 11, 5 },		// 87 bits per transform
-			{ 7, 12, 4 },		// 87 bits per transform
-			{ 7, 13, 3 },		// 87 bits per transform
-			{ 7, 14, 2 },		// 87 bits per transform
-			{ 7, 15, 1 },		// 87 bits per transform
-			{ 8, 0, 17 },		// 87 bits per transform
-			{ 8, 1, 14 },		// 87 bits per transform
-			{ 8, 2, 13 },		// 87 bits per transform
-			{ 8, 3, 12 },		// 87 bits per transform
-			{ 8, 4, 11 },		// 87 bits per transform
-			{ 8, 5, 10 },		// 87 bits per transform
-			{ 8, 6, 9 },		// 87 bits per transform
-			{ 8, 7, 8 },		// 87 bits per transform
-			{ 8, 8, 7 },		// 87 bits per transform
-			{ 8, 9, 6 },		// 87 bits per transform
-			{ 8, 10, 5 },		// 87 bits per transform
-			{ 8, 11, 4 },		// 87 bits per transform
-			{ 8, 12, 3 },		// 87 bits per transform
-			{ 8, 13, 2 },		// 87 bits per transform
-			{ 8, 14, 1 },		// 87 bits per transform
-			{ 8, 17, 0 },		// 87 bits per transform
-			{ 9, 0, 16 },		// 87 bits per transform
-			{ 9, 1, 13 },		// 87 bits per transform
-			{ 9, 2, 12 },		// 87 bits per transform
-			{ 9, 3, 11 },		// 87 bits per transform
-			{ 9, 4, 10 },		// 87 bits per transform
-			{ 9, 5, 9 },		// 87 bits per transform
-			{ 9, 6, 8 },		// 87 bits per transform
-			{ 9, 7, 7 },		// 87 bits per transform
-			{ 9, 8, 6 },		// 87 bits per transform
-			{ 9, 9, 5 },		// 87 bits per transform
-			{ 9, 10, 4 },		// 87 bits per transform
-			{ 9, 11, 3 },		// 87 bits per transform
-			{ 9, 12, 2 },		// 87 bits per transform
-			{ 9, 13, 1 },		// 87 bits per transform
-			{ 9, 16, 0 },		// 87 bits per transform
-			{ 10, 0, 15 },		// 87 bits per transform
-			{ 10, 1, 12 },		// 87 bits per transform
-			{ 10, 2, 11 },		// 87 bits per transform
-			{ 10, 3, 10 },		// 87 bits per transform
-			{ 10, 4, 9 },		// 87 bits per transform
-			{ 10, 5, 8 },		// 87 bits per transform
-			{ 10, 6, 7 },		// 87 bits per transform
-			{ 10, 7, 6 },		// 87 bits per transform
-			{ 10, 8, 5 },		// 87 bits per transform
-			{ 10, 9, 4 },		// 87 bits per transform
-			{ 10, 10, 3 },		// 87 bits per transform
-			{ 10, 11, 2 },		// 87 bits per transform
-			{ 10, 12, 1 },		// 87 bits per transform
-			{ 10, 15, 0 },		// 87 bits per transform
-			{ 11, 0, 14 },		// 87 bits per transform
-			{ 11, 1, 11 },		// 87 bits per transform
-			{ 11, 2, 10 },		// 87 bits per transform
-			{ 11, 3, 9 },		// 87 bits per transform
-			{ 11, 4, 8 },		// 87 bits per transform
-			{ 11, 5, 7 },		// 87 bits per transform
-			{ 11, 6, 6 },		// 87 bits per transform
-			{ 11, 7, 5 },		// 87 bits per transform
-			{ 11, 8, 4 },		// 87 bits per transform
-			{ 11, 9, 3 },		// 87 bits per transform
-			{ 11, 10, 2 },		// 87 bits per transform
-			{ 11, 11, 1 },		// 87 bits per transform
-			{ 11, 14, 0 },		// 87 bits per transform
-			{ 12, 0, 13 },		// 87 bits per transform
-			{ 12, 1, 10 },		// 87 bits per transform
-			{ 12, 2, 9 },		// 87 bits per transform
-			{ 12, 3, 8 },		// 87 bits per transform
-			{ 12, 4, 7 },		// 87 bits per transform
-			{ 12, 5, 6 },		// 87 bits per transform
-			{ 12, 6, 5 },		// 87 bits per transform
-			{ 12, 7, 4 },		// 87 bits per transform
-			{ 12, 8, 3 },		// 87 bits per transform
-			{ 12, 9, 2 },		// 87 bits per transform
-			{ 12, 10, 1 },		// 87 bits per transform
-			{ 12, 13, 0 },		// 87 bits per transform
-			{ 13, 0, 12 },		// 87 bits per transform
-			{ 13, 1, 9 },		// 87 bits per transform
-			{ 13, 2, 8 },		// 87 bits per transform
-			{ 13, 3, 7 },		// 87 bits per transform
-			{ 13, 4, 6 },		// 87 bits per transform
-			{ 13, 5, 5 },		// 87 bits per transform
-			{ 13, 6, 4 },		// 87 bits per transform
-			{ 13, 7, 3 },		// 87 bits per transform
-			{ 13, 8, 2 },		// 87 bits per transform
-			{ 13, 9, 1 },		// 87 bits per transform
-			{ 13, 12, 0 },		// 87 bits per transform
-			{ 14, 0, 11 },		// 87 bits per transform
-			{ 14, 1, 8 },		// 87 bits per transform
-			{ 14, 2, 7 },		// 87 bits per transform
-			{ 14, 3, 6 },		// 87 bits per transform
-			{ 14, 4, 5 },		// 87 bits per transform
-			{ 14, 5, 4 },		// 87 bits per transform
-			{ 14, 6, 3 },		// 87 bits per transform
-			{ 14, 7, 2 },		// 87 bits per transform
-			{ 14, 8, 1 },		// 87 bits per transform
-			{ 14, 11, 0 },		// 87 bits per transform
-			{ 15, 0, 10 },		// 87 bits per transform
-			{ 15, 1, 7 },		// 87 bits per transform
-			{ 15, 2, 6 },		// 87 bits per transform
-			{ 15, 3, 5 },		// 87 bits per transform
-			{ 15, 4, 4 },		// 87 bits per transform
-			{ 15, 5, 3 },		// 87 bits per transform
-			{ 15, 6, 2 },		// 87 bits per transform
-			{ 15, 7, 1 },		// 87 bits per transform
-			{ 15, 10, 0 },		// 87 bits per transform
-			{ 16, 0, 9 },		// 87 bits per transform
-			{ 16, 1, 6 },		// 87 bits per transform
-			{ 16, 2, 5 },		// 87 bits per transform
-			{ 16, 3, 4 },		// 87 bits per transform
-			{ 16, 4, 3 },		// 87 bits per transform
-			{ 16, 5, 2 },		// 87 bits per transform
-			{ 16, 6, 1 },		// 87 bits per transform
-			{ 16, 9, 0 },		// 87 bits per transform
-			{ 17, 0, 8 },		// 87 bits per transform
-			{ 17, 1, 5 },		// 87 bits per transform
-			{ 17, 2, 4 },		// 87 bits per transform
-			{ 17, 3, 3 },		// 87 bits per transform
-			{ 17, 4, 2 },		// 87 bits per transform
-			{ 17, 5, 1 },		// 87 bits per transform
-			{ 17, 8, 0 },		// 87 bits per transform
-			{ 0, 9, 17 },		// 90 bits per transform
-			{ 0, 10, 16 },		// 90 bits per transform
-			{ 0, 11, 15 },		// 90 bits per transform
-			{ 0, 12, 14 },		// 90 bits per transform
-			{ 0, 13, 13 },		// 90 bits per transform
-			{ 0, 14, 12 },		// 90 bits per transform
-			{ 0, 15, 11 },		// 90 bits per transform
-			{ 0, 16, 10 },		// 90 bits per transform
-			{ 0, 17, 9 },		// 90 bits per transform
-			{ 1, 6, 17 },		// 90 bits per transform
-			{ 1, 7, 16 },		// 90 bits per transform
-			{ 1, 8, 15 },		// 90 bits per transform
-			{ 1, 9, 14 },		// 90 bits per transform
-			{ 1, 10, 13 },		// 90 bits per transform
-			{ 1, 11, 12 },		// 90 bits per transform
-			{ 1, 12, 11 },		// 90 bits per transform
-			{ 1, 13, 10 },		// 90 bits per transform
-			{ 1, 14, 9 },		// 90 bits per transform
-			{ 1, 15, 8 },		// 90 bits per transform
-			{ 1, 16, 7 },		// 90 bits per transform
-			{ 1, 17, 6 },		// 90 bits per transform
-			{ 2, 5, 17 },		// 90 bits per transform
-			{ 2, 6, 16 },		// 90 bits per transform
-			{ 2, 7, 15 },		// 90 bits per transform
-			{ 2, 8, 14 },		// 90 bits per transform
-			{ 2, 9, 13 },		// 90 bits per transform
-			{ 2, 10, 12 },		// 90 bits per transform
-			{ 2, 11, 11 },		// 90 bits per transform
-			{ 2, 12, 10 },		// 90 bits per transform
-			{ 2, 13, 9 },		// 90 bits per transform
-			{ 2, 14, 8 },		// 90 bits per transform
-			{ 2, 15, 7 },		// 90 bits per transform
-			{ 2, 16, 6 },		// 90 bits per transform
-			{ 2, 17, 5 },		// 90 bits per transform
-			{ 3, 4, 17 },		// 90 bits per transform
-			{ 3, 5, 16 },		// 90 bits per transform
-			{ 3, 6, 15 },		// 90 bits per transform
-			{ 3, 7, 14 },		// 90 bits per transform
-			{ 3, 8, 13 },		// 90 bits per transform
-			{ 3, 9, 12 },		// 90 bits per transform
-			{ 3, 10, 11 },		// 90 bits per transform
-			{ 3, 11, 10 },		// 90 bits per transform
-			{ 3, 12, 9 },		// 90 bits per transform
-			{ 3, 13, 8 },		// 90 bits per transform
-			{ 3, 14, 7 },		// 90 bits per transform
-			{ 3, 15, 6 },		// 90 bits per transform
-			{ 3, 16, 5 },		// 90 bits per transform
-			{ 3, 17, 4 },		// 90 bits per transform
-			{ 4, 3, 17 },		// 90 bits per transform
-			{ 4, 4, 16 },		// 90 bits per transform
-			{ 4, 5, 15 },		// 90 bits per transform
-			{ 4, 6, 14 },		// 90 bits per transform
-			{ 4, 7, 13 },		// 90 bits per transform
-			{ 4, 8, 12 },		// 90 bits per transform
-			{ 4, 9, 11 },		// 90 bits per transform
-			{ 4, 10, 10 },		// 90 bits per transform
-			{ 4, 11, 9 },		// 90 bits per transform
-			{ 4, 12, 8 },		// 90 bits per transform
-			{ 4, 13, 7 },		// 90 bits per transform
-			{ 4, 14, 6 },		// 90 bits per transform
-			{ 4, 15, 5 },		// 90 bits per transform
-			{ 4, 16, 4 },		// 90 bits per transform
-			{ 4, 17, 3 },		// 90 bits per transform
-			{ 5, 2, 17 },		// 90 bits per transform
-			{ 5, 3, 16 },		// 90 bits per transform
-			{ 5, 4, 15 },		// 90 bits per transform
-			{ 5, 5, 14 },		// 90 bits per transform
-			{ 5, 6, 13 },		// 90 bits per transform
-			{ 5, 7, 12 },		// 90 bits per transform
-			{ 5, 8, 11 },		// 90 bits per transform
-			{ 5, 9, 10 },		// 90 bits per transform
-			{ 5, 10, 9 },		// 90 bits per transform
-			{ 5, 11, 8 },		// 90 bits per transform
-			{ 5, 12, 7 },		// 90 bits per transform
-			{ 5, 13, 6 },		// 90 bits per transform
-			{ 5, 14, 5 },		// 90 bits per transform
-			{ 5, 15, 4 },		// 90 bits per transform
-			{ 5, 16, 3 },		// 90 bits per transform
-			{ 5, 17, 2 },		// 90 bits per transform
-			{ 6, 1, 17 },		// 90 bits per transform
-			{ 6, 2, 16 },		// 90 bits per transform
-			{ 6, 3, 15 },		// 90 bits per transform
-			{ 6, 4, 14 },		// 90 bits per transform
-			{ 6, 5, 13 },		// 90 bits per transform
-			{ 6, 6, 12 },		// 90 bits per transform
-			{ 6, 7, 11 },		// 90 bits per transform
-			{ 6, 8, 10 },		// 90 bits per transform
-			{ 6, 9, 9 },		// 90 bits per transform
-			{ 6, 10, 8 },		// 90 bits per transform
-			{ 6, 11, 7 },		// 90 bits per transform
-			{ 6, 12, 6 },		// 90 bits per transform
-			{ 6, 13, 5 },		// 90 bits per transform
-			{ 6, 14, 4 },		// 90 bits per transform
-			{ 6, 15, 3 },		// 90 bits per transform
-			{ 6, 16, 2 },		// 90 bits per transform
-			{ 6, 17, 1 },		// 90 bits per transform
-			{ 7, 1, 16 },		// 90 bits per transform
-			{ 7, 2, 15 },		// 90 bits per transform
-			{ 7, 3, 14 },		// 90 bits per transform
-			{ 7, 4, 13 },		// 90 bits per transform
-			{ 7, 5, 12 },		// 90 bits per transform
-			{ 7, 6, 11 },		// 90 bits per transform
-			{ 7, 7, 10 },		// 90 bits per transform
-			{ 7, 8, 9 },		// 90 bits per transform
-			{ 7, 9, 8 },		// 90 bits per transform
-			{ 7, 10, 7 },		// 90 bits per transform
-			{ 7, 11, 6 },		// 90 bits per transform
-			{ 7, 12, 5 },		// 90 bits per transform
-			{ 7, 13, 4 },		// 90 bits per transform
-			{ 7, 14, 3 },		// 90 bits per transform
-			{ 7, 15, 2 },		// 90 bits per transform
-			{ 7, 16, 1 },		// 90 bits per transform
-			{ 8, 1, 15 },		// 90 bits per transform
-			{ 8, 2, 14 },		// 90 bits per transform
-			{ 8, 3, 13 },		// 90 bits per transform
-			{ 8, 4, 12 },		// 90 bits per transform
-			{ 8, 5, 11 },		// 90 bits per transform
-			{ 8, 6, 10 },		// 90 bits per transform
-			{ 8, 7, 9 },		// 90 bits per transform
-			{ 8, 8, 8 },		// 90 bits per transform
-			{ 8, 9, 7 },		// 90 bits per transform
-			{ 8, 10, 6 },		// 90 bits per transform
-			{ 8, 11, 5 },		// 90 bits per transform
-			{ 8, 12, 4 },		// 90 bits per transform
-			{ 8, 13, 3 },		// 90 bits per transform
-			{ 8, 14, 2 },		// 90 bits per transform
-			{ 8, 15, 1 },		// 90 bits per transform
-			{ 9, 0, 17 },		// 90 bits per transform
-			{ 9, 1, 14 },		// 90 bits per transform
-			{ 9, 2, 13 },		// 90 bits per transform
-			{ 9, 3, 12 },		// 90 bits per transform
-			{ 9, 4, 11 },		// 90 bits per transform
-			{ 9, 5, 10 },		// 90 bits per transform
-			{ 9, 6, 9 },		// 90 bits per transform
-			{ 9, 7, 8 },		// 90 bits per transform
-			{ 9, 8, 7 },		// 90 bits per transform
-			{ 9, 9, 6 },		// 90 bits per transform
-			{ 9, 10, 5 },		// 90 bits per transform
-			{ 9, 11, 4 },		// 90 bits per transform
-			{ 9, 12, 3 },		// 90 bits per transform
-			{ 9, 13, 2 },		// 90 bits per transform
-			{ 9, 14, 1 },		// 90 bits per transform
-			{ 9, 17, 0 },		// 90 bits per transform
-			{ 10, 0, 16 },		// 90 bits per transform
-			{ 10, 1, 13 },		// 90 bits per transform
-			{ 10, 2, 12 },		// 90 bits per transform
-			{ 10, 3, 11 },		// 90 bits per transform
-			{ 10, 4, 10 },		// 90 bits per transform
-			{ 10, 5, 9 },		// 90 bits per transform
-			{ 10, 6, 8 },		// 90 bits per transform
-			{ 10, 7, 7 },		// 90 bits per transform
-			{ 10, 8, 6 },		// 90 bits per transform
-			{ 10, 9, 5 },		// 90 bits per transform
-			{ 10, 10, 4 },		// 90 bits per transform
-			{ 10, 11, 3 },		// 90 bits per transform
-			{ 10, 12, 2 },		// 90 bits per transform
-			{ 10, 13, 1 },		// 90 bits per transform
-			{ 10, 16, 0 },		// 90 bits per transform
-			{ 11, 0, 15 },		// 90 bits per transform
-			{ 11, 1, 12 },		// 90 bits per transform
-			{ 11, 2, 11 },		// 90 bits per transform
-			{ 11, 3, 10 },		// 90 bits per transform
-			{ 11, 4, 9 },		// 90 bits per transform
-			{ 11, 5, 8 },		// 90 bits per transform
-			{ 11, 6, 7 },		// 90 bits per transform
-			{ 11, 7, 6 },		// 90 bits per transform
-			{ 11, 8, 5 },		// 90 bits per transform
-			{ 11, 9, 4 },		// 90 bits per transform
-			{ 11, 10, 3 },		// 90 bits per transform
-			{ 11, 11, 2 },		// 90 bits per transform
-			{ 11, 12, 1 },		// 90 bits per transform
-			{ 11, 15, 0 },		// 90 bits per transform
-			{ 12, 0, 14 },		// 90 bits per transform
-			{ 12, 1, 11 },		// 90 bits per transform
-			{ 12, 2, 10 },		// 90 bits per transform
-			{ 12, 3, 9 },		// 90 bits per transform
-			{ 12, 4, 8 },		// 90 bits per transform
-			{ 12, 5, 7 },		// 90 bits per transform
-			{ 12, 6, 6 },		// 90 bits per transform
-			{ 12, 7, 5 },		// 90 bits per transform
-			{ 12, 8, 4 },		// 90 bits per transform
-			{ 12, 9, 3 },		// 90 bits per transform
-			{ 12, 10, 2 },		// 90 bits per transform
-			{ 12, 11, 1 },		// 90 bits per transform
-			{ 12, 14, 0 },		// 90 bits per transform
-			{ 13, 0, 13 },		// 90 bits per transform
-			{ 13, 1, 10 },		// 90 bits per transform
-			{ 13, 2, 9 },		// 90 bits per transform
-			{ 13, 3, 8 },		// 90 bits per transform
-			{ 13, 4, 7 },		// 90 bits per transform
-			{ 13, 5, 6 },		// 90 bits per transform
-			{ 13, 6, 5 },		// 90 bits per transform
-			{ 13, 7, 4 },		// 90 bits per transform
-			{ 13, 8, 3 },		// 90 bits per transform
-			{ 13, 9, 2 },		// 90 bits per transform
-			{ 13, 10, 1 },		// 90 bits per transform
-			{ 13, 13, 0 },		// 90 bits per transform
-			{ 14, 0, 12 },		// 90 bits per transform
-			{ 14, 1, 9 },		// 90 bits per transform
-			{ 14, 2, 8 },		// 90 bits per transform
-			{ 14, 3, 7 },		// 90 bits per transform
-			{ 14, 4, 6 },		// 90 bits per transform
-			{ 14, 5, 5 },		// 90 bits per transform
-			{ 14, 6, 4 },		// 90 bits per transform
-			{ 14, 7, 3 },		// 90 bits per transform
-			{ 14, 8, 2 },		// 90 bits per transform
-			{ 14, 9, 1 },		// 90 bits per transform
-			{ 14, 12, 0 },		// 90 bits per transform
-			{ 15, 0, 11 },		// 90 bits per transform
-			{ 15, 1, 8 },		// 90 bits per transform
-			{ 15, 2, 7 },		// 90 bits per transform
-			{ 15, 3, 6 },		// 90 bits per transform
-			{ 15, 4, 5 },		// 90 bits per transform
-			{ 15, 5, 4 },		// 90 bits per transform
-			{ 15, 6, 3 },		// 90 bits per transform
-			{ 15, 7, 2 },		// 90 bits per transform
-			{ 15, 8, 1 },		// 90 bits per transform
-			{ 15, 11, 0 },		// 90 bits per transform
-			{ 16, 0, 10 },		// 90 bits per transform
-			{ 16, 1, 7 },		// 90 bits per transform
-			{ 16, 2, 6 },		// 90 bits per transform
-			{ 16, 3, 5 },		// 90 bits per transform
-			{ 16, 4, 4 },		// 90 bits per transform
-			{ 16, 5, 3 },		// 90 bits per transform
-			{ 16, 6, 2 },		// 90 bits per transform
-			{ 16, 7, 1 },		// 90 bits per transform
-			{ 16, 10, 0 },		// 90 bits per transform
-			{ 17, 0, 9 },		// 90 bits per transform
-			{ 17, 1, 6 },		// 90 bits per transform
-			{ 17, 2, 5 },		// 90 bits per transform
-			{ 17, 3, 4 },		// 90 bits per transform
-			{ 17, 4, 3 },		// 90 bits per transform
-			{ 17, 5, 2 },		// 90 bits per transform
-			{ 17, 6, 1 },		// 90 bits per transform
-			{ 17, 9, 0 },		// 90 bits per transform
-			{ 0, 10, 17 },		// 93 bits per transform
-			{ 0, 11, 16 },		// 93 bits per transform
-			{ 0, 12, 15 },		// 93 bits per transform
-			{ 0, 13, 14 },		// 93 bits per transform
-			{ 0, 14, 13 },		// 93 bits per transform
-			{ 0, 15, 12 },		// 93 bits per transform
-			{ 0, 16, 11 },		// 93 bits per transform
-			{ 0, 17, 10 },		// 93 bits per transform
-			{ 1, 7, 17 },		// 93 bits per transform
-			{ 1, 8, 16 },		// 93 bits per transform
-			{ 1, 9, 15 },		// 93 bits per transform
-			{ 1, 10, 14 },		// 93 bits per transform
-			{ 1, 11, 13 },		// 93 bits per transform
-			{ 1, 12, 12 },		// 93 bits per transform
-			{ 1, 13, 11 },		// 93 bits per transform
-			{ 1, 14, 10 },		// 93 bits per transform
-			{ 1, 15, 9 },		// 93 bits per transform
-			{ 1, 16, 8 },		// 93 bits per transform
-			{ 1, 17, 7 },		// 93 bits per transform
-			{ 2, 6, 17 },		// 93 bits per transform
-			{ 2, 7, 16 },		// 93 bits per transform
-			{ 2, 8, 15 },		// 93 bits per transform
-			{ 2, 9, 14 },		// 93 bits per transform
-			{ 2, 10, 13 },		// 93 bits per transform
-			{ 2, 11, 12 },		// 93 bits per transform
-			{ 2, 12, 11 },		// 93 bits per transform
-			{ 2, 13, 10 },		// 93 bits per transform
-			{ 2, 14, 9 },		// 93 bits per transform
-			{ 2, 15, 8 },		// 93 bits per transform
-			{ 2, 16, 7 },		// 93 bits per transform
-			{ 2, 17, 6 },		// 93 bits per transform
-			{ 3, 5, 17 },		// 93 bits per transform
-			{ 3, 6, 16 },		// 93 bits per transform
-			{ 3, 7, 15 },		// 93 bits per transform
-			{ 3, 8, 14 },		// 93 bits per transform
-			{ 3, 9, 13 },		// 93 bits per transform
-			{ 3, 10, 12 },		// 93 bits per transform
-			{ 3, 11, 11 },		// 93 bits per transform
-			{ 3, 12, 10 },		// 93 bits per transform
-			{ 3, 13, 9 },		// 93 bits per transform
-			{ 3, 14, 8 },		// 93 bits per transform
-			{ 3, 15, 7 },		// 93 bits per transform
-			{ 3, 16, 6 },		// 93 bits per transform
-			{ 3, 17, 5 },		// 93 bits per transform
-			{ 4, 4, 17 },		// 93 bits per transform
-			{ 4, 5, 16 },		// 93 bits per transform
-			{ 4, 6, 15 },		// 93 bits per transform
-			{ 4, 7, 14 },		// 93 bits per transform
-			{ 4, 8, 13 },		// 93 bits per transform
-			{ 4, 9, 12 },		// 93 bits per transform
-			{ 4, 10, 11 },		// 93 bits per transform
-			{ 4, 11, 10 },		// 93 bits per transform
-			{ 4, 12, 9 },		// 93 bits per transform
-			{ 4, 13, 8 },		// 93 bits per transform
-			{ 4, 14, 7 },		// 93 bits per transform
-			{ 4, 15, 6 },		// 93 bits per transform
-			{ 4, 16, 5 },		// 93 bits per transform
-			{ 4, 17, 4 },		// 93 bits per transform
-			{ 5, 3, 17 },		// 93 bits per transform
-			{ 5, 4, 16 },		// 93 bits per transform
-			{ 5, 5, 15 },		// 93 bits per transform
-			{ 5, 6, 14 },		// 93 bits per transform
-			{ 5, 7, 13 },		// 93 bits per transform
-			{ 5, 8, 12 },		// 93 bits per transform
-			{ 5, 9, 11 },		// 93 bits per transform
-			{ 5, 10, 10 },		// 93 bits per transform
-			{ 5, 11, 9 },		// 93 bits per transform
-			{ 5, 12, 8 },		// 93 bits per transform
-			{ 5, 13, 7 },		// 93 bits per transform
-			{ 5, 14, 6 },		// 93 bits per transform
-			{ 5, 15, 5 },		// 93 bits per transform
-			{ 5, 16, 4 },		// 93 bits per transform
-			{ 5, 17, 3 },		// 93 bits per transform
-			{ 6, 2, 17 },		// 93 bits per transform
-			{ 6, 3, 16 },		// 93 bits per transform
-			{ 6, 4, 15 },		// 93 bits per transform
-			{ 6, 5, 14 },		// 93 bits per transform
-			{ 6, 6, 13 },		// 93 bits per transform
-			{ 6, 7, 12 },		// 93 bits per transform
-			{ 6, 8, 11 },		// 93 bits per transform
-			{ 6, 9, 10 },		// 93 bits per transform
-			{ 6, 10, 9 },		// 93 bits per transform
-			{ 6, 11, 8 },		// 93 bits per transform
-			{ 6, 12, 7 },		// 93 bits per transform
-			{ 6, 13, 6 },		// 93 bits per transform
-			{ 6, 14, 5 },		// 93 bits per transform
-			{ 6, 15, 4 },		// 93 bits per transform
-			{ 6, 16, 3 },		// 93 bits per transform
-			{ 6, 17, 2 },		// 93 bits per transform
-			{ 7, 1, 17 },		// 93 bits per transform
-			{ 7, 2, 16 },		// 93 bits per transform
-			{ 7, 3, 15 },		// 93 bits per transform
-			{ 7, 4, 14 },		// 93 bits per transform
-			{ 7, 5, 13 },		// 93 bits per transform
-			{ 7, 6, 12 },		// 93 bits per transform
-			{ 7, 7, 11 },		// 93 bits per transform
-			{ 7, 8, 10 },		// 93 bits per transform
-			{ 7, 9, 9 },		// 93 bits per transform
-			{ 7, 10, 8 },		// 93 bits per transform
-			{ 7, 11, 7 },		// 93 bits per transform
-			{ 7, 12, 6 },		// 93 bits per transform
-			{ 7, 13, 5 },		// 93 bits per transform
-			{ 7, 14, 4 },		// 93 bits per transform
-			{ 7, 15, 3 },		// 93 bits per transform
-			{ 7, 16, 2 },		// 93 bits per transform
-			{ 7, 17, 1 },		// 93 bits per transform
-			{ 8, 1, 16 },		// 93 bits per transform
-			{ 8, 2, 15 },		// 93 bits per transform
-			{ 8, 3, 14 },		// 93 bits per transform
-			{ 8, 4, 13 },		// 93 bits per transform
-			{ 8, 5, 12 },		// 93 bits per transform
-			{ 8, 6, 11 },		// 93 bits per transform
-			{ 8, 7, 10 },		// 93 bits per transform
-			{ 8, 8, 9 },		// 93 bits per transform
-			{ 8, 9, 8 },		// 93 bits per transform
-			{ 8, 10, 7 },		// 93 bits per transform
-			{ 8, 11, 6 },		// 93 bits per transform
-			{ 8, 12, 5 },		// 93 bits per transform
-			{ 8, 13, 4 },		// 93 bits per transform
-			{ 8, 14, 3 },		// 93 bits per transform
-			{ 8, 15, 2 },		// 93 bits per transform
-			{ 8, 16, 1 },		// 93 bits per transform
-			{ 9, 1, 15 },		// 93 bits per transform
-			{ 9, 2, 14 },		// 93 bits per transform
-			{ 9, 3, 13 },		// 93 bits per transform
-			{ 9, 4, 12 },		// 93 bits per transform
-			{ 9, 5, 11 },		// 93 bits per transform
-			{ 9, 6, 10 },		// 93 bits per transform
-			{ 9, 7, 9 },		// 93 bits per transform
-			{ 9, 8, 8 },		// 93 bits per transform
-			{ 9, 9, 7 },		// 93 bits per transform
-			{ 9, 10, 6 },		// 93 bits per transform
-			{ 9, 11, 5 },		// 93 bits per transform
-			{ 9, 12, 4 },		// 93 bits per transform
-			{ 9, 13, 3 },		// 93 bits per transform
-			{ 9, 14, 2 },		// 93 bits per transform
-			{ 9, 15, 1 },		// 93 bits per transform
-			{ 10, 0, 17 },		// 93 bits per transform
-			{ 10, 1, 14 },		// 93 bits per transform
-			{ 10, 2, 13 },		// 93 bits per transform
-			{ 10, 3, 12 },		// 93 bits per transform
-			{ 10, 4, 11 },		// 93 bits per transform
-			{ 10, 5, 10 },		// 93 bits per transform
-			{ 10, 6, 9 },		// 93 bits per transform
-			{ 10, 7, 8 },		// 93 bits per transform
-			{ 10, 8, 7 },		// 93 bits per transform
-			{ 10, 9, 6 },		// 93 bits per transform
-			{ 10, 10, 5 },		// 93 bits per transform
-			{ 10, 11, 4 },		// 93 bits per transform
-			{ 10, 12, 3 },		// 93 bits per transform
-			{ 10, 13, 2 },		// 93 bits per transform
-			{ 10, 14, 1 },		// 93 bits per transform
-			{ 10, 17, 0 },		// 93 bits per transform
-			{ 11, 0, 16 },		// 93 bits per transform
-			{ 11, 1, 13 },		// 93 bits per transform
-			{ 11, 2, 12 },		// 93 bits per transform
-			{ 11, 3, 11 },		// 93 bits per transform
-			{ 11, 4, 10 },		// 93 bits per transform
-			{ 11, 5, 9 },		// 93 bits per transform
-			{ 11, 6, 8 },		// 93 bits per transform
-			{ 11, 7, 7 },		// 93 bits per transform
-			{ 11, 8, 6 },		// 93 bits per transform
-			{ 11, 9, 5 },		// 93 bits per transform
-			{ 11, 10, 4 },		// 93 bits per transform
-			{ 11, 11, 3 },		// 93 bits per transform
-			{ 11, 12, 2 },		// 93 bits per transform
-			{ 11, 13, 1 },		// 93 bits per transform
-			{ 11, 16, 0 },		// 93 bits per transform
-			{ 12, 0, 15 },		// 93 bits per transform
-			{ 12, 1, 12 },		// 93 bits per transform
-			{ 12, 2, 11 },		// 93 bits per transform
-			{ 12, 3, 10 },		// 93 bits per transform
-			{ 12, 4, 9 },		// 93 bits per transform
-			{ 12, 5, 8 },		// 93 bits per transform
-			{ 12, 6, 7 },		// 93 bits per transform
-			{ 12, 7, 6 },		// 93 bits per transform
-			{ 12, 8, 5 },		// 93 bits per transform
-			{ 12, 9, 4 },		// 93 bits per transform
-			{ 12, 10, 3 },		// 93 bits per transform
-			{ 12, 11, 2 },		// 93 bits per transform
-			{ 12, 12, 1 },		// 93 bits per transform
-			{ 12, 15, 0 },		// 93 bits per transform
-			{ 13, 0, 14 },		// 93 bits per transform
-			{ 13, 1, 11 },		// 93 bits per transform
-			{ 13, 2, 10 },		// 93 bits per transform
-			{ 13, 3, 9 },		// 93 bits per transform
-			{ 13, 4, 8 },		// 93 bits per transform
-			{ 13, 5, 7 },		// 93 bits per transform
-			{ 13, 6, 6 },		// 93 bits per transform
-			{ 13, 7, 5 },		// 93 bits per transform
-			{ 13, 8, 4 },		// 93 bits per transform
-			{ 13, 9, 3 },		// 93 bits per transform
-			{ 13, 10, 2 },		// 93 bits per transform
-			{ 13, 11, 1 },		// 93 bits per transform
-			{ 13, 14, 0 },		// 93 bits per transform
-			{ 14, 0, 13 },		// 93 bits per transform
-			{ 14, 1, 10 },		// 93 bits per transform
-			{ 14, 2, 9 },		// 93 bits per transform
-			{ 14, 3, 8 },		// 93 bits per transform
-			{ 14, 4, 7 },		// 93 bits per transform
-			{ 14, 5, 6 },		// 93 bits per transform
-			{ 14, 6, 5 },		// 93 bits per transform
-			{ 14, 7, 4 },		// 93 bits per transform
-			{ 14, 8, 3 },		// 93 bits per transform
-			{ 14, 9, 2 },		// 93 bits per transform
-			{ 14, 10, 1 },		// 93 bits per transform
-			{ 14, 13, 0 },		// 93 bits per transform
-			{ 15, 0, 12 },		// 93 bits per transform
-			{ 15, 1, 9 },		// 93 bits per transform
-			{ 15, 2, 8 },		// 93 bits per transform
-			{ 15, 3, 7 },		// 93 bits per transform
-			{ 15, 4, 6 },		// 93 bits per transform
-			{ 15, 5, 5 },		// 93 bits per transform
-			{ 15, 6, 4 },		// 93 bits per transform
-			{ 15, 7, 3 },		// 93 bits per transform
-			{ 15, 8, 2 },		// 93 bits per transform
-			{ 15, 9, 1 },		// 93 bits per transform
-			{ 15, 12, 0 },		// 93 bits per transform
-			{ 16, 0, 11 },		// 93 bits per transform
-			{ 16, 1, 8 },		// 93 bits per transform
-			{ 16, 2, 7 },		// 93 bits per transform
-			{ 16, 3, 6 },		// 93 bits per transform
-			{ 16, 4, 5 },		// 93 bits per transform
-			{ 16, 5, 4 },		// 93 bits per transform
-			{ 16, 6, 3 },		// 93 bits per transform
-			{ 16, 7, 2 },		// 93 bits per transform
-			{ 16, 8, 1 },		// 93 bits per transform
-			{ 16, 11, 0 },		// 93 bits per transform
-			{ 17, 0, 10 },		// 93 bits per transform
-			{ 17, 1, 7 },		// 93 bits per transform
-			{ 17, 2, 6 },		// 93 bits per transform
-			{ 17, 3, 5 },		// 93 bits per transform
-			{ 17, 4, 4 },		// 93 bits per transform
-			{ 17, 5, 3 },		// 93 bits per transform
-			{ 17, 6, 2 },		// 93 bits per transform
-			{ 17, 7, 1 },		// 93 bits per transform
-			{ 17, 10, 0 },		// 93 bits per transform
-			{ 0, 0, 18 },		// 96 bits per transform
-			{ 0, 11, 17 },		// 96 bits per transform
-			{ 0, 12, 16 },		// 96 bits per transform
-			{ 0, 13, 15 },		// 96 bits per transform
-			{ 0, 14, 14 },		// 96 bits per transform
-			{ 0, 15, 13 },		// 96 bits per transform
-			{ 0, 16, 12 },		// 96 bits per transform
-			{ 0, 17, 11 },		// 96 bits per transform
-			{ 0, 18, 0 },		// 96 bits per transform
-			{ 1, 8, 17 },		// 96 bits per transform
-			{ 1, 9, 16 },		// 96 bits per transform
-			{ 1, 10, 15 },		// 96 bits per transform
-			{ 1, 11, 14 },		// 96 bits per transform
-			{ 1, 12, 13 },		// 96 bits per transform
-			{ 1, 13, 12 },		// 96 bits per transform
-			{ 1, 14, 11 },		// 96 bits per transform
-			{ 1, 15, 10 },		// 96 bits per transform
-			{ 1, 16, 9 },		// 96 bits per transform
-			{ 1, 17, 8 },		// 96 bits per transform
-			{ 2, 7, 17 },		// 96 bits per transform
-			{ 2, 8, 16 },		// 96 bits per transform
-			{ 2, 9, 15 },		// 96 bits per transform
-			{ 2, 10, 14 },		// 96 bits per transform
-			{ 2, 11, 13 },		// 96 bits per transform
-			{ 2, 12, 12 },		// 96 bits per transform
-			{ 2, 13, 11 },		// 96 bits per transform
-			{ 2, 14, 10 },		// 96 bits per transform
-			{ 2, 15, 9 },		// 96 bits per transform
-			{ 2, 16, 8 },		// 96 bits per transform
-			{ 2, 17, 7 },		// 96 bits per transform
-			{ 3, 6, 17 },		// 96 bits per transform
-			{ 3, 7, 16 },		// 96 bits per transform
-			{ 3, 8, 15 },		// 96 bits per transform
-			{ 3, 9, 14 },		// 96 bits per transform
-			{ 3, 10, 13 },		// 96 bits per transform
-			{ 3, 11, 12 },		// 96 bits per transform
-			{ 3, 12, 11 },		// 96 bits per transform
-			{ 3, 13, 10 },		// 96 bits per transform
-			{ 3, 14, 9 },		// 96 bits per transform
-			{ 3, 15, 8 },		// 96 bits per transform
-			{ 3, 16, 7 },		// 96 bits per transform
-			{ 3, 17, 6 },		// 96 bits per transform
-			{ 4, 5, 17 },		// 96 bits per transform
-			{ 4, 6, 16 },		// 96 bits per transform
-			{ 4, 7, 15 },		// 96 bits per transform
-			{ 4, 8, 14 },		// 96 bits per transform
-			{ 4, 9, 13 },		// 96 bits per transform
-			{ 4, 10, 12 },		// 96 bits per transform
-			{ 4, 11, 11 },		// 96 bits per transform
-			{ 4, 12, 10 },		// 96 bits per transform
-			{ 4, 13, 9 },		// 96 bits per transform
-			{ 4, 14, 8 },		// 96 bits per transform
-			{ 4, 15, 7 },		// 96 bits per transform
-			{ 4, 16, 6 },		// 96 bits per transform
-			{ 4, 17, 5 },		// 96 bits per transform
-			{ 5, 4, 17 },		// 96 bits per transform
-			{ 5, 5, 16 },		// 96 bits per transform
-			{ 5, 6, 15 },		// 96 bits per transform
-			{ 5, 7, 14 },		// 96 bits per transform
-			{ 5, 8, 13 },		// 96 bits per transform
-			{ 5, 9, 12 },		// 96 bits per transform
-			{ 5, 10, 11 },		// 96 bits per transform
-			{ 5, 11, 10 },		// 96 bits per transform
-			{ 5, 12, 9 },		// 96 bits per transform
-			{ 5, 13, 8 },		// 96 bits per transform
-			{ 5, 14, 7 },		// 96 bits per transform
-			{ 5, 15, 6 },		// 96 bits per transform
-			{ 5, 16, 5 },		// 96 bits per transform
-			{ 5, 17, 4 },		// 96 bits per transform
-			{ 6, 3, 17 },		// 96 bits per transform
-			{ 6, 4, 16 },		// 96 bits per transform
-			{ 6, 5, 15 },		// 96 bits per transform
-			{ 6, 6, 14 },		// 96 bits per transform
-			{ 6, 7, 13 },		// 96 bits per transform
-			{ 6, 8, 12 },		// 96 bits per transform
-			{ 6, 9, 11 },		// 96 bits per transform
-			{ 6, 10, 10 },		// 96 bits per transform
-			{ 6, 11, 9 },		// 96 bits per transform
-			{ 6, 12, 8 },		// 96 bits per transform
-			{ 6, 13, 7 },		// 96 bits per transform
-			{ 6, 14, 6 },		// 96 bits per transform
-			{ 6, 15, 5 },		// 96 bits per transform
-			{ 6, 16, 4 },		// 96 bits per transform
-			{ 6, 17, 3 },		// 96 bits per transform
-			{ 7, 2, 17 },		// 96 bits per transform
-			{ 7, 3, 16 },		// 96 bits per transform
-			{ 7, 4, 15 },		// 96 bits per transform
-			{ 7, 5, 14 },		// 96 bits per transform
-			{ 7, 6, 13 },		// 96 bits per transform
-			{ 7, 7, 12 },		// 96 bits per transform
-			{ 7, 8, 11 },		// 96 bits per transform
-			{ 7, 9, 10 },		// 96 bits per transform
-			{ 7, 10, 9 },		// 96 bits per transform
-			{ 7, 11, 8 },		// 96 bits per transform
-			{ 7, 12, 7 },		// 96 bits per transform
-			{ 7, 13, 6 },		// 96 bits per transform
-			{ 7, 14, 5 },		// 96 bits per transform
-			{ 7, 15, 4 },		// 96 bits per transform
-			{ 7, 16, 3 },		// 96 bits per transform
-			{ 7, 17, 2 },		// 96 bits per transform
-			{ 8, 1, 17 },		// 96 bits per transform
-			{ 8, 2, 16 },		// 96 bits per transform
-			{ 8, 3, 15 },		// 96 bits per transform
-			{ 8, 4, 14 },		// 96 bits per transform
-			{ 8, 5, 13 },		// 96 bits per transform
-			{ 8, 6, 12 },		// 96 bits per transform
-			{ 8, 7, 11 },		// 96 bits per transform
-			{ 8, 8, 10 },		// 96 bits per transform
-			{ 8, 9, 9 },		// 96 bits per transform
-			{ 8, 10, 8 },		// 96 bits per transform
-			{ 8, 11, 7 },		// 96 bits per transform
-			{ 8, 12, 6 },		// 96 bits per transform
-			{ 8, 13, 5 },		// 96 bits per transform
-			{ 8, 14, 4 },		// 96 bits per transform
-			{ 8, 15, 3 },		// 96 bits per transform
-			{ 8, 16, 2 },		// 96 bits per transform
-			{ 8, 17, 1 },		// 96 bits per transform
-			{ 9, 1, 16 },		// 96 bits per transform
-			{ 9, 2, 15 },		// 96 bits per transform
-			{ 9, 3, 14 },		// 96 bits per transform
-			{ 9, 4, 13 },		// 96 bits per transform
-			{ 9, 5, 12 },		// 96 bits per transform
-			{ 9, 6, 11 },		// 96 bits per transform
-			{ 9, 7, 10 },		// 96 bits per transform
-			{ 9, 8, 9 },		// 96 bits per transform
-			{ 9, 9, 8 },		// 96 bits per transform
-			{ 9, 10, 7 },		// 96 bits per transform
-			{ 9, 11, 6 },		// 96 bits per transform
-			{ 9, 12, 5 },		// 96 bits per transform
-			{ 9, 13, 4 },		// 96 bits per transform
-			{ 9, 14, 3 },		// 96 bits per transform
-			{ 9, 15, 2 },		// 96 bits per transform
-			{ 9, 16, 1 },		// 96 bits per transform
-			{ 10, 1, 15 },		// 96 bits per transform
-			{ 10, 2, 14 },		// 96 bits per transform
-			{ 10, 3, 13 },		// 96 bits per transform
-			{ 10, 4, 12 },		// 96 bits per transform
-			{ 10, 5, 11 },		// 96 bits per transform
-			{ 10, 6, 10 },		// 96 bits per transform
-			{ 10, 7, 9 },		// 96 bits per transform
-			{ 10, 8, 8 },		// 96 bits per transform
-			{ 10, 9, 7 },		// 96 bits per transform
-			{ 10, 10, 6 },		// 96 bits per transform
-			{ 10, 11, 5 },		// 96 bits per transform
-			{ 10, 12, 4 },		// 96 bits per transform
-			{ 10, 13, 3 },		// 96 bits per transform
-			{ 10, 14, 2 },		// 96 bits per transform
-			{ 10, 15, 1 },		// 96 bits per transform
-			{ 11, 0, 17 },		// 96 bits per transform
-			{ 11, 1, 14 },		// 96 bits per transform
-			{ 11, 2, 13 },		// 96 bits per transform
-			{ 11, 3, 12 },		// 96 bits per transform
-			{ 11, 4, 11 },		// 96 bits per transform
-			{ 11, 5, 10 },		// 96 bits per transform
-			{ 11, 6, 9 },		// 96 bits per transform
-			{ 11, 7, 8 },		// 96 bits per transform
-			{ 11, 8, 7 },		// 96 bits per transform
-			{ 11, 9, 6 },		// 96 bits per transform
-			{ 11, 10, 5 },		// 96 bits per transform
-			{ 11, 11, 4 },		// 96 bits per transform
-			{ 11, 12, 3 },		// 96 bits per transform
-			{ 11, 13, 2 },		// 96 bits per transform
-			{ 11, 14, 1 },		// 96 bits per transform
-			{ 11, 17, 0 },		// 96 bits per transform
-			{ 12, 0, 16 },		// 96 bits per transform
-			{ 12, 1, 13 },		// 96 bits per transform
-			{ 12, 2, 12 },		// 96 bits per transform
-			{ 12, 3, 11 },		// 96 bits per transform
-			{ 12, 4, 10 },		// 96 bits per transform
-			{ 12, 5, 9 },		// 96 bits per transform
-			{ 12, 6, 8 },		// 96 bits per transform
-			{ 12, 7, 7 },		// 96 bits per transform
-			{ 12, 8, 6 },		// 96 bits per transform
-			{ 12, 9, 5 },		// 96 bits per transform
-			{ 12, 10, 4 },		// 96 bits per transform
-			{ 12, 11, 3 },		// 96 bits per transform
-			{ 12, 12, 2 },		// 96 bits per transform
-			{ 12, 13, 1 },		// 96 bits per transform
-			{ 12, 16, 0 },		// 96 bits per transform
-			{ 13, 0, 15 },		// 96 bits per transform
-			{ 13, 1, 12 },		// 96 bits per transform
-			{ 13, 2, 11 },		// 96 bits per transform
-			{ 13, 3, 10 },		// 96 bits per transform
-			{ 13, 4, 9 },		// 96 bits per transform
-			{ 13, 5, 8 },		// 96 bits per transform
-			{ 13, 6, 7 },		// 96 bits per transform
-			{ 13, 7, 6 },		// 96 bits per transform
-			{ 13, 8, 5 },		// 96 bits per transform
-			{ 13, 9, 4 },		// 96 bits per transform
-			{ 13, 10, 3 },		// 96 bits per transform
-			{ 13, 11, 2 },		// 96 bits per transform
-			{ 13, 12, 1 },		// 96 bits per transform
-			{ 13, 15, 0 },		// 96 bits per transform
-			{ 14, 0, 14 },		// 96 bits per transform
-			{ 14, 1, 11 },		// 96 bits per transform
-			{ 14, 2, 10 },		// 96 bits per transform
-			{ 14, 3, 9 },		// 96 bits per transform
-			{ 14, 4, 8 },		// 96 bits per transform
-			{ 14, 5, 7 },		// 96 bits per transform
-			{ 14, 6, 6 },		// 96 bits per transform
-			{ 14, 7, 5 },		// 96 bits per transform
-			{ 14, 8, 4 },		// 96 bits per transform
-			{ 14, 9, 3 },		// 96 bits per transform
-			{ 14, 10, 2 },		// 96 bits per transform
-			{ 14, 11, 1 },		// 96 bits per transform
-			{ 14, 14, 0 },		// 96 bits per transform
-			{ 15, 0, 13 },		// 96 bits per transform
-			{ 15, 1, 10 },		// 96 bits per transform
-			{ 15, 2, 9 },		// 96 bits per transform
-			{ 15, 3, 8 },		// 96 bits per transform
-			{ 15, 4, 7 },		// 96 bits per transform
-			{ 15, 5, 6 },		// 96 bits per transform
-			{ 15, 6, 5 },		// 96 bits per transform
-			{ 15, 7, 4 },		// 96 bits per transform
-			{ 15, 8, 3 },		// 96 bits per transform
-			{ 15, 9, 2 },		// 96 bits per transform
-			{ 15, 10, 1 },		// 96 bits per transform
-			{ 15, 13, 0 },		// 96 bits per transform
-			{ 16, 0, 12 },		// 96 bits per transform
-			{ 16, 1, 9 },		// 96 bits per transform
-			{ 16, 2, 8 },		// 96 bits per transform
-			{ 16, 3, 7 },		// 96 bits per transform
-			{ 16, 4, 6 },		// 96 bits per transform
-			{ 16, 5, 5 },		// 96 bits per transform
-			{ 16, 6, 4 },		// 96 bits per transform
-			{ 16, 7, 3 },		// 96 bits per transform
-			{ 16, 8, 2 },		// 96 bits per transform
-			{ 16, 9, 1 },		// 96 bits per transform
-			{ 16, 12, 0 },		// 96 bits per transform
-			{ 17, 0, 11 },		// 96 bits per transform
-			{ 17, 1, 8 },		// 96 bits per transform
-			{ 17, 2, 7 },		// 96 bits per transform
-			{ 17, 3, 6 },		// 96 bits per transform
-			{ 17, 4, 5 },		// 96 bits per transform
-			{ 17, 5, 4 },		// 96 bits per transform
-			{ 17, 6, 3 },		// 96 bits per transform
-			{ 17, 7, 2 },		// 96 bits per transform
-			{ 17, 8, 1 },		// 96 bits per transform
-			{ 17, 11, 0 },		// 96 bits per transform
-			{ 18, 0, 0 },		// 96 bits per transform
-			{ 0, 12, 17 },		// 99 bits per transform
-			{ 0, 13, 16 },		// 99 bits per transform
-			{ 0, 14, 15 },		// 99 bits per transform
-			{ 0, 15, 14 },		// 99 bits per transform
-			{ 0, 16, 13 },		// 99 bits per transform
-			{ 0, 17, 12 },		// 99 bits per transform
-			{ 1, 9, 17 },		// 99 bits per transform
-			{ 1, 10, 16 },		// 99 bits per transform
-			{ 1, 11, 15 },		// 99 bits per transform
-			{ 1, 12, 14 },		// 99 bits per transform
-			{ 1, 13, 13 },		// 99 bits per transform
-			{ 1, 14, 12 },		// 99 bits per transform
-			{ 1, 15, 11 },		// 99 bits per transform
-			{ 1, 16, 10 },		// 99 bits per transform
-			{ 1, 17, 9 },		// 99 bits per transform
-			{ 2, 8, 17 },		// 99 bits per transform
-			{ 2, 9, 16 },		// 99 bits per transform
-			{ 2, 10, 15 },		// 99 bits per transform
-			{ 2, 11, 14 },		// 99 bits per transform
-			{ 2, 12, 13 },		// 99 bits per transform
-			{ 2, 13, 12 },		// 99 bits per transform
-			{ 2, 14, 11 },		// 99 bits per transform
-			{ 2, 15, 10 },		// 99 bits per transform
-			{ 2, 16, 9 },		// 99 bits per transform
-			{ 2, 17, 8 },		// 99 bits per transform
-			{ 3, 7, 17 },		// 99 bits per transform
-			{ 3, 8, 16 },		// 99 bits per transform
-			{ 3, 9, 15 },		// 99 bits per transform
-			{ 3, 10, 14 },		// 99 bits per transform
-			{ 3, 11, 13 },		// 99 bits per transform
-			{ 3, 12, 12 },		// 99 bits per transform
-			{ 3, 13, 11 },		// 99 bits per transform
-			{ 3, 14, 10 },		// 99 bits per transform
-			{ 3, 15, 9 },		// 99 bits per transform
-			{ 3, 16, 8 },		// 99 bits per transform
-			{ 3, 17, 7 },		// 99 bits per transform
-			{ 4, 6, 17 },		// 99 bits per transform
-			{ 4, 7, 16 },		// 99 bits per transform
-			{ 4, 8, 15 },		// 99 bits per transform
-			{ 4, 9, 14 },		// 99 bits per transform
-			{ 4, 10, 13 },		// 99 bits per transform
-			{ 4, 11, 12 },		// 99 bits per transform
-			{ 4, 12, 11 },		// 99 bits per transform
-			{ 4, 13, 10 },		// 99 bits per transform
-			{ 4, 14, 9 },		// 99 bits per transform
-			{ 4, 15, 8 },		// 99 bits per transform
-			{ 4, 16, 7 },		// 99 bits per transform
-			{ 4, 17, 6 },		// 99 bits per transform
-			{ 5, 5, 17 },		// 99 bits per transform
-			{ 5, 6, 16 },		// 99 bits per transform
-			{ 5, 7, 15 },		// 99 bits per transform
-			{ 5, 8, 14 },		// 99 bits per transform
-			{ 5, 9, 13 },		// 99 bits per transform
-			{ 5, 10, 12 },		// 99 bits per transform
-			{ 5, 11, 11 },		// 99 bits per transform
-			{ 5, 12, 10 },		// 99 bits per transform
-			{ 5, 13, 9 },		// 99 bits per transform
-			{ 5, 14, 8 },		// 99 bits per transform
-			{ 5, 15, 7 },		// 99 bits per transform
-			{ 5, 16, 6 },		// 99 bits per transform
-			{ 5, 17, 5 },		// 99 bits per transform
-			{ 6, 4, 17 },		// 99 bits per transform
-			{ 6, 5, 16 },		// 99 bits per transform
-			{ 6, 6, 15 },		// 99 bits per transform
-			{ 6, 7, 14 },		// 99 bits per transform
-			{ 6, 8, 13 },		// 99 bits per transform
-			{ 6, 9, 12 },		// 99 bits per transform
-			{ 6, 10, 11 },		// 99 bits per transform
-			{ 6, 11, 10 },		// 99 bits per transform
-			{ 6, 12, 9 },		// 99 bits per transform
-			{ 6, 13, 8 },		// 99 bits per transform
-			{ 6, 14, 7 },		// 99 bits per transform
-			{ 6, 15, 6 },		// 99 bits per transform
-			{ 6, 16, 5 },		// 99 bits per transform
-			{ 6, 17, 4 },		// 99 bits per transform
-			{ 7, 3, 17 },		// 99 bits per transform
-			{ 7, 4, 16 },		// 99 bits per transform
-			{ 7, 5, 15 },		// 99 bits per transform
-			{ 7, 6, 14 },		// 99 bits per transform
-			{ 7, 7, 13 },		// 99 bits per transform
-			{ 7, 8, 12 },		// 99 bits per transform
-			{ 7, 9, 11 },		// 99 bits per transform
-			{ 7, 10, 10 },		// 99 bits per transform
-			{ 7, 11, 9 },		// 99 bits per transform
-			{ 7, 12, 8 },		// 99 bits per transform
-			{ 7, 13, 7 },		// 99 bits per transform
-			{ 7, 14, 6 },		// 99 bits per transform
-			{ 7, 15, 5 },		// 99 bits per transform
-			{ 7, 16, 4 },		// 99 bits per transform
-			{ 7, 17, 3 },		// 99 bits per transform
-			{ 8, 2, 17 },		// 99 bits per transform
-			{ 8, 3, 16 },		// 99 bits per transform
-			{ 8, 4, 15 },		// 99 bits per transform
-			{ 8, 5, 14 },		// 99 bits per transform
-			{ 8, 6, 13 },		// 99 bits per transform
-			{ 8, 7, 12 },		// 99 bits per transform
-			{ 8, 8, 11 },		// 99 bits per transform
-			{ 8, 9, 10 },		// 99 bits per transform
-			{ 8, 10, 9 },		// 99 bits per transform
-			{ 8, 11, 8 },		// 99 bits per transform
-			{ 8, 12, 7 },		// 99 bits per transform
-			{ 8, 13, 6 },		// 99 bits per transform
-			{ 8, 14, 5 },		// 99 bits per transform
-			{ 8, 15, 4 },		// 99 bits per transform
-			{ 8, 16, 3 },		// 99 bits per transform
-			{ 8, 17, 2 },		// 99 bits per transform
-			{ 9, 1, 17 },		// 99 bits per transform
-			{ 9, 2, 16 },		// 99 bits per transform
-			{ 9, 3, 15 },		// 99 bits per transform
-			{ 9, 4, 14 },		// 99 bits per transform
-			{ 9, 5, 13 },		// 99 bits per transform
-			{ 9, 6, 12 },		// 99 bits per transform
-			{ 9, 7, 11 },		// 99 bits per transform
-			{ 9, 8, 10 },		// 99 bits per transform
-			{ 9, 9, 9 },		// 99 bits per transform
-			{ 9, 10, 8 },		// 99 bits per transform
-			{ 9, 11, 7 },		// 99 bits per transform
-			{ 9, 12, 6 },		// 99 bits per transform
-			{ 9, 13, 5 },		// 99 bits per transform
-			{ 9, 14, 4 },		// 99 bits per transform
-			{ 9, 15, 3 },		// 99 bits per transform
-			{ 9, 16, 2 },		// 99 bits per transform
-			{ 9, 17, 1 },		// 99 bits per transform
-			{ 10, 1, 16 },		// 99 bits per transform
-			{ 10, 2, 15 },		// 99 bits per transform
-			{ 10, 3, 14 },		// 99 bits per transform
-			{ 10, 4, 13 },		// 99 bits per transform
-			{ 10, 5, 12 },		// 99 bits per transform
-			{ 10, 6, 11 },		// 99 bits per transform
-			{ 10, 7, 10 },		// 99 bits per transform
-			{ 10, 8, 9 },		// 99 bits per transform
-			{ 10, 9, 8 },		// 99 bits per transform
-			{ 10, 10, 7 },		// 99 bits per transform
-			{ 10, 11, 6 },		// 99 bits per transform
-			{ 10, 12, 5 },		// 99 bits per transform
-			{ 10, 13, 4 },		// 99 bits per transform
-			{ 10, 14, 3 },		// 99 bits per transform
-			{ 10, 15, 2 },		// 99 bits per transform
-			{ 10, 16, 1 },		// 99 bits per transform
-			{ 11, 1, 15 },		// 99 bits per transform
-			{ 11, 2, 14 },		// 99 bits per transform
-			{ 11, 3, 13 },		// 99 bits per transform
-			{ 11, 4, 12 },		// 99 bits per transform
-			{ 11, 5, 11 },		// 99 bits per transform
-			{ 11, 6, 10 },		// 99 bits per transform
-			{ 11, 7, 9 },		// 99 bits per transform
-			{ 11, 8, 8 },		// 99 bits per transform
-			{ 11, 9, 7 },		// 99 bits per transform
-			{ 11, 10, 6 },		// 99 bits per transform
-			{ 11, 11, 5 },		// 99 bits per transform
-			{ 11, 12, 4 },		// 99 bits per transform
-			{ 11, 13, 3 },		// 99 bits per transform
-			{ 11, 14, 2 },		// 99 bits per transform
-			{ 11, 15, 1 },		// 99 bits per transform
-			{ 12, 0, 17 },		// 99 bits per transform
-			{ 12, 1, 14 },		// 99 bits per transform
-			{ 12, 2, 13 },		// 99 bits per transform
-			{ 12, 3, 12 },		// 99 bits per transform
-			{ 12, 4, 11 },		// 99 bits per transform
-			{ 12, 5, 10 },		// 99 bits per transform
-			{ 12, 6, 9 },		// 99 bits per transform
-			{ 12, 7, 8 },		// 99 bits per transform
-			{ 12, 8, 7 },		// 99 bits per transform
-			{ 12, 9, 6 },		// 99 bits per transform
-			{ 12, 10, 5 },		// 99 bits per transform
-			{ 12, 11, 4 },		// 99 bits per transform
-			{ 12, 12, 3 },		// 99 bits per transform
-			{ 12, 13, 2 },		// 99 bits per transform
-			{ 12, 14, 1 },		// 99 bits per transform
-			{ 12, 17, 0 },		// 99 bits per transform
-			{ 13, 0, 16 },		// 99 bits per transform
-			{ 13, 1, 13 },		// 99 bits per transform
-			{ 13, 2, 12 },		// 99 bits per transform
-			{ 13, 3, 11 },		// 99 bits per transform
-			{ 13, 4, 10 },		// 99 bits per transform
-			{ 13, 5, 9 },		// 99 bits per transform
-			{ 13, 6, 8 },		// 99 bits per transform
-			{ 13, 7, 7 },		// 99 bits per transform
-			{ 13, 8, 6 },		// 99 bits per transform
-			{ 13, 9, 5 },		// 99 bits per transform
-			{ 13, 10, 4 },		// 99 bits per transform
-			{ 13, 11, 3 },		// 99 bits per transform
-			{ 13, 12, 2 },		// 99 bits per transform
-			{ 13, 13, 1 },		// 99 bits per transform
-			{ 13, 16, 0 },		// 99 bits per transform
-			{ 14, 0, 15 },		// 99 bits per transform
-			{ 14, 1, 12 },		// 99 bits per transform
-			{ 14, 2, 11 },		// 99 bits per transform
-			{ 14, 3, 10 },		// 99 bits per transform
-			{ 14, 4, 9 },		// 99 bits per transform
-			{ 14, 5, 8 },		// 99 bits per transform
-			{ 14, 6, 7 },		// 99 bits per transform
-			{ 14, 7, 6 },		// 99 bits per transform
-			{ 14, 8, 5 },		// 99 bits per transform
-			{ 14, 9, 4 },		// 99 bits per transform
-			{ 14, 10, 3 },		// 99 bits per transform
-			{ 14, 11, 2 },		// 99 bits per transform
-			{ 14, 12, 1 },		// 99 bits per transform
-			{ 14, 15, 0 },		// 99 bits per transform
-			{ 15, 0, 14 },		// 99 bits per transform
-			{ 15, 1, 11 },		// 99 bits per transform
-			{ 15, 2, 10 },		// 99 bits per transform
-			{ 15, 3, 9 },		// 99 bits per transform
-			{ 15, 4, 8 },		// 99 bits per transform
-			{ 15, 5, 7 },		// 99 bits per transform
-			{ 15, 6, 6 },		// 99 bits per transform
-			{ 15, 7, 5 },		// 99 bits per transform
-			{ 15, 8, 4 },		// 99 bits per transform
-			{ 15, 9, 3 },		// 99 bits per transform
-			{ 15, 10, 2 },		// 99 bits per transform
-			{ 15, 11, 1 },		// 99 bits per transform
-			{ 15, 14, 0 },		// 99 bits per transform
-			{ 16, 0, 13 },		// 99 bits per transform
-			{ 16, 1, 10 },		// 99 bits per transform
-			{ 16, 2, 9 },		// 99 bits per transform
-			{ 16, 3, 8 },		// 99 bits per transform
-			{ 16, 4, 7 },		// 99 bits per transform
-			{ 16, 5, 6 },		// 99 bits per transform
-			{ 16, 6, 5 },		// 99 bits per transform
-			{ 16, 7, 4 },		// 99 bits per transform
-			{ 16, 8, 3 },		// 99 bits per transform
-			{ 16, 9, 2 },		// 99 bits per transform
-			{ 16, 10, 1 },		// 99 bits per transform
-			{ 16, 13, 0 },		// 99 bits per transform
-			{ 17, 0, 12 },		// 99 bits per transform
-			{ 17, 1, 9 },		// 99 bits per transform
-			{ 17, 2, 8 },		// 99 bits per transform
-			{ 17, 3, 7 },		// 99 bits per transform
-			{ 17, 4, 6 },		// 99 bits per transform
-			{ 17, 5, 5 },		// 99 bits per transform
-			{ 17, 6, 4 },		// 99 bits per transform
-			{ 17, 7, 3 },		// 99 bits per transform
-			{ 17, 8, 2 },		// 99 bits per transform
-			{ 17, 9, 1 },		// 99 bits per transform
-			{ 17, 12, 0 },		// 99 bits per transform
-			{ 0, 13, 17 },		// 102 bits per transform
-			{ 0, 14, 16 },		// 102 bits per transform
-			{ 0, 15, 15 },		// 102 bits per transform
-			{ 0, 16, 14 },		// 102 bits per transform
-			{ 0, 17, 13 },		// 102 bits per transform
-			{ 1, 10, 17 },		// 102 bits per transform
-			{ 1, 11, 16 },		// 102 bits per transform
-			{ 1, 12, 15 },		// 102 bits per transform
-			{ 1, 13, 14 },		// 102 bits per transform
-			{ 1, 14, 13 },		// 102 bits per transform
-			{ 1, 15, 12 },		// 102 bits per transform
-			{ 1, 16, 11 },		// 102 bits per transform
-			{ 1, 17, 10 },		// 102 bits per transform
-			{ 2, 9, 17 },		// 102 bits per transform
-			{ 2, 10, 16 },		// 102 bits per transform
-			{ 2, 11, 15 },		// 102 bits per transform
-			{ 2, 12, 14 },		// 102 bits per transform
-			{ 2, 13, 13 },		// 102 bits per transform
-			{ 2, 14, 12 },		// 102 bits per transform
-			{ 2, 15, 11 },		// 102 bits per transform
-			{ 2, 16, 10 },		// 102 bits per transform
-			{ 2, 17, 9 },		// 102 bits per transform
-			{ 3, 8, 17 },		// 102 bits per transform
-			{ 3, 9, 16 },		// 102 bits per transform
-			{ 3, 10, 15 },		// 102 bits per transform
-			{ 3, 11, 14 },		// 102 bits per transform
-			{ 3, 12, 13 },		// 102 bits per transform
-			{ 3, 13, 12 },		// 102 bits per transform
-			{ 3, 14, 11 },		// 102 bits per transform
-			{ 3, 15, 10 },		// 102 bits per transform
-			{ 3, 16, 9 },		// 102 bits per transform
-			{ 3, 17, 8 },		// 102 bits per transform
-			{ 4, 7, 17 },		// 102 bits per transform
-			{ 4, 8, 16 },		// 102 bits per transform
-			{ 4, 9, 15 },		// 102 bits per transform
-			{ 4, 10, 14 },		// 102 bits per transform
-			{ 4, 11, 13 },		// 102 bits per transform
-			{ 4, 12, 12 },		// 102 bits per transform
-			{ 4, 13, 11 },		// 102 bits per transform
-			{ 4, 14, 10 },		// 102 bits per transform
-			{ 4, 15, 9 },		// 102 bits per transform
-			{ 4, 16, 8 },		// 102 bits per transform
-			{ 4, 17, 7 },		// 102 bits per transform
-			{ 5, 6, 17 },		// 102 bits per transform
-			{ 5, 7, 16 },		// 102 bits per transform
-			{ 5, 8, 15 },		// 102 bits per transform
-			{ 5, 9, 14 },		// 102 bits per transform
-			{ 5, 10, 13 },		// 102 bits per transform
-			{ 5, 11, 12 },		// 102 bits per transform
-			{ 5, 12, 11 },		// 102 bits per transform
-			{ 5, 13, 10 },		// 102 bits per transform
-			{ 5, 14, 9 },		// 102 bits per transform
-			{ 5, 15, 8 },		// 102 bits per transform
-			{ 5, 16, 7 },		// 102 bits per transform
-			{ 5, 17, 6 },		// 102 bits per transform
-			{ 6, 5, 17 },		// 102 bits per transform
-			{ 6, 6, 16 },		// 102 bits per transform
-			{ 6, 7, 15 },		// 102 bits per transform
-			{ 6, 8, 14 },		// 102 bits per transform
-			{ 6, 9, 13 },		// 102 bits per transform
-			{ 6, 10, 12 },		// 102 bits per transform
-			{ 6, 11, 11 },		// 102 bits per transform
-			{ 6, 12, 10 },		// 102 bits per transform
-			{ 6, 13, 9 },		// 102 bits per transform
-			{ 6, 14, 8 },		// 102 bits per transform
-			{ 6, 15, 7 },		// 102 bits per transform
-			{ 6, 16, 6 },		// 102 bits per transform
-			{ 6, 17, 5 },		// 102 bits per transform
-			{ 7, 4, 17 },		// 102 bits per transform
-			{ 7, 5, 16 },		// 102 bits per transform
-			{ 7, 6, 15 },		// 102 bits per transform
-			{ 7, 7, 14 },		// 102 bits per transform
-			{ 7, 8, 13 },		// 102 bits per transform
-			{ 7, 9, 12 },		// 102 bits per transform
-			{ 7, 10, 11 },		// 102 bits per transform
-			{ 7, 11, 10 },		// 102 bits per transform
-			{ 7, 12, 9 },		// 102 bits per transform
-			{ 7, 13, 8 },		// 102 bits per transform
-			{ 7, 14, 7 },		// 102 bits per transform
-			{ 7, 15, 6 },		// 102 bits per transform
-			{ 7, 16, 5 },		// 102 bits per transform
-			{ 7, 17, 4 },		// 102 bits per transform
-			{ 8, 3, 17 },		// 102 bits per transform
-			{ 8, 4, 16 },		// 102 bits per transform
-			{ 8, 5, 15 },		// 102 bits per transform
-			{ 8, 6, 14 },		// 102 bits per transform
-			{ 8, 7, 13 },		// 102 bits per transform
-			{ 8, 8, 12 },		// 102 bits per transform
-			{ 8, 9, 11 },		// 102 bits per transform
-			{ 8, 10, 10 },		// 102 bits per transform
-			{ 8, 11, 9 },		// 102 bits per transform
-			{ 8, 12, 8 },		// 102 bits per transform
-			{ 8, 13, 7 },		// 102 bits per transform
-			{ 8, 14, 6 },		// 102 bits per transform
-			{ 8, 15, 5 },		// 102 bits per transform
-			{ 8, 16, 4 },		// 102 bits per transform
-			{ 8, 17, 3 },		// 102 bits per transform
-			{ 9, 2, 17 },		// 102 bits per transform
-			{ 9, 3, 16 },		// 102 bits per transform
-			{ 9, 4, 15 },		// 102 bits per transform
-			{ 9, 5, 14 },		// 102 bits per transform
-			{ 9, 6, 13 },		// 102 bits per transform
-			{ 9, 7, 12 },		// 102 bits per transform
-			{ 9, 8, 11 },		// 102 bits per transform
-			{ 9, 9, 10 },		// 102 bits per transform
-			{ 9, 10, 9 },		// 102 bits per transform
-			{ 9, 11, 8 },		// 102 bits per transform
-			{ 9, 12, 7 },		// 102 bits per transform
-			{ 9, 13, 6 },		// 102 bits per transform
-			{ 9, 14, 5 },		// 102 bits per transform
-			{ 9, 15, 4 },		// 102 bits per transform
-			{ 9, 16, 3 },		// 102 bits per transform
-			{ 9, 17, 2 },		// 102 bits per transform
-			{ 10, 1, 17 },		// 102 bits per transform
-			{ 10, 2, 16 },		// 102 bits per transform
-			{ 10, 3, 15 },		// 102 bits per transform
-			{ 10, 4, 14 },		// 102 bits per transform
-			{ 10, 5, 13 },		// 102 bits per transform
-			{ 10, 6, 12 },		// 102 bits per transform
-			{ 10, 7, 11 },		// 102 bits per transform
-			{ 10, 8, 10 },		// 102 bits per transform
-			{ 10, 9, 9 },		// 102 bits per transform
-			{ 10, 10, 8 },		// 102 bits per transform
-			{ 10, 11, 7 },		// 102 bits per transform
-			{ 10, 12, 6 },		// 102 bits per transform
-			{ 10, 13, 5 },		// 102 bits per transform
-			{ 10, 14, 4 },		// 102 bits per transform
-			{ 10, 15, 3 },		// 102 bits per transform
-			{ 10, 16, 2 },		// 102 bits per transform
-			{ 10, 17, 1 },		// 102 bits per transform
-			{ 11, 1, 16 },		// 102 bits per transform
-			{ 11, 2, 15 },		// 102 bits per transform
-			{ 11, 3, 14 },		// 102 bits per transform
-			{ 11, 4, 13 },		// 102 bits per transform
-			{ 11, 5, 12 },		// 102 bits per transform
-			{ 11, 6, 11 },		// 102 bits per transform
-			{ 11, 7, 10 },		// 102 bits per transform
-			{ 11, 8, 9 },		// 102 bits per transform
-			{ 11, 9, 8 },		// 102 bits per transform
-			{ 11, 10, 7 },		// 102 bits per transform
-			{ 11, 11, 6 },		// 102 bits per transform
-			{ 11, 12, 5 },		// 102 bits per transform
-			{ 11, 13, 4 },		// 102 bits per transform
-			{ 11, 14, 3 },		// 102 bits per transform
-			{ 11, 15, 2 },		// 102 bits per transform
-			{ 11, 16, 1 },		// 102 bits per transform
-			{ 12, 1, 15 },		// 102 bits per transform
-			{ 12, 2, 14 },		// 102 bits per transform
-			{ 12, 3, 13 },		// 102 bits per transform
-			{ 12, 4, 12 },		// 102 bits per transform
-			{ 12, 5, 11 },		// 102 bits per transform
-			{ 12, 6, 10 },		// 102 bits per transform
-			{ 12, 7, 9 },		// 102 bits per transform
-			{ 12, 8, 8 },		// 102 bits per transform
-			{ 12, 9, 7 },		// 102 bits per transform
-			{ 12, 10, 6 },		// 102 bits per transform
-			{ 12, 11, 5 },		// 102 bits per transform
-			{ 12, 12, 4 },		// 102 bits per transform
-			{ 12, 13, 3 },		// 102 bits per transform
-			{ 12, 14, 2 },		// 102 bits per transform
-			{ 12, 15, 1 },		// 102 bits per transform
-			{ 13, 0, 17 },		// 102 bits per transform
-			{ 13, 1, 14 },		// 102 bits per transform
-			{ 13, 2, 13 },		// 102 bits per transform
-			{ 13, 3, 12 },		// 102 bits per transform
-			{ 13, 4, 11 },		// 102 bits per transform
-			{ 13, 5, 10 },		// 102 bits per transform
-			{ 13, 6, 9 },		// 102 bits per transform
-			{ 13, 7, 8 },		// 102 bits per transform
-			{ 13, 8, 7 },		// 102 bits per transform
-			{ 13, 9, 6 },		// 102 bits per transform
-			{ 13, 10, 5 },		// 102 bits per transform
-			{ 13, 11, 4 },		// 102 bits per transform
-			{ 13, 12, 3 },		// 102 bits per transform
-			{ 13, 13, 2 },		// 102 bits per transform
-			{ 13, 14, 1 },		// 102 bits per transform
-			{ 13, 17, 0 },		// 102 bits per transform
-			{ 14, 0, 16 },		// 102 bits per transform
-			{ 14, 1, 13 },		// 102 bits per transform
-			{ 14, 2, 12 },		// 102 bits per transform
-			{ 14, 3, 11 },		// 102 bits per transform
-			{ 14, 4, 10 },		// 102 bits per transform
-			{ 14, 5, 9 },		// 102 bits per transform
-			{ 14, 6, 8 },		// 102 bits per transform
-			{ 14, 7, 7 },		// 102 bits per transform
-			{ 14, 8, 6 },		// 102 bits per transform
-			{ 14, 9, 5 },		// 102 bits per transform
-			{ 14, 10, 4 },		// 102 bits per transform
-			{ 14, 11, 3 },		// 102 bits per transform
-			{ 14, 12, 2 },		// 102 bits per transform
-			{ 14, 13, 1 },		// 102 bits per transform
-			{ 14, 16, 0 },		// 102 bits per transform
-			{ 15, 0, 15 },		// 102 bits per transform
-			{ 15, 1, 12 },		// 102 bits per transform
-			{ 15, 2, 11 },		// 102 bits per transform
-			{ 15, 3, 10 },		// 102 bits per transform
-			{ 15, 4, 9 },		// 102 bits per transform
-			{ 15, 5, 8 },		// 102 bits per transform
-			{ 15, 6, 7 },		// 102 bits per transform
-			{ 15, 7, 6 },		// 102 bits per transform
-			{ 15, 8, 5 },		// 102 bits per transform
-			{ 15, 9, 4 },		// 102 bits per transform
-			{ 15, 10, 3 },		// 102 bits per transform
-			{ 15, 11, 2 },		// 102 bits per transform
-			{ 15, 12, 1 },		// 102 bits per transform
-			{ 15, 15, 0 },		// 102 bits per transform
-			{ 16, 0, 14 },		// 102 bits per transform
-			{ 16, 1, 11 },		// 102 bits per transform
-			{ 16, 2, 10 },		// 102 bits per transform
-			{ 16, 3, 9 },		// 102 bits per transform
-			{ 16, 4, 8 },		// 102 bits per transform
-			{ 16, 5, 7 },		// 102 bits per transform
-			{ 16, 6, 6 },		// 102 bits per transform
-			{ 16, 7, 5 },		// 102 bits per transform
-			{ 16, 8, 4 },		// 102 bits per transform
-			{ 16, 9, 3 },		// 102 bits per transform
-			{ 16, 10, 2 },		// 102 bits per transform
-			{ 16, 11, 1 },		// 102 bits per transform
-			{ 16, 14, 0 },		// 102 bits per transform
-			{ 17, 0, 13 },		// 102 bits per transform
-			{ 17, 1, 10 },		// 102 bits per transform
-			{ 17, 2, 9 },		// 102 bits per transform
-			{ 17, 3, 8 },		// 102 bits per transform
-			{ 17, 4, 7 },		// 102 bits per transform
-			{ 17, 5, 6 },		// 102 bits per transform
-			{ 17, 6, 5 },		// 102 bits per transform
-			{ 17, 7, 4 },		// 102 bits per transform
-			{ 17, 8, 3 },		// 102 bits per transform
-			{ 17, 9, 2 },		// 102 bits per transform
-			{ 17, 10, 1 },		// 102 bits per transform
-			{ 17, 13, 0 },		// 102 bits per transform
-			{ 0, 1, 18 },		// 105 bits per transform
-			{ 0, 14, 17 },		// 105 bits per transform
-			{ 0, 15, 16 },		// 105 bits per transform
-			{ 0, 16, 15 },		// 105 bits per transform
-			{ 0, 17, 14 },		// 105 bits per transform
-			{ 0, 18, 1 },		// 105 bits per transform
-			{ 1, 0, 18 },		// 105 bits per transform
-			{ 1, 11, 17 },		// 105 bits per transform
-			{ 1, 12, 16 },		// 105 bits per transform
-			{ 1, 13, 15 },		// 105 bits per transform
-			{ 1, 14, 14 },		// 105 bits per transform
-			{ 1, 15, 13 },		// 105 bits per transform
-			{ 1, 16, 12 },		// 105 bits per transform
-			{ 1, 17, 11 },		// 105 bits per transform
-			{ 1, 18, 0 },		// 105 bits per transform
-			{ 2, 10, 17 },		// 105 bits per transform
-			{ 2, 11, 16 },		// 105 bits per transform
-			{ 2, 12, 15 },		// 105 bits per transform
-			{ 2, 13, 14 },		// 105 bits per transform
-			{ 2, 14, 13 },		// 105 bits per transform
-			{ 2, 15, 12 },		// 105 bits per transform
-			{ 2, 16, 11 },		// 105 bits per transform
-			{ 2, 17, 10 },		// 105 bits per transform
-			{ 3, 9, 17 },		// 105 bits per transform
-			{ 3, 10, 16 },		// 105 bits per transform
-			{ 3, 11, 15 },		// 105 bits per transform
-			{ 3, 12, 14 },		// 105 bits per transform
-			{ 3, 13, 13 },		// 105 bits per transform
-			{ 3, 14, 12 },		// 105 bits per transform
-			{ 3, 15, 11 },		// 105 bits per transform
-			{ 3, 16, 10 },		// 105 bits per transform
-			{ 3, 17, 9 },		// 105 bits per transform
-			{ 4, 8, 17 },		// 105 bits per transform
-			{ 4, 9, 16 },		// 105 bits per transform
-			{ 4, 10, 15 },		// 105 bits per transform
-			{ 4, 11, 14 },		// 105 bits per transform
-			{ 4, 12, 13 },		// 105 bits per transform
-			{ 4, 13, 12 },		// 105 bits per transform
-			{ 4, 14, 11 },		// 105 bits per transform
-			{ 4, 15, 10 },		// 105 bits per transform
-			{ 4, 16, 9 },		// 105 bits per transform
-			{ 4, 17, 8 },		// 105 bits per transform
-			{ 5, 7, 17 },		// 105 bits per transform
-			{ 5, 8, 16 },		// 105 bits per transform
-			{ 5, 9, 15 },		// 105 bits per transform
-			{ 5, 10, 14 },		// 105 bits per transform
-			{ 5, 11, 13 },		// 105 bits per transform
-			{ 5, 12, 12 },		// 105 bits per transform
-			{ 5, 13, 11 },		// 105 bits per transform
-			{ 5, 14, 10 },		// 105 bits per transform
-			{ 5, 15, 9 },		// 105 bits per transform
-			{ 5, 16, 8 },		// 105 bits per transform
-			{ 5, 17, 7 },		// 105 bits per transform
-			{ 6, 6, 17 },		// 105 bits per transform
-			{ 6, 7, 16 },		// 105 bits per transform
-			{ 6, 8, 15 },		// 105 bits per transform
-			{ 6, 9, 14 },		// 105 bits per transform
-			{ 6, 10, 13 },		// 105 bits per transform
-			{ 6, 11, 12 },		// 105 bits per transform
-			{ 6, 12, 11 },		// 105 bits per transform
-			{ 6, 13, 10 },		// 105 bits per transform
-			{ 6, 14, 9 },		// 105 bits per transform
-			{ 6, 15, 8 },		// 105 bits per transform
-			{ 6, 16, 7 },		// 105 bits per transform
-			{ 6, 17, 6 },		// 105 bits per transform
-			{ 7, 5, 17 },		// 105 bits per transform
-			{ 7, 6, 16 },		// 105 bits per transform
-			{ 7, 7, 15 },		// 105 bits per transform
-			{ 7, 8, 14 },		// 105 bits per transform
-			{ 7, 9, 13 },		// 105 bits per transform
-			{ 7, 10, 12 },		// 105 bits per transform
-			{ 7, 11, 11 },		// 105 bits per transform
-			{ 7, 12, 10 },		// 105 bits per transform
-			{ 7, 13, 9 },		// 105 bits per transform
-			{ 7, 14, 8 },		// 105 bits per transform
-			{ 7, 15, 7 },		// 105 bits per transform
-			{ 7, 16, 6 },		// 105 bits per transform
-			{ 7, 17, 5 },		// 105 bits per transform
-			{ 8, 4, 17 },		// 105 bits per transform
-			{ 8, 5, 16 },		// 105 bits per transform
-			{ 8, 6, 15 },		// 105 bits per transform
-			{ 8, 7, 14 },		// 105 bits per transform
-			{ 8, 8, 13 },		// 105 bits per transform
-			{ 8, 9, 12 },		// 105 bits per transform
-			{ 8, 10, 11 },		// 105 bits per transform
-			{ 8, 11, 10 },		// 105 bits per transform
-			{ 8, 12, 9 },		// 105 bits per transform
-			{ 8, 13, 8 },		// 105 bits per transform
-			{ 8, 14, 7 },		// 105 bits per transform
-			{ 8, 15, 6 },		// 105 bits per transform
-			{ 8, 16, 5 },		// 105 bits per transform
-			{ 8, 17, 4 },		// 105 bits per transform
-			{ 9, 3, 17 },		// 105 bits per transform
-			{ 9, 4, 16 },		// 105 bits per transform
-			{ 9, 5, 15 },		// 105 bits per transform
-			{ 9, 6, 14 },		// 105 bits per transform
-			{ 9, 7, 13 },		// 105 bits per transform
-			{ 9, 8, 12 },		// 105 bits per transform
-			{ 9, 9, 11 },		// 105 bits per transform
-			{ 9, 10, 10 },		// 105 bits per transform
-			{ 9, 11, 9 },		// 105 bits per transform
-			{ 9, 12, 8 },		// 105 bits per transform
-			{ 9, 13, 7 },		// 105 bits per transform
-			{ 9, 14, 6 },		// 105 bits per transform
-			{ 9, 15, 5 },		// 105 bits per transform
-			{ 9, 16, 4 },		// 105 bits per transform
-			{ 9, 17, 3 },		// 105 bits per transform
-			{ 10, 2, 17 },		// 105 bits per transform
-			{ 10, 3, 16 },		// 105 bits per transform
-			{ 10, 4, 15 },		// 105 bits per transform
-			{ 10, 5, 14 },		// 105 bits per transform
-			{ 10, 6, 13 },		// 105 bits per transform
-			{ 10, 7, 12 },		// 105 bits per transform
-			{ 10, 8, 11 },		// 105 bits per transform
-			{ 10, 9, 10 },		// 105 bits per transform
-			{ 10, 10, 9 },		// 105 bits per transform
-			{ 10, 11, 8 },		// 105 bits per transform
-			{ 10, 12, 7 },		// 105 bits per transform
-			{ 10, 13, 6 },		// 105 bits per transform
-			{ 10, 14, 5 },		// 105 bits per transform
-			{ 10, 15, 4 },		// 105 bits per transform
-			{ 10, 16, 3 },		// 105 bits per transform
-			{ 10, 17, 2 },		// 105 bits per transform
-			{ 11, 1, 17 },		// 105 bits per transform
-			{ 11, 2, 16 },		// 105 bits per transform
-			{ 11, 3, 15 },		// 105 bits per transform
-			{ 11, 4, 14 },		// 105 bits per transform
-			{ 11, 5, 13 },		// 105 bits per transform
-			{ 11, 6, 12 },		// 105 bits per transform
-			{ 11, 7, 11 },		// 105 bits per transform
-			{ 11, 8, 10 },		// 105 bits per transform
-			{ 11, 9, 9 },		// 105 bits per transform
-			{ 11, 10, 8 },		// 105 bits per transform
-			{ 11, 11, 7 },		// 105 bits per transform
-			{ 11, 12, 6 },		// 105 bits per transform
-			{ 11, 13, 5 },		// 105 bits per transform
-			{ 11, 14, 4 },		// 105 bits per transform
-			{ 11, 15, 3 },		// 105 bits per transform
-			{ 11, 16, 2 },		// 105 bits per transform
-			{ 11, 17, 1 },		// 105 bits per transform
-			{ 12, 1, 16 },		// 105 bits per transform
-			{ 12, 2, 15 },		// 105 bits per transform
-			{ 12, 3, 14 },		// 105 bits per transform
-			{ 12, 4, 13 },		// 105 bits per transform
-			{ 12, 5, 12 },		// 105 bits per transform
-			{ 12, 6, 11 },		// 105 bits per transform
-			{ 12, 7, 10 },		// 105 bits per transform
-			{ 12, 8, 9 },		// 105 bits per transform
-			{ 12, 9, 8 },		// 105 bits per transform
-			{ 12, 10, 7 },		// 105 bits per transform
-			{ 12, 11, 6 },		// 105 bits per transform
-			{ 12, 12, 5 },		// 105 bits per transform
-			{ 12, 13, 4 },		// 105 bits per transform
-			{ 12, 14, 3 },		// 105 bits per transform
-			{ 12, 15, 2 },		// 105 bits per transform
-			{ 12, 16, 1 },		// 105 bits per transform
-			{ 13, 1, 15 },		// 105 bits per transform
-			{ 13, 2, 14 },		// 105 bits per transform
-			{ 13, 3, 13 },		// 105 bits per transform
-			{ 13, 4, 12 },		// 105 bits per transform
-			{ 13, 5, 11 },		// 105 bits per transform
-			{ 13, 6, 10 },		// 105 bits per transform
-			{ 13, 7, 9 },		// 105 bits per transform
-			{ 13, 8, 8 },		// 105 bits per transform
-			{ 13, 9, 7 },		// 105 bits per transform
-			{ 13, 10, 6 },		// 105 bits per transform
-			{ 13, 11, 5 },		// 105 bits per transform
-			{ 13, 12, 4 },		// 105 bits per transform
-			{ 13, 13, 3 },		// 105 bits per transform
-			{ 13, 14, 2 },		// 105 bits per transform
-			{ 13, 15, 1 },		// 105 bits per transform
-			{ 14, 0, 17 },		// 105 bits per transform
-			{ 14, 1, 14 },		// 105 bits per transform
-			{ 14, 2, 13 },		// 105 bits per transform
-			{ 14, 3, 12 },		// 105 bits per transform
-			{ 14, 4, 11 },		// 105 bits per transform
-			{ 14, 5, 10 },		// 105 bits per transform
-			{ 14, 6, 9 },		// 105 bits per transform
-			{ 14, 7, 8 },		// 105 bits per transform
-			{ 14, 8, 7 },		// 105 bits per transform
-			{ 14, 9, 6 },		// 105 bits per transform
-			{ 14, 10, 5 },		// 105 bits per transform
-			{ 14, 11, 4 },		// 105 bits per transform
-			{ 14, 12, 3 },		// 105 bits per transform
-			{ 14, 13, 2 },		// 105 bits per transform
-			{ 14, 14, 1 },		// 105 bits per transform
-			{ 14, 17, 0 },		// 105 bits per transform
-			{ 15, 0, 16 },		// 105 bits per transform
-			{ 15, 1, 13 },		// 105 bits per transform
-			{ 15, 2, 12 },		// 105 bits per transform
-			{ 15, 3, 11 },		// 105 bits per transform
-			{ 15, 4, 10 },		// 105 bits per transform
-			{ 15, 5, 9 },		// 105 bits per transform
-			{ 15, 6, 8 },		// 105 bits per transform
-			{ 15, 7, 7 },		// 105 bits per transform
-			{ 15, 8, 6 },		// 105 bits per transform
-			{ 15, 9, 5 },		// 105 bits per transform
-			{ 15, 10, 4 },		// 105 bits per transform
-			{ 15, 11, 3 },		// 105 bits per transform
-			{ 15, 12, 2 },		// 105 bits per transform
-			{ 15, 13, 1 },		// 105 bits per transform
-			{ 15, 16, 0 },		// 105 bits per transform
-			{ 16, 0, 15 },		// 105 bits per transform
-			{ 16, 1, 12 },		// 105 bits per transform
-			{ 16, 2, 11 },		// 105 bits per transform
-			{ 16, 3, 10 },		// 105 bits per transform
-			{ 16, 4, 9 },		// 105 bits per transform
-			{ 16, 5, 8 },		// 105 bits per transform
-			{ 16, 6, 7 },		// 105 bits per transform
-			{ 16, 7, 6 },		// 105 bits per transform
-			{ 16, 8, 5 },		// 105 bits per transform
-			{ 16, 9, 4 },		// 105 bits per transform
-			{ 16, 10, 3 },		// 105 bits per transform
-			{ 16, 11, 2 },		// 105 bits per transform
-			{ 16, 12, 1 },		// 105 bits per transform
-			{ 16, 15, 0 },		// 105 bits per transform
-			{ 17, 0, 14 },		// 105 bits per transform
-			{ 17, 1, 11 },		// 105 bits per transform
-			{ 17, 2, 10 },		// 105 bits per transform
-			{ 17, 3, 9 },		// 105 bits per transform
-			{ 17, 4, 8 },		// 105 bits per transform
-			{ 17, 5, 7 },		// 105 bits per transform
-			{ 17, 6, 6 },		// 105 bits per transform
-			{ 17, 7, 5 },		// 105 bits per transform
-			{ 17, 8, 4 },		// 105 bits per transform
-			{ 17, 9, 3 },		// 105 bits per transform
-			{ 17, 10, 2 },		// 105 bits per transform
-			{ 17, 11, 1 },		// 105 bits per transform
-			{ 17, 14, 0 },		// 105 bits per transform
-			{ 18, 0, 1 },		// 105 bits per transform
-			{ 18, 1, 0 },		// 105 bits per transform
-			{ 0, 2, 18 },		// 108 bits per transform
-			{ 0, 15, 17 },		// 108 bits per transform
-			{ 0, 16, 16 },		// 108 bits per transform
-			{ 0, 17, 15 },		// 108 bits per transform
-			{ 0, 18, 2 },		// 108 bits per transform
-			{ 1, 12, 17 },		// 108 bits per transform
-			{ 1, 13, 16 },		// 108 bits per transform
-			{ 1, 14, 15 },		// 108 bits per transform
-			{ 1, 15, 14 },		// 108 bits per transform
-			{ 1, 16, 13 },		// 108 bits per transform
-			{ 1, 17, 12 },		// 108 bits per transform
-			{ 2, 0, 18 },		// 108 bits per transform
-			{ 2, 11, 17 },		// 108 bits per transform
-			{ 2, 12, 16 },		// 108 bits per transform
-			{ 2, 13, 15 },		// 108 bits per transform
-			{ 2, 14, 14 },		// 108 bits per transform
-			{ 2, 15, 13 },		// 108 bits per transform
-			{ 2, 16, 12 },		// 108 bits per transform
-			{ 2, 17, 11 },		// 108 bits per transform
-			{ 2, 18, 0 },		// 108 bits per transform
-			{ 3, 10, 17 },		// 108 bits per transform
-			{ 3, 11, 16 },		// 108 bits per transform
-			{ 3, 12, 15 },		// 108 bits per transform
-			{ 3, 13, 14 },		// 108 bits per transform
-			{ 3, 14, 13 },		// 108 bits per transform
-			{ 3, 15, 12 },		// 108 bits per transform
-			{ 3, 16, 11 },		// 108 bits per transform
-			{ 3, 17, 10 },		// 108 bits per transform
-			{ 4, 9, 17 },		// 108 bits per transform
-			{ 4, 10, 16 },		// 108 bits per transform
-			{ 4, 11, 15 },		// 108 bits per transform
-			{ 4, 12, 14 },		// 108 bits per transform
-			{ 4, 13, 13 },		// 108 bits per transform
-			{ 4, 14, 12 },		// 108 bits per transform
-			{ 4, 15, 11 },		// 108 bits per transform
-			{ 4, 16, 10 },		// 108 bits per transform
-			{ 4, 17, 9 },		// 108 bits per transform
-			{ 5, 8, 17 },		// 108 bits per transform
-			{ 5, 9, 16 },		// 108 bits per transform
-			{ 5, 10, 15 },		// 108 bits per transform
-			{ 5, 11, 14 },		// 108 bits per transform
-			{ 5, 12, 13 },		// 108 bits per transform
-			{ 5, 13, 12 },		// 108 bits per transform
-			{ 5, 14, 11 },		// 108 bits per transform
-			{ 5, 15, 10 },		// 108 bits per transform
-			{ 5, 16, 9 },		// 108 bits per transform
-			{ 5, 17, 8 },		// 108 bits per transform
-			{ 6, 7, 17 },		// 108 bits per transform
-			{ 6, 8, 16 },		// 108 bits per transform
-			{ 6, 9, 15 },		// 108 bits per transform
-			{ 6, 10, 14 },		// 108 bits per transform
-			{ 6, 11, 13 },		// 108 bits per transform
-			{ 6, 12, 12 },		// 108 bits per transform
-			{ 6, 13, 11 },		// 108 bits per transform
-			{ 6, 14, 10 },		// 108 bits per transform
-			{ 6, 15, 9 },		// 108 bits per transform
-			{ 6, 16, 8 },		// 108 bits per transform
-			{ 6, 17, 7 },		// 108 bits per transform
-			{ 7, 6, 17 },		// 108 bits per transform
-			{ 7, 7, 16 },		// 108 bits per transform
-			{ 7, 8, 15 },		// 108 bits per transform
-			{ 7, 9, 14 },		// 108 bits per transform
-			{ 7, 10, 13 },		// 108 bits per transform
-			{ 7, 11, 12 },		// 108 bits per transform
-			{ 7, 12, 11 },		// 108 bits per transform
-			{ 7, 13, 10 },		// 108 bits per transform
-			{ 7, 14, 9 },		// 108 bits per transform
-			{ 7, 15, 8 },		// 108 bits per transform
-			{ 7, 16, 7 },		// 108 bits per transform
-			{ 7, 17, 6 },		// 108 bits per transform
-			{ 8, 5, 17 },		// 108 bits per transform
-			{ 8, 6, 16 },		// 108 bits per transform
-			{ 8, 7, 15 },		// 108 bits per transform
-			{ 8, 8, 14 },		// 108 bits per transform
-			{ 8, 9, 13 },		// 108 bits per transform
-			{ 8, 10, 12 },		// 108 bits per transform
-			{ 8, 11, 11 },		// 108 bits per transform
-			{ 8, 12, 10 },		// 108 bits per transform
-			{ 8, 13, 9 },		// 108 bits per transform
-			{ 8, 14, 8 },		// 108 bits per transform
-			{ 8, 15, 7 },		// 108 bits per transform
-			{ 8, 16, 6 },		// 108 bits per transform
-			{ 8, 17, 5 },		// 108 bits per transform
-			{ 9, 4, 17 },		// 108 bits per transform
-			{ 9, 5, 16 },		// 108 bits per transform
-			{ 9, 6, 15 },		// 108 bits per transform
-			{ 9, 7, 14 },		// 108 bits per transform
-			{ 9, 8, 13 },		// 108 bits per transform
-			{ 9, 9, 12 },		// 108 bits per transform
-			{ 9, 10, 11 },		// 108 bits per transform
-			{ 9, 11, 10 },		// 108 bits per transform
-			{ 9, 12, 9 },		// 108 bits per transform
-			{ 9, 13, 8 },		// 108 bits per transform
-			{ 9, 14, 7 },		// 108 bits per transform
-			{ 9, 15, 6 },		// 108 bits per transform
-			{ 9, 16, 5 },		// 108 bits per transform
-			{ 9, 17, 4 },		// 108 bits per transform
-			{ 10, 3, 17 },		// 108 bits per transform
-			{ 10, 4, 16 },		// 108 bits per transform
-			{ 10, 5, 15 },		// 108 bits per transform
-			{ 10, 6, 14 },		// 108 bits per transform
-			{ 10, 7, 13 },		// 108 bits per transform
-			{ 10, 8, 12 },		// 108 bits per transform
-			{ 10, 9, 11 },		// 108 bits per transform
-			{ 10, 10, 10 },		// 108 bits per transform
-			{ 10, 11, 9 },		// 108 bits per transform
-			{ 10, 12, 8 },		// 108 bits per transform
-			{ 10, 13, 7 },		// 108 bits per transform
-			{ 10, 14, 6 },		// 108 bits per transform
-			{ 10, 15, 5 },		// 108 bits per transform
-			{ 10, 16, 4 },		// 108 bits per transform
-			{ 10, 17, 3 },		// 108 bits per transform
-			{ 11, 2, 17 },		// 108 bits per transform
-			{ 11, 3, 16 },		// 108 bits per transform
-			{ 11, 4, 15 },		// 108 bits per transform
-			{ 11, 5, 14 },		// 108 bits per transform
-			{ 11, 6, 13 },		// 108 bits per transform
-			{ 11, 7, 12 },		// 108 bits per transform
-			{ 11, 8, 11 },		// 108 bits per transform
-			{ 11, 9, 10 },		// 108 bits per transform
-			{ 11, 10, 9 },		// 108 bits per transform
-			{ 11, 11, 8 },		// 108 bits per transform
-			{ 11, 12, 7 },		// 108 bits per transform
-			{ 11, 13, 6 },		// 108 bits per transform
-			{ 11, 14, 5 },		// 108 bits per transform
-			{ 11, 15, 4 },		// 108 bits per transform
-			{ 11, 16, 3 },		// 108 bits per transform
-			{ 11, 17, 2 },		// 108 bits per transform
-			{ 12, 1, 17 },		// 108 bits per transform
-			{ 12, 2, 16 },		// 108 bits per transform
-			{ 12, 3, 15 },		// 108 bits per transform
-			{ 12, 4, 14 },		// 108 bits per transform
-			{ 12, 5, 13 },		// 108 bits per transform
-			{ 12, 6, 12 },		// 108 bits per transform
-			{ 12, 7, 11 },		// 108 bits per transform
-			{ 12, 8, 10 },		// 108 bits per transform
-			{ 12, 9, 9 },		// 108 bits per transform
-			{ 12, 10, 8 },		// 108 bits per transform
-			{ 12, 11, 7 },		// 108 bits per transform
-			{ 12, 12, 6 },		// 108 bits per transform
-			{ 12, 13, 5 },		// 108 bits per transform
-			{ 12, 14, 4 },		// 108 bits per transform
-			{ 12, 15, 3 },		// 108 bits per transform
-			{ 12, 16, 2 },		// 108 bits per transform
-			{ 12, 17, 1 },		// 108 bits per transform
-			{ 13, 1, 16 },		// 108 bits per transform
-			{ 13, 2, 15 },		// 108 bits per transform
-			{ 13, 3, 14 },		// 108 bits per transform
-			{ 13, 4, 13 },		// 108 bits per transform
-			{ 13, 5, 12 },		// 108 bits per transform
-			{ 13, 6, 11 },		// 108 bits per transform
-			{ 13, 7, 10 },		// 108 bits per transform
-			{ 13, 8, 9 },		// 108 bits per transform
-			{ 13, 9, 8 },		// 108 bits per transform
-			{ 13, 10, 7 },		// 108 bits per transform
-			{ 13, 11, 6 },		// 108 bits per transform
-			{ 13, 12, 5 },		// 108 bits per transform
-			{ 13, 13, 4 },		// 108 bits per transform
-			{ 13, 14, 3 },		// 108 bits per transform
-			{ 13, 15, 2 },		// 108 bits per transform
-			{ 13, 16, 1 },		// 108 bits per transform
-			{ 14, 1, 15 },		// 108 bits per transform
-			{ 14, 2, 14 },		// 108 bits per transform
-			{ 14, 3, 13 },		// 108 bits per transform
-			{ 14, 4, 12 },		// 108 bits per transform
-			{ 14, 5, 11 },		// 108 bits per transform
-			{ 14, 6, 10 },		// 108 bits per transform
-			{ 14, 7, 9 },		// 108 bits per transform
-			{ 14, 8, 8 },		// 108 bits per transform
-			{ 14, 9, 7 },		// 108 bits per transform
-			{ 14, 10, 6 },		// 108 bits per transform
-			{ 14, 11, 5 },		// 108 bits per transform
-			{ 14, 12, 4 },		// 108 bits per transform
-			{ 14, 13, 3 },		// 108 bits per transform
-			{ 14, 14, 2 },		// 108 bits per transform
-			{ 14, 15, 1 },		// 108 bits per transform
-			{ 15, 0, 17 },		// 108 bits per transform
-			{ 15, 1, 14 },		// 108 bits per transform
-			{ 15, 2, 13 },		// 108 bits per transform
-			{ 15, 3, 12 },		// 108 bits per transform
-			{ 15, 4, 11 },		// 108 bits per transform
-			{ 15, 5, 10 },		// 108 bits per transform
-			{ 15, 6, 9 },		// 108 bits per transform
-			{ 15, 7, 8 },		// 108 bits per transform
-			{ 15, 8, 7 },		// 108 bits per transform
-			{ 15, 9, 6 },		// 108 bits per transform
-			{ 15, 10, 5 },		// 108 bits per transform
-			{ 15, 11, 4 },		// 108 bits per transform
-			{ 15, 12, 3 },		// 108 bits per transform
-			{ 15, 13, 2 },		// 108 bits per transform
-			{ 15, 14, 1 },		// 108 bits per transform
-			{ 15, 17, 0 },		// 108 bits per transform
-			{ 16, 0, 16 },		// 108 bits per transform
-			{ 16, 1, 13 },		// 108 bits per transform
-			{ 16, 2, 12 },		// 108 bits per transform
-			{ 16, 3, 11 },		// 108 bits per transform
-			{ 16, 4, 10 },		// 108 bits per transform
-			{ 16, 5, 9 },		// 108 bits per transform
-			{ 16, 6, 8 },		// 108 bits per transform
-			{ 16, 7, 7 },		// 108 bits per transform
-			{ 16, 8, 6 },		// 108 bits per transform
-			{ 16, 9, 5 },		// 108 bits per transform
-			{ 16, 10, 4 },		// 108 bits per transform
-			{ 16, 11, 3 },		// 108 bits per transform
-			{ 16, 12, 2 },		// 108 bits per transform
-			{ 16, 13, 1 },		// 108 bits per transform
-			{ 16, 16, 0 },		// 108 bits per transform
-			{ 17, 0, 15 },		// 108 bits per transform
-			{ 17, 1, 12 },		// 108 bits per transform
-			{ 17, 2, 11 },		// 108 bits per transform
-			{ 17, 3, 10 },		// 108 bits per transform
-			{ 17, 4, 9 },		// 108 bits per transform
-			{ 17, 5, 8 },		// 108 bits per transform
-			{ 17, 6, 7 },		// 108 bits per transform
-			{ 17, 7, 6 },		// 108 bits per transform
-			{ 17, 8, 5 },		// 108 bits per transform
-			{ 17, 9, 4 },		// 108 bits per transform
-			{ 17, 10, 3 },		// 108 bits per transform
-			{ 17, 11, 2 },		// 108 bits per transform
-			{ 17, 12, 1 },		// 108 bits per transform
-			{ 17, 15, 0 },		// 108 bits per transform
-			{ 18, 0, 2 },		// 108 bits per transform
-			{ 18, 2, 0 },		// 108 bits per transform
-			{ 0, 3, 18 },		// 111 bits per transform
-			{ 0, 16, 17 },		// 111 bits per transform
-			{ 0, 17, 16 },		// 111 bits per transform
-			{ 0, 18, 3 },		// 111 bits per transform
-			{ 1, 13, 17 },		// 111 bits per transform
-			{ 1, 14, 16 },		// 111 bits per transform
-			{ 1, 15, 15 },		// 111 bits per transform
-			{ 1, 16, 14 },		// 111 bits per transform
-			{ 1, 17, 13 },		// 111 bits per transform
-			{ 2, 12, 17 },		// 111 bits per transform
-			{ 2, 13, 16 },		// 111 bits per transform
-			{ 2, 14, 15 },		// 111 bits per transform
-			{ 2, 15, 14 },		// 111 bits per transform
-			{ 2, 16, 13 },		// 111 bits per transform
-			{ 2, 17, 12 },		// 111 bits per transform
-			{ 3, 0, 18 },		// 111 bits per transform
-			{ 3, 11, 17 },		// 111 bits per transform
-			{ 3, 12, 16 },		// 111 bits per transform
-			{ 3, 13, 15 },		// 111 bits per transform
-			{ 3, 14, 14 },		// 111 bits per transform
-			{ 3, 15, 13 },		// 111 bits per transform
-			{ 3, 16, 12 },		// 111 bits per transform
-			{ 3, 17, 11 },		// 111 bits per transform
-			{ 3, 18, 0 },		// 111 bits per transform
-			{ 4, 10, 17 },		// 111 bits per transform
-			{ 4, 11, 16 },		// 111 bits per transform
-			{ 4, 12, 15 },		// 111 bits per transform
-			{ 4, 13, 14 },		// 111 bits per transform
-			{ 4, 14, 13 },		// 111 bits per transform
-			{ 4, 15, 12 },		// 111 bits per transform
-			{ 4, 16, 11 },		// 111 bits per transform
-			{ 4, 17, 10 },		// 111 bits per transform
-			{ 5, 9, 17 },		// 111 bits per transform
-			{ 5, 10, 16 },		// 111 bits per transform
-			{ 5, 11, 15 },		// 111 bits per transform
-			{ 5, 12, 14 },		// 111 bits per transform
-			{ 5, 13, 13 },		// 111 bits per transform
-			{ 5, 14, 12 },		// 111 bits per transform
-			{ 5, 15, 11 },		// 111 bits per transform
-			{ 5, 16, 10 },		// 111 bits per transform
-			{ 5, 17, 9 },		// 111 bits per transform
-			{ 6, 8, 17 },		// 111 bits per transform
-			{ 6, 9, 16 },		// 111 bits per transform
-			{ 6, 10, 15 },		// 111 bits per transform
-			{ 6, 11, 14 },		// 111 bits per transform
-			{ 6, 12, 13 },		// 111 bits per transform
-			{ 6, 13, 12 },		// 111 bits per transform
-			{ 6, 14, 11 },		// 111 bits per transform
-			{ 6, 15, 10 },		// 111 bits per transform
-			{ 6, 16, 9 },		// 111 bits per transform
-			{ 6, 17, 8 },		// 111 bits per transform
-			{ 7, 7, 17 },		// 111 bits per transform
-			{ 7, 8, 16 },		// 111 bits per transform
-			{ 7, 9, 15 },		// 111 bits per transform
-			{ 7, 10, 14 },		// 111 bits per transform
-			{ 7, 11, 13 },		// 111 bits per transform
-			{ 7, 12, 12 },		// 111 bits per transform
-			{ 7, 13, 11 },		// 111 bits per transform
-			{ 7, 14, 10 },		// 111 bits per transform
-			{ 7, 15, 9 },		// 111 bits per transform
-			{ 7, 16, 8 },		// 111 bits per transform
-			{ 7, 17, 7 },		// 111 bits per transform
-			{ 8, 6, 17 },		// 111 bits per transform
-			{ 8, 7, 16 },		// 111 bits per transform
-			{ 8, 8, 15 },		// 111 bits per transform
-			{ 8, 9, 14 },		// 111 bits per transform
-			{ 8, 10, 13 },		// 111 bits per transform
-			{ 8, 11, 12 },		// 111 bits per transform
-			{ 8, 12, 11 },		// 111 bits per transform
-			{ 8, 13, 10 },		// 111 bits per transform
-			{ 8, 14, 9 },		// 111 bits per transform
-			{ 8, 15, 8 },		// 111 bits per transform
-			{ 8, 16, 7 },		// 111 bits per transform
-			{ 8, 17, 6 },		// 111 bits per transform
-			{ 9, 5, 17 },		// 111 bits per transform
-			{ 9, 6, 16 },		// 111 bits per transform
-			{ 9, 7, 15 },		// 111 bits per transform
-			{ 9, 8, 14 },		// 111 bits per transform
-			{ 9, 9, 13 },		// 111 bits per transform
-			{ 9, 10, 12 },		// 111 bits per transform
-			{ 9, 11, 11 },		// 111 bits per transform
-			{ 9, 12, 10 },		// 111 bits per transform
-			{ 9, 13, 9 },		// 111 bits per transform
-			{ 9, 14, 8 },		// 111 bits per transform
-			{ 9, 15, 7 },		// 111 bits per transform
-			{ 9, 16, 6 },		// 111 bits per transform
-			{ 9, 17, 5 },		// 111 bits per transform
-			{ 10, 4, 17 },		// 111 bits per transform
-			{ 10, 5, 16 },		// 111 bits per transform
-			{ 10, 6, 15 },		// 111 bits per transform
-			{ 10, 7, 14 },		// 111 bits per transform
-			{ 10, 8, 13 },		// 111 bits per transform
-			{ 10, 9, 12 },		// 111 bits per transform
-			{ 10, 10, 11 },		// 111 bits per transform
-			{ 10, 11, 10 },		// 111 bits per transform
-			{ 10, 12, 9 },		// 111 bits per transform
-			{ 10, 13, 8 },		// 111 bits per transform
-			{ 10, 14, 7 },		// 111 bits per transform
-			{ 10, 15, 6 },		// 111 bits per transform
-			{ 10, 16, 5 },		// 111 bits per transform
-			{ 10, 17, 4 },		// 111 bits per transform
-			{ 11, 3, 17 },		// 111 bits per transform
-			{ 11, 4, 16 },		// 111 bits per transform
-			{ 11, 5, 15 },		// 111 bits per transform
-			{ 11, 6, 14 },		// 111 bits per transform
-			{ 11, 7, 13 },		// 111 bits per transform
-			{ 11, 8, 12 },		// 111 bits per transform
-			{ 11, 9, 11 },		// 111 bits per transform
-			{ 11, 10, 10 },		// 111 bits per transform
-			{ 11, 11, 9 },		// 111 bits per transform
-			{ 11, 12, 8 },		// 111 bits per transform
-			{ 11, 13, 7 },		// 111 bits per transform
-			{ 11, 14, 6 },		// 111 bits per transform
-			{ 11, 15, 5 },		// 111 bits per transform
-			{ 11, 16, 4 },		// 111 bits per transform
-			{ 11, 17, 3 },		// 111 bits per transform
-			{ 12, 2, 17 },		// 111 bits per transform
-			{ 12, 3, 16 },		// 111 bits per transform
-			{ 12, 4, 15 },		// 111 bits per transform
-			{ 12, 5, 14 },		// 111 bits per transform
-			{ 12, 6, 13 },		// 111 bits per transform
-			{ 12, 7, 12 },		// 111 bits per transform
-			{ 12, 8, 11 },		// 111 bits per transform
-			{ 12, 9, 10 },		// 111 bits per transform
-			{ 12, 10, 9 },		// 111 bits per transform
-			{ 12, 11, 8 },		// 111 bits per transform
-			{ 12, 12, 7 },		// 111 bits per transform
-			{ 12, 13, 6 },		// 111 bits per transform
-			{ 12, 14, 5 },		// 111 bits per transform
-			{ 12, 15, 4 },		// 111 bits per transform
-			{ 12, 16, 3 },		// 111 bits per transform
-			{ 12, 17, 2 },		// 111 bits per transform
-			{ 13, 1, 17 },		// 111 bits per transform
-			{ 13, 2, 16 },		// 111 bits per transform
-			{ 13, 3, 15 },		// 111 bits per transform
-			{ 13, 4, 14 },		// 111 bits per transform
-			{ 13, 5, 13 },		// 111 bits per transform
-			{ 13, 6, 12 },		// 111 bits per transform
-			{ 13, 7, 11 },		// 111 bits per transform
-			{ 13, 8, 10 },		// 111 bits per transform
-			{ 13, 9, 9 },		// 111 bits per transform
-			{ 13, 10, 8 },		// 111 bits per transform
-			{ 13, 11, 7 },		// 111 bits per transform
-			{ 13, 12, 6 },		// 111 bits per transform
-			{ 13, 13, 5 },		// 111 bits per transform
-			{ 13, 14, 4 },		// 111 bits per transform
-			{ 13, 15, 3 },		// 111 bits per transform
-			{ 13, 16, 2 },		// 111 bits per transform
-			{ 13, 17, 1 },		// 111 bits per transform
-			{ 14, 1, 16 },		// 111 bits per transform
-			{ 14, 2, 15 },		// 111 bits per transform
-			{ 14, 3, 14 },		// 111 bits per transform
-			{ 14, 4, 13 },		// 111 bits per transform
-			{ 14, 5, 12 },		// 111 bits per transform
-			{ 14, 6, 11 },		// 111 bits per transform
-			{ 14, 7, 10 },		// 111 bits per transform
-			{ 14, 8, 9 },		// 111 bits per transform
-			{ 14, 9, 8 },		// 111 bits per transform
-			{ 14, 10, 7 },		// 111 bits per transform
-			{ 14, 11, 6 },		// 111 bits per transform
-			{ 14, 12, 5 },		// 111 bits per transform
-			{ 14, 13, 4 },		// 111 bits per transform
-			{ 14, 14, 3 },		// 111 bits per transform
-			{ 14, 15, 2 },		// 111 bits per transform
-			{ 14, 16, 1 },		// 111 bits per transform
-			{ 15, 1, 15 },		// 111 bits per transform
-			{ 15, 2, 14 },		// 111 bits per transform
-			{ 15, 3, 13 },		// 111 bits per transform
-			{ 15, 4, 12 },		// 111 bits per transform
-			{ 15, 5, 11 },		// 111 bits per transform
-			{ 15, 6, 10 },		// 111 bits per transform
-			{ 15, 7, 9 },		// 111 bits per transform
-			{ 15, 8, 8 },		// 111 bits per transform
-			{ 15, 9, 7 },		// 111 bits per transform
-			{ 15, 10, 6 },		// 111 bits per transform
-			{ 15, 11, 5 },		// 111 bits per transform
-			{ 15, 12, 4 },		// 111 bits per transform
-			{ 15, 13, 3 },		// 111 bits per transform
-			{ 15, 14, 2 },		// 111 bits per transform
-			{ 15, 15, 1 },		// 111 bits per transform
-			{ 16, 0, 17 },		// 111 bits per transform
-			{ 16, 1, 14 },		// 111 bits per transform
-			{ 16, 2, 13 },		// 111 bits per transform
-			{ 16, 3, 12 },		// 111 bits per transform
-			{ 16, 4, 11 },		// 111 bits per transform
-			{ 16, 5, 10 },		// 111 bits per transform
-			{ 16, 6, 9 },		// 111 bits per transform
-			{ 16, 7, 8 },		// 111 bits per transform
-			{ 16, 8, 7 },		// 111 bits per transform
-			{ 16, 9, 6 },		// 111 bits per transform
-			{ 16, 10, 5 },		// 111 bits per transform
-			{ 16, 11, 4 },		// 111 bits per transform
-			{ 16, 12, 3 },		// 111 bits per transform
-			{ 16, 13, 2 },		// 111 bits per transform
-			{ 16, 14, 1 },		// 111 bits per transform
-			{ 16, 17, 0 },		// 111 bits per transform
-			{ 17, 0, 16 },		// 111 bits per transform
-			{ 17, 1, 13 },		// 111 bits per transform
-			{ 17, 2, 12 },		// 111 bits per transform
-			{ 17, 3, 11 },		// 111 bits per transform
-			{ 17, 4, 10 },		// 111 bits per transform
-			{ 17, 5, 9 },		// 111 bits per transform
-			{ 17, 6, 8 },		// 111 bits per transform
-			{ 17, 7, 7 },		// 111 bits per transform
-			{ 17, 8, 6 },		// 111 bits per transform
-			{ 17, 9, 5 },		// 111 bits per transform
-			{ 17, 10, 4 },		// 111 bits per transform
-			{ 17, 11, 3 },		// 111 bits per transform
-			{ 17, 12, 2 },		// 111 bits per transform
-			{ 17, 13, 1 },		// 111 bits per transform
-			{ 17, 16, 0 },		// 111 bits per transform
-			{ 18, 0, 3 },		// 111 bits per transform
-			{ 18, 3, 0 },		// 111 bits per transform
-			{ 0, 4, 18 },		// 114 bits per transform
-			{ 0, 17, 17 },		// 114 bits per transform
-			{ 0, 18, 4 },		// 114 bits per transform
-			{ 1, 1, 18 },		// 114 bits per transform
-			{ 1, 14, 17 },		// 114 bits per transform
-			{ 1, 15, 16 },		// 114 bits per transform
-			{ 1, 16, 15 },		// 114 bits per transform
-			{ 1, 17, 14 },		// 114 bits per transform
-			{ 1, 18, 1 },		// 114 bits per transform
-			{ 2, 13, 17 },		// 114 bits per transform
-			{ 2, 14, 16 },		// 114 bits per transform
-			{ 2, 15, 15 },		// 114 bits per transform
-			{ 2, 16, 14 },		// 114 bits per transform
-			{ 2, 17, 13 },		// 114 bits per transform
-			{ 3, 12, 17 },		// 114 bits per transform
-			{ 3, 13, 16 },		// 114 bits per transform
-			{ 3, 14, 15 },		// 114 bits per transform
-			{ 3, 15, 14 },		// 114 bits per transform
-			{ 3, 16, 13 },		// 114 bits per transform
-			{ 3, 17, 12 },		// 114 bits per transform
-			{ 4, 0, 18 },		// 114 bits per transform
-			{ 4, 11, 17 },		// 114 bits per transform
-			{ 4, 12, 16 },		// 114 bits per transform
-			{ 4, 13, 15 },		// 114 bits per transform
-			{ 4, 14, 14 },		// 114 bits per transform
-			{ 4, 15, 13 },		// 114 bits per transform
-			{ 4, 16, 12 },		// 114 bits per transform
-			{ 4, 17, 11 },		// 114 bits per transform
-			{ 4, 18, 0 },		// 114 bits per transform
-			{ 5, 10, 17 },		// 114 bits per transform
-			{ 5, 11, 16 },		// 114 bits per transform
-			{ 5, 12, 15 },		// 114 bits per transform
-			{ 5, 13, 14 },		// 114 bits per transform
-			{ 5, 14, 13 },		// 114 bits per transform
-			{ 5, 15, 12 },		// 114 bits per transform
-			{ 5, 16, 11 },		// 114 bits per transform
-			{ 5, 17, 10 },		// 114 bits per transform
-			{ 6, 9, 17 },		// 114 bits per transform
-			{ 6, 10, 16 },		// 114 bits per transform
-			{ 6, 11, 15 },		// 114 bits per transform
-			{ 6, 12, 14 },		// 114 bits per transform
-			{ 6, 13, 13 },		// 114 bits per transform
-			{ 6, 14, 12 },		// 114 bits per transform
-			{ 6, 15, 11 },		// 114 bits per transform
-			{ 6, 16, 10 },		// 114 bits per transform
-			{ 6, 17, 9 },		// 114 bits per transform
-			{ 7, 8, 17 },		// 114 bits per transform
-			{ 7, 9, 16 },		// 114 bits per transform
-			{ 7, 10, 15 },		// 114 bits per transform
-			{ 7, 11, 14 },		// 114 bits per transform
-			{ 7, 12, 13 },		// 114 bits per transform
-			{ 7, 13, 12 },		// 114 bits per transform
-			{ 7, 14, 11 },		// 114 bits per transform
-			{ 7, 15, 10 },		// 114 bits per transform
-			{ 7, 16, 9 },		// 114 bits per transform
-			{ 7, 17, 8 },		// 114 bits per transform
-			{ 8, 7, 17 },		// 114 bits per transform
-			{ 8, 8, 16 },		// 114 bits per transform
-			{ 8, 9, 15 },		// 114 bits per transform
-			{ 8, 10, 14 },		// 114 bits per transform
-			{ 8, 11, 13 },		// 114 bits per transform
-			{ 8, 12, 12 },		// 114 bits per transform
-			{ 8, 13, 11 },		// 114 bits per transform
-			{ 8, 14, 10 },		// 114 bits per transform
-			{ 8, 15, 9 },		// 114 bits per transform
-			{ 8, 16, 8 },		// 114 bits per transform
-			{ 8, 17, 7 },		// 114 bits per transform
-			{ 9, 6, 17 },		// 114 bits per transform
-			{ 9, 7, 16 },		// 114 bits per transform
-			{ 9, 8, 15 },		// 114 bits per transform
-			{ 9, 9, 14 },		// 114 bits per transform
-			{ 9, 10, 13 },		// 114 bits per transform
-			{ 9, 11, 12 },		// 114 bits per transform
-			{ 9, 12, 11 },		// 114 bits per transform
-			{ 9, 13, 10 },		// 114 bits per transform
-			{ 9, 14, 9 },		// 114 bits per transform
-			{ 9, 15, 8 },		// 114 bits per transform
-			{ 9, 16, 7 },		// 114 bits per transform
-			{ 9, 17, 6 },		// 114 bits per transform
-			{ 10, 5, 17 },		// 114 bits per transform
-			{ 10, 6, 16 },		// 114 bits per transform
-			{ 10, 7, 15 },		// 114 bits per transform
-			{ 10, 8, 14 },		// 114 bits per transform
-			{ 10, 9, 13 },		// 114 bits per transform
-			{ 10, 10, 12 },		// 114 bits per transform
-			{ 10, 11, 11 },		// 114 bits per transform
-			{ 10, 12, 10 },		// 114 bits per transform
-			{ 10, 13, 9 },		// 114 bits per transform
-			{ 10, 14, 8 },		// 114 bits per transform
-			{ 10, 15, 7 },		// 114 bits per transform
-			{ 10, 16, 6 },		// 114 bits per transform
-			{ 10, 17, 5 },		// 114 bits per transform
-			{ 11, 4, 17 },		// 114 bits per transform
-			{ 11, 5, 16 },		// 114 bits per transform
-			{ 11, 6, 15 },		// 114 bits per transform
-			{ 11, 7, 14 },		// 114 bits per transform
-			{ 11, 8, 13 },		// 114 bits per transform
-			{ 11, 9, 12 },		// 114 bits per transform
-			{ 11, 10, 11 },		// 114 bits per transform
-			{ 11, 11, 10 },		// 114 bits per transform
-			{ 11, 12, 9 },		// 114 bits per transform
-			{ 11, 13, 8 },		// 114 bits per transform
-			{ 11, 14, 7 },		// 114 bits per transform
-			{ 11, 15, 6 },		// 114 bits per transform
-			{ 11, 16, 5 },		// 114 bits per transform
-			{ 11, 17, 4 },		// 114 bits per transform
-			{ 12, 3, 17 },		// 114 bits per transform
-			{ 12, 4, 16 },		// 114 bits per transform
-			{ 12, 5, 15 },		// 114 bits per transform
-			{ 12, 6, 14 },		// 114 bits per transform
-			{ 12, 7, 13 },		// 114 bits per transform
-			{ 12, 8, 12 },		// 114 bits per transform
-			{ 12, 9, 11 },		// 114 bits per transform
-			{ 12, 10, 10 },		// 114 bits per transform
-			{ 12, 11, 9 },		// 114 bits per transform
-			{ 12, 12, 8 },		// 114 bits per transform
-			{ 12, 13, 7 },		// 114 bits per transform
-			{ 12, 14, 6 },		// 114 bits per transform
-			{ 12, 15, 5 },		// 114 bits per transform
-			{ 12, 16, 4 },		// 114 bits per transform
-			{ 12, 17, 3 },		// 114 bits per transform
-			{ 13, 2, 17 },		// 114 bits per transform
-			{ 13, 3, 16 },		// 114 bits per transform
-			{ 13, 4, 15 },		// 114 bits per transform
-			{ 13, 5, 14 },		// 114 bits per transform
-			{ 13, 6, 13 },		// 114 bits per transform
-			{ 13, 7, 12 },		// 114 bits per transform
-			{ 13, 8, 11 },		// 114 bits per transform
-			{ 13, 9, 10 },		// 114 bits per transform
-			{ 13, 10, 9 },		// 114 bits per transform
-			{ 13, 11, 8 },		// 114 bits per transform
-			{ 13, 12, 7 },		// 114 bits per transform
-			{ 13, 13, 6 },		// 114 bits per transform
-			{ 13, 14, 5 },		// 114 bits per transform
-			{ 13, 15, 4 },		// 114 bits per transform
-			{ 13, 16, 3 },		// 114 bits per transform
-			{ 13, 17, 2 },		// 114 bits per transform
-			{ 14, 1, 17 },		// 114 bits per transform
-			{ 14, 2, 16 },		// 114 bits per transform
-			{ 14, 3, 15 },		// 114 bits per transform
-			{ 14, 4, 14 },		// 114 bits per transform
-			{ 14, 5, 13 },		// 114 bits per transform
-			{ 14, 6, 12 },		// 114 bits per transform
-			{ 14, 7, 11 },		// 114 bits per transform
-			{ 14, 8, 10 },		// 114 bits per transform
-			{ 14, 9, 9 },		// 114 bits per transform
-			{ 14, 10, 8 },		// 114 bits per transform
-			{ 14, 11, 7 },		// 114 bits per transform
-			{ 14, 12, 6 },		// 114 bits per transform
-			{ 14, 13, 5 },		// 114 bits per transform
-			{ 14, 14, 4 },		// 114 bits per transform
-			{ 14, 15, 3 },		// 114 bits per transform
-			{ 14, 16, 2 },		// 114 bits per transform
-			{ 14, 17, 1 },		// 114 bits per transform
-			{ 15, 1, 16 },		// 114 bits per transform
-			{ 15, 2, 15 },		// 114 bits per transform
-			{ 15, 3, 14 },		// 114 bits per transform
-			{ 15, 4, 13 },		// 114 bits per transform
-			{ 15, 5, 12 },		// 114 bits per transform
-			{ 15, 6, 11 },		// 114 bits per transform
-			{ 15, 7, 10 },		// 114 bits per transform
-			{ 15, 8, 9 },		// 114 bits per transform
-			{ 15, 9, 8 },		// 114 bits per transform
-			{ 15, 10, 7 },		// 114 bits per transform
-			{ 15, 11, 6 },		// 114 bits per transform
-			{ 15, 12, 5 },		// 114 bits per transform
-			{ 15, 13, 4 },		// 114 bits per transform
-			{ 15, 14, 3 },		// 114 bits per transform
-			{ 15, 15, 2 },		// 114 bits per transform
-			{ 15, 16, 1 },		// 114 bits per transform
-			{ 16, 1, 15 },		// 114 bits per transform
-			{ 16, 2, 14 },		// 114 bits per transform
-			{ 16, 3, 13 },		// 114 bits per transform
-			{ 16, 4, 12 },		// 114 bits per transform
-			{ 16, 5, 11 },		// 114 bits per transform
-			{ 16, 6, 10 },		// 114 bits per transform
-			{ 16, 7, 9 },		// 114 bits per transform
-			{ 16, 8, 8 },		// 114 bits per transform
-			{ 16, 9, 7 },		// 114 bits per transform
-			{ 16, 10, 6 },		// 114 bits per transform
-			{ 16, 11, 5 },		// 114 bits per transform
-			{ 16, 12, 4 },		// 114 bits per transform
-			{ 16, 13, 3 },		// 114 bits per transform
-			{ 16, 14, 2 },		// 114 bits per transform
-			{ 16, 15, 1 },		// 114 bits per transform
-			{ 17, 0, 17 },		// 114 bits per transform
-			{ 17, 1, 14 },		// 114 bits per transform
-			{ 17, 2, 13 },		// 114 bits per transform
-			{ 17, 3, 12 },		// 114 bits per transform
-			{ 17, 4, 11 },		// 114 bits per transform
-			{ 17, 5, 10 },		// 114 bits per transform
-			{ 17, 6, 9 },		// 114 bits per transform
-			{ 17, 7, 8 },		// 114 bits per transform
-			{ 17, 8, 7 },		// 114 bits per transform
-			{ 17, 9, 6 },		// 114 bits per transform
-			{ 17, 10, 5 },		// 114 bits per transform
-			{ 17, 11, 4 },		// 114 bits per transform
-			{ 17, 12, 3 },		// 114 bits per transform
-			{ 17, 13, 2 },		// 114 bits per transform
-			{ 17, 14, 1 },		// 114 bits per transform
-			{ 17, 17, 0 },		// 114 bits per transform
-			{ 18, 0, 4 },		// 114 bits per transform
-			{ 18, 1, 1 },		// 114 bits per transform
-			{ 18, 4, 0 },		// 114 bits per transform
-			{ 0, 5, 18 },		// 117 bits per transform
-			{ 0, 18, 5 },		// 117 bits per transform
-			{ 1, 2, 18 },		// 117 bits per transform
-			{ 1, 15, 17 },		// 117 bits per transform
-			{ 1, 16, 16 },		// 117 bits per transform
-			{ 1, 17, 15 },		// 117 bits per transform
-			{ 1, 18, 2 },		// 117 bits per transform
-			{ 2, 1, 18 },		// 117 bits per transform
-			{ 2, 14, 17 },		// 117 bits per transform
-			{ 2, 15, 16 },		// 117 bits per transform
-			{ 2, 16, 15 },		// 117 bits per transform
-			{ 2, 17, 14 },		// 117 bits per transform
-			{ 2, 18, 1 },		// 117 bits per transform
-			{ 3, 13, 17 },		// 117 bits per transform
-			{ 3, 14, 16 },		// 117 bits per transform
-			{ 3, 15, 15 },		// 117 bits per transform
-			{ 3, 16, 14 },		// 117 bits per transform
-			{ 3, 17, 13 },		// 117 bits per transform
-			{ 4, 12, 17 },		// 117 bits per transform
-			{ 4, 13, 16 },		// 117 bits per transform
-			{ 4, 14, 15 },		// 117 bits per transform
-			{ 4, 15, 14 },		// 117 bits per transform
-			{ 4, 16, 13 },		// 117 bits per transform
-			{ 4, 17, 12 },		// 117 bits per transform
-			{ 5, 0, 18 },		// 117 bits per transform
-			{ 5, 11, 17 },		// 117 bits per transform
-			{ 5, 12, 16 },		// 117 bits per transform
-			{ 5, 13, 15 },		// 117 bits per transform
-			{ 5, 14, 14 },		// 117 bits per transform
-			{ 5, 15, 13 },		// 117 bits per transform
-			{ 5, 16, 12 },		// 117 bits per transform
-			{ 5, 17, 11 },		// 117 bits per transform
-			{ 5, 18, 0 },		// 117 bits per transform
-			{ 6, 10, 17 },		// 117 bits per transform
-			{ 6, 11, 16 },		// 117 bits per transform
-			{ 6, 12, 15 },		// 117 bits per transform
-			{ 6, 13, 14 },		// 117 bits per transform
-			{ 6, 14, 13 },		// 117 bits per transform
-			{ 6, 15, 12 },		// 117 bits per transform
-			{ 6, 16, 11 },		// 117 bits per transform
-			{ 6, 17, 10 },		// 117 bits per transform
-			{ 7, 9, 17 },		// 117 bits per transform
-			{ 7, 10, 16 },		// 117 bits per transform
-			{ 7, 11, 15 },		// 117 bits per transform
-			{ 7, 12, 14 },		// 117 bits per transform
-			{ 7, 13, 13 },		// 117 bits per transform
-			{ 7, 14, 12 },		// 117 bits per transform
-			{ 7, 15, 11 },		// 117 bits per transform
-			{ 7, 16, 10 },		// 117 bits per transform
-			{ 7, 17, 9 },		// 117 bits per transform
-			{ 8, 8, 17 },		// 117 bits per transform
-			{ 8, 9, 16 },		// 117 bits per transform
-			{ 8, 10, 15 },		// 117 bits per transform
-			{ 8, 11, 14 },		// 117 bits per transform
-			{ 8, 12, 13 },		// 117 bits per transform
-			{ 8, 13, 12 },		// 117 bits per transform
-			{ 8, 14, 11 },		// 117 bits per transform
-			{ 8, 15, 10 },		// 117 bits per transform
-			{ 8, 16, 9 },		// 117 bits per transform
-			{ 8, 17, 8 },		// 117 bits per transform
-			{ 9, 7, 17 },		// 117 bits per transform
-			{ 9, 8, 16 },		// 117 bits per transform
-			{ 9, 9, 15 },		// 117 bits per transform
-			{ 9, 10, 14 },		// 117 bits per transform
-			{ 9, 11, 13 },		// 117 bits per transform
-			{ 9, 12, 12 },		// 117 bits per transform
-			{ 9, 13, 11 },		// 117 bits per transform
-			{ 9, 14, 10 },		// 117 bits per transform
-			{ 9, 15, 9 },		// 117 bits per transform
-			{ 9, 16, 8 },		// 117 bits per transform
-			{ 9, 17, 7 },		// 117 bits per transform
-			{ 10, 6, 17 },		// 117 bits per transform
-			{ 10, 7, 16 },		// 117 bits per transform
-			{ 10, 8, 15 },		// 117 bits per transform
-			{ 10, 9, 14 },		// 117 bits per transform
-			{ 10, 10, 13 },		// 117 bits per transform
-			{ 10, 11, 12 },		// 117 bits per transform
-			{ 10, 12, 11 },		// 117 bits per transform
-			{ 10, 13, 10 },		// 117 bits per transform
-			{ 10, 14, 9 },		// 117 bits per transform
-			{ 10, 15, 8 },		// 117 bits per transform
-			{ 10, 16, 7 },		// 117 bits per transform
-			{ 10, 17, 6 },		// 117 bits per transform
-			{ 11, 5, 17 },		// 117 bits per transform
-			{ 11, 6, 16 },		// 117 bits per transform
-			{ 11, 7, 15 },		// 117 bits per transform
-			{ 11, 8, 14 },		// 117 bits per transform
-			{ 11, 9, 13 },		// 117 bits per transform
-			{ 11, 10, 12 },		// 117 bits per transform
-			{ 11, 11, 11 },		// 117 bits per transform
-			{ 11, 12, 10 },		// 117 bits per transform
-			{ 11, 13, 9 },		// 117 bits per transform
-			{ 11, 14, 8 },		// 117 bits per transform
-			{ 11, 15, 7 },		// 117 bits per transform
-			{ 11, 16, 6 },		// 117 bits per transform
-			{ 11, 17, 5 },		// 117 bits per transform
-			{ 12, 4, 17 },		// 117 bits per transform
-			{ 12, 5, 16 },		// 117 bits per transform
-			{ 12, 6, 15 },		// 117 bits per transform
-			{ 12, 7, 14 },		// 117 bits per transform
-			{ 12, 8, 13 },		// 117 bits per transform
-			{ 12, 9, 12 },		// 117 bits per transform
-			{ 12, 10, 11 },		// 117 bits per transform
-			{ 12, 11, 10 },		// 117 bits per transform
-			{ 12, 12, 9 },		// 117 bits per transform
-			{ 12, 13, 8 },		// 117 bits per transform
-			{ 12, 14, 7 },		// 117 bits per transform
-			{ 12, 15, 6 },		// 117 bits per transform
-			{ 12, 16, 5 },		// 117 bits per transform
-			{ 12, 17, 4 },		// 117 bits per transform
-			{ 13, 3, 17 },		// 117 bits per transform
-			{ 13, 4, 16 },		// 117 bits per transform
-			{ 13, 5, 15 },		// 117 bits per transform
-			{ 13, 6, 14 },		// 117 bits per transform
-			{ 13, 7, 13 },		// 117 bits per transform
-			{ 13, 8, 12 },		// 117 bits per transform
-			{ 13, 9, 11 },		// 117 bits per transform
-			{ 13, 10, 10 },		// 117 bits per transform
-			{ 13, 11, 9 },		// 117 bits per transform
-			{ 13, 12, 8 },		// 117 bits per transform
-			{ 13, 13, 7 },		// 117 bits per transform
-			{ 13, 14, 6 },		// 117 bits per transform
-			{ 13, 15, 5 },		// 117 bits per transform
-			{ 13, 16, 4 },		// 117 bits per transform
-			{ 13, 17, 3 },		// 117 bits per transform
-			{ 14, 2, 17 },		// 117 bits per transform
-			{ 14, 3, 16 },		// 117 bits per transform
-			{ 14, 4, 15 },		// 117 bits per transform
-			{ 14, 5, 14 },		// 117 bits per transform
-			{ 14, 6, 13 },		// 117 bits per transform
-			{ 14, 7, 12 },		// 117 bits per transform
-			{ 14, 8, 11 },		// 117 bits per transform
-			{ 14, 9, 10 },		// 117 bits per transform
-			{ 14, 10, 9 },		// 117 bits per transform
-			{ 14, 11, 8 },		// 117 bits per transform
-			{ 14, 12, 7 },		// 117 bits per transform
-			{ 14, 13, 6 },		// 117 bits per transform
-			{ 14, 14, 5 },		// 117 bits per transform
-			{ 14, 15, 4 },		// 117 bits per transform
-			{ 14, 16, 3 },		// 117 bits per transform
-			{ 14, 17, 2 },		// 117 bits per transform
-			{ 15, 1, 17 },		// 117 bits per transform
-			{ 15, 2, 16 },		// 117 bits per transform
-			{ 15, 3, 15 },		// 117 bits per transform
-			{ 15, 4, 14 },		// 117 bits per transform
-			{ 15, 5, 13 },		// 117 bits per transform
-			{ 15, 6, 12 },		// 117 bits per transform
-			{ 15, 7, 11 },		// 117 bits per transform
-			{ 15, 8, 10 },		// 117 bits per transform
-			{ 15, 9, 9 },		// 117 bits per transform
-			{ 15, 10, 8 },		// 117 bits per transform
-			{ 15, 11, 7 },		// 117 bits per transform
-			{ 15, 12, 6 },		// 117 bits per transform
-			{ 15, 13, 5 },		// 117 bits per transform
-			{ 15, 14, 4 },		// 117 bits per transform
-			{ 15, 15, 3 },		// 117 bits per transform
-			{ 15, 16, 2 },		// 117 bits per transform
-			{ 15, 17, 1 },		// 117 bits per transform
-			{ 16, 1, 16 },		// 117 bits per transform
-			{ 16, 2, 15 },		// 117 bits per transform
-			{ 16, 3, 14 },		// 117 bits per transform
-			{ 16, 4, 13 },		// 117 bits per transform
-			{ 16, 5, 12 },		// 117 bits per transform
-			{ 16, 6, 11 },		// 117 bits per transform
-			{ 16, 7, 10 },		// 117 bits per transform
-			{ 16, 8, 9 },		// 117 bits per transform
-			{ 16, 9, 8 },		// 117 bits per transform
-			{ 16, 10, 7 },		// 117 bits per transform
-			{ 16, 11, 6 },		// 117 bits per transform
-			{ 16, 12, 5 },		// 117 bits per transform
-			{ 16, 13, 4 },		// 117 bits per transform
-			{ 16, 14, 3 },		// 117 bits per transform
-			{ 16, 15, 2 },		// 117 bits per transform
-			{ 16, 16, 1 },		// 117 bits per transform
-			{ 17, 1, 15 },		// 117 bits per transform
-			{ 17, 2, 14 },		// 117 bits per transform
-			{ 17, 3, 13 },		// 117 bits per transform
-			{ 17, 4, 12 },		// 117 bits per transform
-			{ 17, 5, 11 },		// 117 bits per transform
-			{ 17, 6, 10 },		// 117 bits per transform
-			{ 17, 7, 9 },		// 117 bits per transform
-			{ 17, 8, 8 },		// 117 bits per transform
-			{ 17, 9, 7 },		// 117 bits per transform
-			{ 17, 10, 6 },		// 117 bits per transform
-			{ 17, 11, 5 },		// 117 bits per transform
-			{ 17, 12, 4 },		// 117 bits per transform
-			{ 17, 13, 3 },		// 117 bits per transform
-			{ 17, 14, 2 },		// 117 bits per transform
-			{ 17, 15, 1 },		// 117 bits per transform
-			{ 18, 0, 5 },		// 117 bits per transform
-			{ 18, 1, 2 },		// 117 bits per transform
-			{ 18, 2, 1 },		// 117 bits per transform
-			{ 18, 5, 0 },		// 117 bits per transform
-			{ 0, 6, 18 },		// 120 bits per transform
-			{ 0, 18, 6 },		// 120 bits per transform
-			{ 1, 3, 18 },		// 120 bits per transform
-			{ 1, 16, 17 },		// 120 bits per transform
-			{ 1, 17, 16 },		// 120 bits per transform
-			{ 1, 18, 3 },		// 120 bits per transform
-			{ 2, 2, 18 },		// 120 bits per transform
-			{ 2, 15, 17 },		// 120 bits per transform
-			{ 2, 16, 16 },		// 120 bits per transform
-			{ 2, 17, 15 },		// 120 bits per transform
-			{ 2, 18, 2 },		// 120 bits per transform
-			{ 3, 1, 18 },		// 120 bits per transform
-			{ 3, 14, 17 },		// 120 bits per transform
-			{ 3, 15, 16 },		// 120 bits per transform
-			{ 3, 16, 15 },		// 120 bits per transform
-			{ 3, 17, 14 },		// 120 bits per transform
-			{ 3, 18, 1 },		// 120 bits per transform
-			{ 4, 13, 17 },		// 120 bits per transform
-			{ 4, 14, 16 },		// 120 bits per transform
-			{ 4, 15, 15 },		// 120 bits per transform
-			{ 4, 16, 14 },		// 120 bits per transform
-			{ 4, 17, 13 },		// 120 bits per transform
-			{ 5, 12, 17 },		// 120 bits per transform
-			{ 5, 13, 16 },		// 120 bits per transform
-			{ 5, 14, 15 },		// 120 bits per transform
-			{ 5, 15, 14 },		// 120 bits per transform
-			{ 5, 16, 13 },		// 120 bits per transform
-			{ 5, 17, 12 },		// 120 bits per transform
-			{ 6, 0, 18 },		// 120 bits per transform
-			{ 6, 11, 17 },		// 120 bits per transform
-			{ 6, 12, 16 },		// 120 bits per transform
-			{ 6, 13, 15 },		// 120 bits per transform
-			{ 6, 14, 14 },		// 120 bits per transform
-			{ 6, 15, 13 },		// 120 bits per transform
-			{ 6, 16, 12 },		// 120 bits per transform
-			{ 6, 17, 11 },		// 120 bits per transform
-			{ 6, 18, 0 },		// 120 bits per transform
-			{ 7, 10, 17 },		// 120 bits per transform
-			{ 7, 11, 16 },		// 120 bits per transform
-			{ 7, 12, 15 },		// 120 bits per transform
-			{ 7, 13, 14 },		// 120 bits per transform
-			{ 7, 14, 13 },		// 120 bits per transform
-			{ 7, 15, 12 },		// 120 bits per transform
-			{ 7, 16, 11 },		// 120 bits per transform
-			{ 7, 17, 10 },		// 120 bits per transform
-			{ 8, 9, 17 },		// 120 bits per transform
-			{ 8, 10, 16 },		// 120 bits per transform
-			{ 8, 11, 15 },		// 120 bits per transform
-			{ 8, 12, 14 },		// 120 bits per transform
-			{ 8, 13, 13 },		// 120 bits per transform
-			{ 8, 14, 12 },		// 120 bits per transform
-			{ 8, 15, 11 },		// 120 bits per transform
-			{ 8, 16, 10 },		// 120 bits per transform
-			{ 8, 17, 9 },		// 120 bits per transform
-			{ 9, 8, 17 },		// 120 bits per transform
-			{ 9, 9, 16 },		// 120 bits per transform
-			{ 9, 10, 15 },		// 120 bits per transform
-			{ 9, 11, 14 },		// 120 bits per transform
-			{ 9, 12, 13 },		// 120 bits per transform
-			{ 9, 13, 12 },		// 120 bits per transform
-			{ 9, 14, 11 },		// 120 bits per transform
-			{ 9, 15, 10 },		// 120 bits per transform
-			{ 9, 16, 9 },		// 120 bits per transform
-			{ 9, 17, 8 },		// 120 bits per transform
-			{ 10, 7, 17 },		// 120 bits per transform
-			{ 10, 8, 16 },		// 120 bits per transform
-			{ 10, 9, 15 },		// 120 bits per transform
-			{ 10, 10, 14 },		// 120 bits per transform
-			{ 10, 11, 13 },		// 120 bits per transform
-			{ 10, 12, 12 },		// 120 bits per transform
-			{ 10, 13, 11 },		// 120 bits per transform
-			{ 10, 14, 10 },		// 120 bits per transform
-			{ 10, 15, 9 },		// 120 bits per transform
-			{ 10, 16, 8 },		// 120 bits per transform
-			{ 10, 17, 7 },		// 120 bits per transform
-			{ 11, 6, 17 },		// 120 bits per transform
-			{ 11, 7, 16 },		// 120 bits per transform
-			{ 11, 8, 15 },		// 120 bits per transform
-			{ 11, 9, 14 },		// 120 bits per transform
-			{ 11, 10, 13 },		// 120 bits per transform
-			{ 11, 11, 12 },		// 120 bits per transform
-			{ 11, 12, 11 },		// 120 bits per transform
-			{ 11, 13, 10 },		// 120 bits per transform
-			{ 11, 14, 9 },		// 120 bits per transform
-			{ 11, 15, 8 },		// 120 bits per transform
-			{ 11, 16, 7 },		// 120 bits per transform
-			{ 11, 17, 6 },		// 120 bits per transform
-			{ 12, 5, 17 },		// 120 bits per transform
-			{ 12, 6, 16 },		// 120 bits per transform
-			{ 12, 7, 15 },		// 120 bits per transform
-			{ 12, 8, 14 },		// 120 bits per transform
-			{ 12, 9, 13 },		// 120 bits per transform
-			{ 12, 10, 12 },		// 120 bits per transform
-			{ 12, 11, 11 },		// 120 bits per transform
-			{ 12, 12, 10 },		// 120 bits per transform
-			{ 12, 13, 9 },		// 120 bits per transform
-			{ 12, 14, 8 },		// 120 bits per transform
-			{ 12, 15, 7 },		// 120 bits per transform
-			{ 12, 16, 6 },		// 120 bits per transform
-			{ 12, 17, 5 },		// 120 bits per transform
-			{ 13, 4, 17 },		// 120 bits per transform
-			{ 13, 5, 16 },		// 120 bits per transform
-			{ 13, 6, 15 },		// 120 bits per transform
-			{ 13, 7, 14 },		// 120 bits per transform
-			{ 13, 8, 13 },		// 120 bits per transform
-			{ 13, 9, 12 },		// 120 bits per transform
-			{ 13, 10, 11 },		// 120 bits per transform
-			{ 13, 11, 10 },		// 120 bits per transform
-			{ 13, 12, 9 },		// 120 bits per transform
-			{ 13, 13, 8 },		// 120 bits per transform
-			{ 13, 14, 7 },		// 120 bits per transform
-			{ 13, 15, 6 },		// 120 bits per transform
-			{ 13, 16, 5 },		// 120 bits per transform
-			{ 13, 17, 4 },		// 120 bits per transform
-			{ 14, 3, 17 },		// 120 bits per transform
-			{ 14, 4, 16 },		// 120 bits per transform
-			{ 14, 5, 15 },		// 120 bits per transform
-			{ 14, 6, 14 },		// 120 bits per transform
-			{ 14, 7, 13 },		// 120 bits per transform
-			{ 14, 8, 12 },		// 120 bits per transform
-			{ 14, 9, 11 },		// 120 bits per transform
-			{ 14, 10, 10 },		// 120 bits per transform
-			{ 14, 11, 9 },		// 120 bits per transform
-			{ 14, 12, 8 },		// 120 bits per transform
-			{ 14, 13, 7 },		// 120 bits per transform
-			{ 14, 14, 6 },		// 120 bits per transform
-			{ 14, 15, 5 },		// 120 bits per transform
-			{ 14, 16, 4 },		// 120 bits per transform
-			{ 14, 17, 3 },		// 120 bits per transform
-			{ 15, 2, 17 },		// 120 bits per transform
-			{ 15, 3, 16 },		// 120 bits per transform
-			{ 15, 4, 15 },		// 120 bits per transform
-			{ 15, 5, 14 },		// 120 bits per transform
-			{ 15, 6, 13 },		// 120 bits per transform
-			{ 15, 7, 12 },		// 120 bits per transform
-			{ 15, 8, 11 },		// 120 bits per transform
-			{ 15, 9, 10 },		// 120 bits per transform
-			{ 15, 10, 9 },		// 120 bits per transform
-			{ 15, 11, 8 },		// 120 bits per transform
-			{ 15, 12, 7 },		// 120 bits per transform
-			{ 15, 13, 6 },		// 120 bits per transform
-			{ 15, 14, 5 },		// 120 bits per transform
-			{ 15, 15, 4 },		// 120 bits per transform
-			{ 15, 16, 3 },		// 120 bits per transform
-			{ 15, 17, 2 },		// 120 bits per transform
-			{ 16, 1, 17 },		// 120 bits per transform
-			{ 16, 2, 16 },		// 120 bits per transform
-			{ 16, 3, 15 },		// 120 bits per transform
-			{ 16, 4, 14 },		// 120 bits per transform
-			{ 16, 5, 13 },		// 120 bits per transform
-			{ 16, 6, 12 },		// 120 bits per transform
-			{ 16, 7, 11 },		// 120 bits per transform
-			{ 16, 8, 10 },		// 120 bits per transform
-			{ 16, 9, 9 },		// 120 bits per transform
-			{ 16, 10, 8 },		// 120 bits per transform
-			{ 16, 11, 7 },		// 120 bits per transform
-			{ 16, 12, 6 },		// 120 bits per transform
-			{ 16, 13, 5 },		// 120 bits per transform
-			{ 16, 14, 4 },		// 120 bits per transform
-			{ 16, 15, 3 },		// 120 bits per transform
-			{ 16, 16, 2 },		// 120 bits per transform
-			{ 16, 17, 1 },		// 120 bits per transform
-			{ 17, 1, 16 },		// 120 bits per transform
-			{ 17, 2, 15 },		// 120 bits per transform
-			{ 17, 3, 14 },		// 120 bits per transform
-			{ 17, 4, 13 },		// 120 bits per transform
-			{ 17, 5, 12 },		// 120 bits per transform
-			{ 17, 6, 11 },		// 120 bits per transform
-			{ 17, 7, 10 },		// 120 bits per transform
-			{ 17, 8, 9 },		// 120 bits per transform
-			{ 17, 9, 8 },		// 120 bits per transform
-			{ 17, 10, 7 },		// 120 bits per transform
-			{ 17, 11, 6 },		// 120 bits per transform
-			{ 17, 12, 5 },		// 120 bits per transform
-			{ 17, 13, 4 },		// 120 bits per transform
-			{ 17, 14, 3 },		// 120 bits per transform
-			{ 17, 15, 2 },		// 120 bits per transform
-			{ 17, 16, 1 },		// 120 bits per transform
-			{ 18, 0, 6 },		// 120 bits per transform
-			{ 18, 1, 3 },		// 120 bits per transform
-			{ 18, 2, 2 },		// 120 bits per transform
-			{ 18, 3, 1 },		// 120 bits per transform
-			{ 18, 6, 0 },		// 120 bits per transform
-			{ 0, 7, 18 },		// 123 bits per transform
-			{ 0, 18, 7 },		// 123 bits per transform
-			{ 1, 4, 18 },		// 123 bits per transform
-			{ 1, 17, 17 },		// 123 bits per transform
-			{ 1, 18, 4 },		// 123 bits per transform
-			{ 2, 3, 18 },		// 123 bits per transform
-			{ 2, 16, 17 },		// 123 bits per transform
-			{ 2, 17, 16 },		// 123 bits per transform
-			{ 2, 18, 3 },		// 123 bits per transform
-			{ 3, 2, 18 },		// 123 bits per transform
-			{ 3, 15, 17 },		// 123 bits per transform
-			{ 3, 16, 16 },		// 123 bits per transform
-			{ 3, 17, 15 },		// 123 bits per transform
-			{ 3, 18, 2 },		// 123 bits per transform
-			{ 4, 1, 18 },		// 123 bits per transform
-			{ 4, 14, 17 },		// 123 bits per transform
-			{ 4, 15, 16 },		// 123 bits per transform
-			{ 4, 16, 15 },		// 123 bits per transform
-			{ 4, 17, 14 },		// 123 bits per transform
-			{ 4, 18, 1 },		// 123 bits per transform
-			{ 5, 13, 17 },		// 123 bits per transform
-			{ 5, 14, 16 },		// 123 bits per transform
-			{ 5, 15, 15 },		// 123 bits per transform
-			{ 5, 16, 14 },		// 123 bits per transform
-			{ 5, 17, 13 },		// 123 bits per transform
-			{ 6, 12, 17 },		// 123 bits per transform
-			{ 6, 13, 16 },		// 123 bits per transform
-			{ 6, 14, 15 },		// 123 bits per transform
-			{ 6, 15, 14 },		// 123 bits per transform
-			{ 6, 16, 13 },		// 123 bits per transform
-			{ 6, 17, 12 },		// 123 bits per transform
-			{ 7, 0, 18 },		// 123 bits per transform
-			{ 7, 11, 17 },		// 123 bits per transform
-			{ 7, 12, 16 },		// 123 bits per transform
-			{ 7, 13, 15 },		// 123 bits per transform
-			{ 7, 14, 14 },		// 123 bits per transform
-			{ 7, 15, 13 },		// 123 bits per transform
-			{ 7, 16, 12 },		// 123 bits per transform
-			{ 7, 17, 11 },		// 123 bits per transform
-			{ 7, 18, 0 },		// 123 bits per transform
-			{ 8, 10, 17 },		// 123 bits per transform
-			{ 8, 11, 16 },		// 123 bits per transform
-			{ 8, 12, 15 },		// 123 bits per transform
-			{ 8, 13, 14 },		// 123 bits per transform
-			{ 8, 14, 13 },		// 123 bits per transform
-			{ 8, 15, 12 },		// 123 bits per transform
-			{ 8, 16, 11 },		// 123 bits per transform
-			{ 8, 17, 10 },		// 123 bits per transform
-			{ 9, 9, 17 },		// 123 bits per transform
-			{ 9, 10, 16 },		// 123 bits per transform
-			{ 9, 11, 15 },		// 123 bits per transform
-			{ 9, 12, 14 },		// 123 bits per transform
-			{ 9, 13, 13 },		// 123 bits per transform
-			{ 9, 14, 12 },		// 123 bits per transform
-			{ 9, 15, 11 },		// 123 bits per transform
-			{ 9, 16, 10 },		// 123 bits per transform
-			{ 9, 17, 9 },		// 123 bits per transform
-			{ 10, 8, 17 },		// 123 bits per transform
-			{ 10, 9, 16 },		// 123 bits per transform
-			{ 10, 10, 15 },		// 123 bits per transform
-			{ 10, 11, 14 },		// 123 bits per transform
-			{ 10, 12, 13 },		// 123 bits per transform
-			{ 10, 13, 12 },		// 123 bits per transform
-			{ 10, 14, 11 },		// 123 bits per transform
-			{ 10, 15, 10 },		// 123 bits per transform
-			{ 10, 16, 9 },		// 123 bits per transform
-			{ 10, 17, 8 },		// 123 bits per transform
-			{ 11, 7, 17 },		// 123 bits per transform
-			{ 11, 8, 16 },		// 123 bits per transform
-			{ 11, 9, 15 },		// 123 bits per transform
-			{ 11, 10, 14 },		// 123 bits per transform
-			{ 11, 11, 13 },		// 123 bits per transform
-			{ 11, 12, 12 },		// 123 bits per transform
-			{ 11, 13, 11 },		// 123 bits per transform
-			{ 11, 14, 10 },		// 123 bits per transform
-			{ 11, 15, 9 },		// 123 bits per transform
-			{ 11, 16, 8 },		// 123 bits per transform
-			{ 11, 17, 7 },		// 123 bits per transform
-			{ 12, 6, 17 },		// 123 bits per transform
-			{ 12, 7, 16 },		// 123 bits per transform
-			{ 12, 8, 15 },		// 123 bits per transform
-			{ 12, 9, 14 },		// 123 bits per transform
-			{ 12, 10, 13 },		// 123 bits per transform
-			{ 12, 11, 12 },		// 123 bits per transform
-			{ 12, 12, 11 },		// 123 bits per transform
-			{ 12, 13, 10 },		// 123 bits per transform
-			{ 12, 14, 9 },		// 123 bits per transform
-			{ 12, 15, 8 },		// 123 bits per transform
-			{ 12, 16, 7 },		// 123 bits per transform
-			{ 12, 17, 6 },		// 123 bits per transform
-			{ 13, 5, 17 },		// 123 bits per transform
-			{ 13, 6, 16 },		// 123 bits per transform
-			{ 13, 7, 15 },		// 123 bits per transform
-			{ 13, 8, 14 },		// 123 bits per transform
-			{ 13, 9, 13 },		// 123 bits per transform
-			{ 13, 10, 12 },		// 123 bits per transform
-			{ 13, 11, 11 },		// 123 bits per transform
-			{ 13, 12, 10 },		// 123 bits per transform
-			{ 13, 13, 9 },		// 123 bits per transform
-			{ 13, 14, 8 },		// 123 bits per transform
-			{ 13, 15, 7 },		// 123 bits per transform
-			{ 13, 16, 6 },		// 123 bits per transform
-			{ 13, 17, 5 },		// 123 bits per transform
-			{ 14, 4, 17 },		// 123 bits per transform
-			{ 14, 5, 16 },		// 123 bits per transform
-			{ 14, 6, 15 },		// 123 bits per transform
-			{ 14, 7, 14 },		// 123 bits per transform
-			{ 14, 8, 13 },		// 123 bits per transform
-			{ 14, 9, 12 },		// 123 bits per transform
-			{ 14, 10, 11 },		// 123 bits per transform
-			{ 14, 11, 10 },		// 123 bits per transform
-			{ 14, 12, 9 },		// 123 bits per transform
-			{ 14, 13, 8 },		// 123 bits per transform
-			{ 14, 14, 7 },		// 123 bits per transform
-			{ 14, 15, 6 },		// 123 bits per transform
-			{ 14, 16, 5 },		// 123 bits per transform
-			{ 14, 17, 4 },		// 123 bits per transform
-			{ 15, 3, 17 },		// 123 bits per transform
-			{ 15, 4, 16 },		// 123 bits per transform
-			{ 15, 5, 15 },		// 123 bits per transform
-			{ 15, 6, 14 },		// 123 bits per transform
-			{ 15, 7, 13 },		// 123 bits per transform
-			{ 15, 8, 12 },		// 123 bits per transform
-			{ 15, 9, 11 },		// 123 bits per transform
-			{ 15, 10, 10 },		// 123 bits per transform
-			{ 15, 11, 9 },		// 123 bits per transform
-			{ 15, 12, 8 },		// 123 bits per transform
-			{ 15, 13, 7 },		// 123 bits per transform
-			{ 15, 14, 6 },		// 123 bits per transform
-			{ 15, 15, 5 },		// 123 bits per transform
-			{ 15, 16, 4 },		// 123 bits per transform
-			{ 15, 17, 3 },		// 123 bits per transform
-			{ 16, 2, 17 },		// 123 bits per transform
-			{ 16, 3, 16 },		// 123 bits per transform
-			{ 16, 4, 15 },		// 123 bits per transform
-			{ 16, 5, 14 },		// 123 bits per transform
-			{ 16, 6, 13 },		// 123 bits per transform
-			{ 16, 7, 12 },		// 123 bits per transform
-			{ 16, 8, 11 },		// 123 bits per transform
-			{ 16, 9, 10 },		// 123 bits per transform
-			{ 16, 10, 9 },		// 123 bits per transform
-			{ 16, 11, 8 },		// 123 bits per transform
-			{ 16, 12, 7 },		// 123 bits per transform
-			{ 16, 13, 6 },		// 123 bits per transform
-			{ 16, 14, 5 },		// 123 bits per transform
-			{ 16, 15, 4 },		// 123 bits per transform
-			{ 16, 16, 3 },		// 123 bits per transform
-			{ 16, 17, 2 },		// 123 bits per transform
-			{ 17, 1, 17 },		// 123 bits per transform
-			{ 17, 2, 16 },		// 123 bits per transform
-			{ 17, 3, 15 },		// 123 bits per transform
-			{ 17, 4, 14 },		// 123 bits per transform
-			{ 17, 5, 13 },		// 123 bits per transform
-			{ 17, 6, 12 },		// 123 bits per transform
-			{ 17, 7, 11 },		// 123 bits per transform
-			{ 17, 8, 10 },		// 123 bits per transform
-			{ 17, 9, 9 },		// 123 bits per transform
-			{ 17, 10, 8 },		// 123 bits per transform
-			{ 17, 11, 7 },		// 123 bits per transform
-			{ 17, 12, 6 },		// 123 bits per transform
-			{ 17, 13, 5 },		// 123 bits per transform
-			{ 17, 14, 4 },		// 123 bits per transform
-			{ 17, 15, 3 },		// 123 bits per transform
-			{ 17, 16, 2 },		// 123 bits per transform
-			{ 17, 17, 1 },		// 123 bits per transform
-			{ 18, 0, 7 },		// 123 bits per transform
-			{ 18, 1, 4 },		// 123 bits per transform
-			{ 18, 2, 3 },		// 123 bits per transform
-			{ 18, 3, 2 },		// 123 bits per transform
-			{ 18, 4, 1 },		// 123 bits per transform
-			{ 18, 7, 0 },		// 123 bits per transform
-			{ 0, 8, 18 },		// 126 bits per transform
-			{ 0, 18, 8 },		// 126 bits per transform
-			{ 1, 5, 18 },		// 126 bits per transform
-			{ 1, 18, 5 },		// 126 bits per transform
-			{ 2, 4, 18 },		// 126 bits per transform
-			{ 2, 17, 17 },		// 126 bits per transform
-			{ 2, 18, 4 },		// 126 bits per transform
-			{ 3, 3, 18 },		// 126 bits per transform
-			{ 3, 16, 17 },		// 126 bits per transform
-			{ 3, 17, 16 },		// 126 bits per transform
-			{ 3, 18, 3 },		// 126 bits per transform
-			{ 4, 2, 18 },		// 126 bits per transform
-			{ 4, 15, 17 },		// 126 bits per transform
-			{ 4, 16, 16 },		// 126 bits per transform
-			{ 4, 17, 15 },		// 126 bits per transform
-			{ 4, 18, 2 },		// 126 bits per transform
-			{ 5, 1, 18 },		// 126 bits per transform
-			{ 5, 14, 17 },		// 126 bits per transform
-			{ 5, 15, 16 },		// 126 bits per transform
-			{ 5, 16, 15 },		// 126 bits per transform
-			{ 5, 17, 14 },		// 126 bits per transform
-			{ 5, 18, 1 },		// 126 bits per transform
-			{ 6, 13, 17 },		// 126 bits per transform
-			{ 6, 14, 16 },		// 126 bits per transform
-			{ 6, 15, 15 },		// 126 bits per transform
-			{ 6, 16, 14 },		// 126 bits per transform
-			{ 6, 17, 13 },		// 126 bits per transform
-			{ 7, 12, 17 },		// 126 bits per transform
-			{ 7, 13, 16 },		// 126 bits per transform
-			{ 7, 14, 15 },		// 126 bits per transform
-			{ 7, 15, 14 },		// 126 bits per transform
-			{ 7, 16, 13 },		// 126 bits per transform
-			{ 7, 17, 12 },		// 126 bits per transform
-			{ 8, 0, 18 },		// 126 bits per transform
-			{ 8, 11, 17 },		// 126 bits per transform
-			{ 8, 12, 16 },		// 126 bits per transform
-			{ 8, 13, 15 },		// 126 bits per transform
-			{ 8, 14, 14 },		// 126 bits per transform
-			{ 8, 15, 13 },		// 126 bits per transform
-			{ 8, 16, 12 },		// 126 bits per transform
-			{ 8, 17, 11 },		// 126 bits per transform
-			{ 8, 18, 0 },		// 126 bits per transform
-			{ 9, 10, 17 },		// 126 bits per transform
-			{ 9, 11, 16 },		// 126 bits per transform
-			{ 9, 12, 15 },		// 126 bits per transform
-			{ 9, 13, 14 },		// 126 bits per transform
-			{ 9, 14, 13 },		// 126 bits per transform
-			{ 9, 15, 12 },		// 126 bits per transform
-			{ 9, 16, 11 },		// 126 bits per transform
-			{ 9, 17, 10 },		// 126 bits per transform
-			{ 10, 9, 17 },		// 126 bits per transform
-			{ 10, 10, 16 },		// 126 bits per transform
-			{ 10, 11, 15 },		// 126 bits per transform
-			{ 10, 12, 14 },		// 126 bits per transform
-			{ 10, 13, 13 },		// 126 bits per transform
-			{ 10, 14, 12 },		// 126 bits per transform
-			{ 10, 15, 11 },		// 126 bits per transform
-			{ 10, 16, 10 },		// 126 bits per transform
-			{ 10, 17, 9 },		// 126 bits per transform
-			{ 11, 8, 17 },		// 126 bits per transform
-			{ 11, 9, 16 },		// 126 bits per transform
-			{ 11, 10, 15 },		// 126 bits per transform
-			{ 11, 11, 14 },		// 126 bits per transform
-			{ 11, 12, 13 },		// 126 bits per transform
-			{ 11, 13, 12 },		// 126 bits per transform
-			{ 11, 14, 11 },		// 126 bits per transform
-			{ 11, 15, 10 },		// 126 bits per transform
-			{ 11, 16, 9 },		// 126 bits per transform
-			{ 11, 17, 8 },		// 126 bits per transform
-			{ 12, 7, 17 },		// 126 bits per transform
-			{ 12, 8, 16 },		// 126 bits per transform
-			{ 12, 9, 15 },		// 126 bits per transform
-			{ 12, 10, 14 },		// 126 bits per transform
-			{ 12, 11, 13 },		// 126 bits per transform
-			{ 12, 12, 12 },		// 126 bits per transform
-			{ 12, 13, 11 },		// 126 bits per transform
-			{ 12, 14, 10 },		// 126 bits per transform
-			{ 12, 15, 9 },		// 126 bits per transform
-			{ 12, 16, 8 },		// 126 bits per transform
-			{ 12, 17, 7 },		// 126 bits per transform
-			{ 13, 6, 17 },		// 126 bits per transform
-			{ 13, 7, 16 },		// 126 bits per transform
-			{ 13, 8, 15 },		// 126 bits per transform
-			{ 13, 9, 14 },		// 126 bits per transform
-			{ 13, 10, 13 },		// 126 bits per transform
-			{ 13, 11, 12 },		// 126 bits per transform
-			{ 13, 12, 11 },		// 126 bits per transform
-			{ 13, 13, 10 },		// 126 bits per transform
-			{ 13, 14, 9 },		// 126 bits per transform
-			{ 13, 15, 8 },		// 126 bits per transform
-			{ 13, 16, 7 },		// 126 bits per transform
-			{ 13, 17, 6 },		// 126 bits per transform
-			{ 14, 5, 17 },		// 126 bits per transform
-			{ 14, 6, 16 },		// 126 bits per transform
-			{ 14, 7, 15 },		// 126 bits per transform
-			{ 14, 8, 14 },		// 126 bits per transform
-			{ 14, 9, 13 },		// 126 bits per transform
-			{ 14, 10, 12 },		// 126 bits per transform
-			{ 14, 11, 11 },		// 126 bits per transform
-			{ 14, 12, 10 },		// 126 bits per transform
-			{ 14, 13, 9 },		// 126 bits per transform
-			{ 14, 14, 8 },		// 126 bits per transform
-			{ 14, 15, 7 },		// 126 bits per transform
-			{ 14, 16, 6 },		// 126 bits per transform
-			{ 14, 17, 5 },		// 126 bits per transform
-			{ 15, 4, 17 },		// 126 bits per transform
-			{ 15, 5, 16 },		// 126 bits per transform
-			{ 15, 6, 15 },		// 126 bits per transform
-			{ 15, 7, 14 },		// 126 bits per transform
-			{ 15, 8, 13 },		// 126 bits per transform
-			{ 15, 9, 12 },		// 126 bits per transform
-			{ 15, 10, 11 },		// 126 bits per transform
-			{ 15, 11, 10 },		// 126 bits per transform
-			{ 15, 12, 9 },		// 126 bits per transform
-			{ 15, 13, 8 },		// 126 bits per transform
-			{ 15, 14, 7 },		// 126 bits per transform
-			{ 15, 15, 6 },		// 126 bits per transform
-			{ 15, 16, 5 },		// 126 bits per transform
-			{ 15, 17, 4 },		// 126 bits per transform
-			{ 16, 3, 17 },		// 126 bits per transform
-			{ 16, 4, 16 },		// 126 bits per transform
-			{ 16, 5, 15 },		// 126 bits per transform
-			{ 16, 6, 14 },		// 126 bits per transform
-			{ 16, 7, 13 },		// 126 bits per transform
-			{ 16, 8, 12 },		// 126 bits per transform
-			{ 16, 9, 11 },		// 126 bits per transform
-			{ 16, 10, 10 },		// 126 bits per transform
-			{ 16, 11, 9 },		// 126 bits per transform
-			{ 16, 12, 8 },		// 126 bits per transform
-			{ 16, 13, 7 },		// 126 bits per transform
-			{ 16, 14, 6 },		// 126 bits per transform
-			{ 16, 15, 5 },		// 126 bits per transform
-			{ 16, 16, 4 },		// 126 bits per transform
-			{ 16, 17, 3 },		// 126 bits per transform
-			{ 17, 2, 17 },		// 126 bits per transform
-			{ 17, 3, 16 },		// 126 bits per transform
-			{ 17, 4, 15 },		// 126 bits per transform
-			{ 17, 5, 14 },		// 126 bits per transform
-			{ 17, 6, 13 },		// 126 bits per transform
-			{ 17, 7, 12 },		// 126 bits per transform
-			{ 17, 8, 11 },		// 126 bits per transform
-			{ 17, 9, 10 },		// 126 bits per transform
-			{ 17, 10, 9 },		// 126 bits per transform
-			{ 17, 11, 8 },		// 126 bits per transform
-			{ 17, 12, 7 },		// 126 bits per transform
-			{ 17, 13, 6 },		// 126 bits per transform
-			{ 17, 14, 5 },		// 126 bits per transform
-			{ 17, 15, 4 },		// 126 bits per transform
-			{ 17, 16, 3 },		// 126 bits per transform
-			{ 17, 17, 2 },		// 126 bits per transform
-			{ 18, 0, 8 },		// 126 bits per transform
-			{ 18, 1, 5 },		// 126 bits per transform
-			{ 18, 2, 4 },		// 126 bits per transform
-			{ 18, 3, 3 },		// 126 bits per transform
-			{ 18, 4, 2 },		// 126 bits per transform
-			{ 18, 5, 1 },		// 126 bits per transform
-			{ 18, 8, 0 },		// 126 bits per transform
-			{ 0, 9, 18 },		// 129 bits per transform
-			{ 0, 18, 9 },		// 129 bits per transform
-			{ 1, 6, 18 },		// 129 bits per transform
-			{ 1, 18, 6 },		// 129 bits per transform
-			{ 2, 5, 18 },		// 129 bits per transform
-			{ 2, 18, 5 },		// 129 bits per transform
-			{ 3, 4, 18 },		// 129 bits per transform
-			{ 3, 17, 17 },		// 129 bits per transform
-			{ 3, 18, 4 },		// 129 bits per transform
-			{ 4, 3, 18 },		// 129 bits per transform
-			{ 4, 16, 17 },		// 129 bits per transform
-			{ 4, 17, 16 },		// 129 bits per transform
-			{ 4, 18, 3 },		// 129 bits per transform
-			{ 5, 2, 18 },		// 129 bits per transform
-			{ 5, 15, 17 },		// 129 bits per transform
-			{ 5, 16, 16 },		// 129 bits per transform
-			{ 5, 17, 15 },		// 129 bits per transform
-			{ 5, 18, 2 },		// 129 bits per transform
-			{ 6, 1, 18 },		// 129 bits per transform
-			{ 6, 14, 17 },		// 129 bits per transform
-			{ 6, 15, 16 },		// 129 bits per transform
-			{ 6, 16, 15 },		// 129 bits per transform
-			{ 6, 17, 14 },		// 129 bits per transform
-			{ 6, 18, 1 },		// 129 bits per transform
-			{ 7, 13, 17 },		// 129 bits per transform
-			{ 7, 14, 16 },		// 129 bits per transform
-			{ 7, 15, 15 },		// 129 bits per transform
-			{ 7, 16, 14 },		// 129 bits per transform
-			{ 7, 17, 13 },		// 129 bits per transform
-			{ 8, 12, 17 },		// 129 bits per transform
-			{ 8, 13, 16 },		// 129 bits per transform
-			{ 8, 14, 15 },		// 129 bits per transform
-			{ 8, 15, 14 },		// 129 bits per transform
-			{ 8, 16, 13 },		// 129 bits per transform
-			{ 8, 17, 12 },		// 129 bits per transform
-			{ 9, 0, 18 },		// 129 bits per transform
-			{ 9, 11, 17 },		// 129 bits per transform
-			{ 9, 12, 16 },		// 129 bits per transform
-			{ 9, 13, 15 },		// 129 bits per transform
-			{ 9, 14, 14 },		// 129 bits per transform
-			{ 9, 15, 13 },		// 129 bits per transform
-			{ 9, 16, 12 },		// 129 bits per transform
-			{ 9, 17, 11 },		// 129 bits per transform
-			{ 9, 18, 0 },		// 129 bits per transform
-			{ 10, 10, 17 },		// 129 bits per transform
-			{ 10, 11, 16 },		// 129 bits per transform
-			{ 10, 12, 15 },		// 129 bits per transform
-			{ 10, 13, 14 },		// 129 bits per transform
-			{ 10, 14, 13 },		// 129 bits per transform
-			{ 10, 15, 12 },		// 129 bits per transform
-			{ 10, 16, 11 },		// 129 bits per transform
-			{ 10, 17, 10 },		// 129 bits per transform
-			{ 11, 9, 17 },		// 129 bits per transform
-			{ 11, 10, 16 },		// 129 bits per transform
-			{ 11, 11, 15 },		// 129 bits per transform
-			{ 11, 12, 14 },		// 129 bits per transform
-			{ 11, 13, 13 },		// 129 bits per transform
-			{ 11, 14, 12 },		// 129 bits per transform
-			{ 11, 15, 11 },		// 129 bits per transform
-			{ 11, 16, 10 },		// 129 bits per transform
-			{ 11, 17, 9 },		// 129 bits per transform
-			{ 12, 8, 17 },		// 129 bits per transform
-			{ 12, 9, 16 },		// 129 bits per transform
-			{ 12, 10, 15 },		// 129 bits per transform
-			{ 12, 11, 14 },		// 129 bits per transform
-			{ 12, 12, 13 },		// 129 bits per transform
-			{ 12, 13, 12 },		// 129 bits per transform
-			{ 12, 14, 11 },		// 129 bits per transform
-			{ 12, 15, 10 },		// 129 bits per transform
-			{ 12, 16, 9 },		// 129 bits per transform
-			{ 12, 17, 8 },		// 129 bits per transform
-			{ 13, 7, 17 },		// 129 bits per transform
-			{ 13, 8, 16 },		// 129 bits per transform
-			{ 13, 9, 15 },		// 129 bits per transform
-			{ 13, 10, 14 },		// 129 bits per transform
-			{ 13, 11, 13 },		// 129 bits per transform
-			{ 13, 12, 12 },		// 129 bits per transform
-			{ 13, 13, 11 },		// 129 bits per transform
-			{ 13, 14, 10 },		// 129 bits per transform
-			{ 13, 15, 9 },		// 129 bits per transform
-			{ 13, 16, 8 },		// 129 bits per transform
-			{ 13, 17, 7 },		// 129 bits per transform
-			{ 14, 6, 17 },		// 129 bits per transform
-			{ 14, 7, 16 },		// 129 bits per transform
-			{ 14, 8, 15 },		// 129 bits per transform
-			{ 14, 9, 14 },		// 129 bits per transform
-			{ 14, 10, 13 },		// 129 bits per transform
-			{ 14, 11, 12 },		// 129 bits per transform
-			{ 14, 12, 11 },		// 129 bits per transform
-			{ 14, 13, 10 },		// 129 bits per transform
-			{ 14, 14, 9 },		// 129 bits per transform
-			{ 14, 15, 8 },		// 129 bits per transform
-			{ 14, 16, 7 },		// 129 bits per transform
-			{ 14, 17, 6 },		// 129 bits per transform
-			{ 15, 5, 17 },		// 129 bits per transform
-			{ 15, 6, 16 },		// 129 bits per transform
-			{ 15, 7, 15 },		// 129 bits per transform
-			{ 15, 8, 14 },		// 129 bits per transform
-			{ 15, 9, 13 },		// 129 bits per transform
-			{ 15, 10, 12 },		// 129 bits per transform
-			{ 15, 11, 11 },		// 129 bits per transform
-			{ 15, 12, 10 },		// 129 bits per transform
-			{ 15, 13, 9 },		// 129 bits per transform
-			{ 15, 14, 8 },		// 129 bits per transform
-			{ 15, 15, 7 },		// 129 bits per transform
-			{ 15, 16, 6 },		// 129 bits per transform
-			{ 15, 17, 5 },		// 129 bits per transform
-			{ 16, 4, 17 },		// 129 bits per transform
-			{ 16, 5, 16 },		// 129 bits per transform
-			{ 16, 6, 15 },		// 129 bits per transform
-			{ 16, 7, 14 },		// 129 bits per transform
-			{ 16, 8, 13 },		// 129 bits per transform
-			{ 16, 9, 12 },		// 129 bits per transform
-			{ 16, 10, 11 },		// 129 bits per transform
-			{ 16, 11, 10 },		// 129 bits per transform
-			{ 16, 12, 9 },		// 129 bits per transform
-			{ 16, 13, 8 },		// 129 bits per transform
-			{ 16, 14, 7 },		// 129 bits per transform
-			{ 16, 15, 6 },		// 129 bits per transform
-			{ 16, 16, 5 },		// 129 bits per transform
-			{ 16, 17, 4 },		// 129 bits per transform
-			{ 17, 3, 17 },		// 129 bits per transform
-			{ 17, 4, 16 },		// 129 bits per transform
-			{ 17, 5, 15 },		// 129 bits per transform
-			{ 17, 6, 14 },		// 129 bits per transform
-			{ 17, 7, 13 },		// 129 bits per transform
-			{ 17, 8, 12 },		// 129 bits per transform
-			{ 17, 9, 11 },		// 129 bits per transform
-			{ 17, 10, 10 },		// 129 bits per transform
-			{ 17, 11, 9 },		// 129 bits per transform
-			{ 17, 12, 8 },		// 129 bits per transform
-			{ 17, 13, 7 },		// 129 bits per transform
-			{ 17, 14, 6 },		// 129 bits per transform
-			{ 17, 15, 5 },		// 129 bits per transform
-			{ 17, 16, 4 },		// 129 bits per transform
-			{ 17, 17, 3 },		// 129 bits per transform
-			{ 18, 0, 9 },		// 129 bits per transform
-			{ 18, 1, 6 },		// 129 bits per transform
-			{ 18, 2, 5 },		// 129 bits per transform
-			{ 18, 3, 4 },		// 129 bits per transform
-			{ 18, 4, 3 },		// 129 bits per transform
-			{ 18, 5, 2 },		// 129 bits per transform
-			{ 18, 6, 1 },		// 129 bits per transform
-			{ 18, 9, 0 },		// 129 bits per transform
-			{ 0, 10, 18 },		// 132 bits per transform
-			{ 0, 18, 10 },		// 132 bits per transform
-			{ 1, 7, 18 },		// 132 bits per transform
-			{ 1, 18, 7 },		// 132 bits per transform
-			{ 2, 6, 18 },		// 132 bits per transform
-			{ 2, 18, 6 },		// 132 bits per transform
-			{ 3, 5, 18 },		// 132 bits per transform
-			{ 3, 18, 5 },		// 132 bits per transform
-			{ 4, 4, 18 },		// 132 bits per transform
-			{ 4, 17, 17 },		// 132 bits per transform
-			{ 4, 18, 4 },		// 132 bits per transform
-			{ 5, 3, 18 },		// 132 bits per transform
-			{ 5, 16, 17 },		// 132 bits per transform
-			{ 5, 17, 16 },		// 132 bits per transform
-			{ 5, 18, 3 },		// 132 bits per transform
-			{ 6, 2, 18 },		// 132 bits per transform
-			{ 6, 15, 17 },		// 132 bits per transform
-			{ 6, 16, 16 },		// 132 bits per transform
-			{ 6, 17, 15 },		// 132 bits per transform
-			{ 6, 18, 2 },		// 132 bits per transform
-			{ 7, 1, 18 },		// 132 bits per transform
-			{ 7, 14, 17 },		// 132 bits per transform
-			{ 7, 15, 16 },		// 132 bits per transform
-			{ 7, 16, 15 },		// 132 bits per transform
-			{ 7, 17, 14 },		// 132 bits per transform
-			{ 7, 18, 1 },		// 132 bits per transform
-			{ 8, 13, 17 },		// 132 bits per transform
-			{ 8, 14, 16 },		// 132 bits per transform
-			{ 8, 15, 15 },		// 132 bits per transform
-			{ 8, 16, 14 },		// 132 bits per transform
-			{ 8, 17, 13 },		// 132 bits per transform
-			{ 9, 12, 17 },		// 132 bits per transform
-			{ 9, 13, 16 },		// 132 bits per transform
-			{ 9, 14, 15 },		// 132 bits per transform
-			{ 9, 15, 14 },		// 132 bits per transform
-			{ 9, 16, 13 },		// 132 bits per transform
-			{ 9, 17, 12 },		// 132 bits per transform
-			{ 10, 0, 18 },		// 132 bits per transform
-			{ 10, 11, 17 },		// 132 bits per transform
-			{ 10, 12, 16 },		// 132 bits per transform
-			{ 10, 13, 15 },		// 132 bits per transform
-			{ 10, 14, 14 },		// 132 bits per transform
-			{ 10, 15, 13 },		// 132 bits per transform
-			{ 10, 16, 12 },		// 132 bits per transform
-			{ 10, 17, 11 },		// 132 bits per transform
-			{ 10, 18, 0 },		// 132 bits per transform
-			{ 11, 10, 17 },		// 132 bits per transform
-			{ 11, 11, 16 },		// 132 bits per transform
-			{ 11, 12, 15 },		// 132 bits per transform
-			{ 11, 13, 14 },		// 132 bits per transform
-			{ 11, 14, 13 },		// 132 bits per transform
-			{ 11, 15, 12 },		// 132 bits per transform
-			{ 11, 16, 11 },		// 132 bits per transform
-			{ 11, 17, 10 },		// 132 bits per transform
-			{ 12, 9, 17 },		// 132 bits per transform
-			{ 12, 10, 16 },		// 132 bits per transform
-			{ 12, 11, 15 },		// 132 bits per transform
-			{ 12, 12, 14 },		// 132 bits per transform
-			{ 12, 13, 13 },		// 132 bits per transform
-			{ 12, 14, 12 },		// 132 bits per transform
-			{ 12, 15, 11 },		// 132 bits per transform
-			{ 12, 16, 10 },		// 132 bits per transform
-			{ 12, 17, 9 },		// 132 bits per transform
-			{ 13, 8, 17 },		// 132 bits per transform
-			{ 13, 9, 16 },		// 132 bits per transform
-			{ 13, 10, 15 },		// 132 bits per transform
-			{ 13, 11, 14 },		// 132 bits per transform
-			{ 13, 12, 13 },		// 132 bits per transform
-			{ 13, 13, 12 },		// 132 bits per transform
-			{ 13, 14, 11 },		// 132 bits per transform
-			{ 13, 15, 10 },		// 132 bits per transform
-			{ 13, 16, 9 },		// 132 bits per transform
-			{ 13, 17, 8 },		// 132 bits per transform
-			{ 14, 7, 17 },		// 132 bits per transform
-			{ 14, 8, 16 },		// 132 bits per transform
-			{ 14, 9, 15 },		// 132 bits per transform
-			{ 14, 10, 14 },		// 132 bits per transform
-			{ 14, 11, 13 },		// 132 bits per transform
-			{ 14, 12, 12 },		// 132 bits per transform
-			{ 14, 13, 11 },		// 132 bits per transform
-			{ 14, 14, 10 },		// 132 bits per transform
-			{ 14, 15, 9 },		// 132 bits per transform
-			{ 14, 16, 8 },		// 132 bits per transform
-			{ 14, 17, 7 },		// 132 bits per transform
-			{ 15, 6, 17 },		// 132 bits per transform
-			{ 15, 7, 16 },		// 132 bits per transform
-			{ 15, 8, 15 },		// 132 bits per transform
-			{ 15, 9, 14 },		// 132 bits per transform
-			{ 15, 10, 13 },		// 132 bits per transform
-			{ 15, 11, 12 },		// 132 bits per transform
-			{ 15, 12, 11 },		// 132 bits per transform
-			{ 15, 13, 10 },		// 132 bits per transform
-			{ 15, 14, 9 },		// 132 bits per transform
-			{ 15, 15, 8 },		// 132 bits per transform
-			{ 15, 16, 7 },		// 132 bits per transform
-			{ 15, 17, 6 },		// 132 bits per transform
-			{ 16, 5, 17 },		// 132 bits per transform
-			{ 16, 6, 16 },		// 132 bits per transform
-			{ 16, 7, 15 },		// 132 bits per transform
-			{ 16, 8, 14 },		// 132 bits per transform
-			{ 16, 9, 13 },		// 132 bits per transform
-			{ 16, 10, 12 },		// 132 bits per transform
-			{ 16, 11, 11 },		// 132 bits per transform
-			{ 16, 12, 10 },		// 132 bits per transform
-			{ 16, 13, 9 },		// 132 bits per transform
-			{ 16, 14, 8 },		// 132 bits per transform
-			{ 16, 15, 7 },		// 132 bits per transform
-			{ 16, 16, 6 },		// 132 bits per transform
-			{ 16, 17, 5 },		// 132 bits per transform
-			{ 17, 4, 17 },		// 132 bits per transform
-			{ 17, 5, 16 },		// 132 bits per transform
-			{ 17, 6, 15 },		// 132 bits per transform
-			{ 17, 7, 14 },		// 132 bits per transform
-			{ 17, 8, 13 },		// 132 bits per transform
-			{ 17, 9, 12 },		// 132 bits per transform
-			{ 17, 10, 11 },		// 132 bits per transform
-			{ 17, 11, 10 },		// 132 bits per transform
-			{ 17, 12, 9 },		// 132 bits per transform
-			{ 17, 13, 8 },		// 132 bits per transform
-			{ 17, 14, 7 },		// 132 bits per transform
-			{ 17, 15, 6 },		// 132 bits per transform
-			{ 17, 16, 5 },		// 132 bits per transform
-			{ 17, 17, 4 },		// 132 bits per transform
-			{ 18, 0, 10 },		// 132 bits per transform
-			{ 18, 1, 7 },		// 132 bits per transform
-			{ 18, 2, 6 },		// 132 bits per transform
-			{ 18, 3, 5 },		// 132 bits per transform
-			{ 18, 4, 4 },		// 132 bits per transform
-			{ 18, 5, 3 },		// 132 bits per transform
-			{ 18, 6, 2 },		// 132 bits per transform
-			{ 18, 7, 1 },		// 132 bits per transform
-			{ 18, 10, 0 },		// 132 bits per transform
-			{ 0, 11, 18 },		// 135 bits per transform
-			{ 0, 18, 11 },		// 135 bits per transform
-			{ 1, 8, 18 },		// 135 bits per transform
-			{ 1, 18, 8 },		// 135 bits per transform
-			{ 2, 7, 18 },		// 135 bits per transform
-			{ 2, 18, 7 },		// 135 bits per transform
-			{ 3, 6, 18 },		// 135 bits per transform
-			{ 3, 18, 6 },		// 135 bits per transform
-			{ 4, 5, 18 },		// 135 bits per transform
-			{ 4, 18, 5 },		// 135 bits per transform
-			{ 5, 4, 18 },		// 135 bits per transform
-			{ 5, 17, 17 },		// 135 bits per transform
-			{ 5, 18, 4 },		// 135 bits per transform
-			{ 6, 3, 18 },		// 135 bits per transform
-			{ 6, 16, 17 },		// 135 bits per transform
-			{ 6, 17, 16 },		// 135 bits per transform
-			{ 6, 18, 3 },		// 135 bits per transform
-			{ 7, 2, 18 },		// 135 bits per transform
-			{ 7, 15, 17 },		// 135 bits per transform
-			{ 7, 16, 16 },		// 135 bits per transform
-			{ 7, 17, 15 },		// 135 bits per transform
-			{ 7, 18, 2 },		// 135 bits per transform
-			{ 8, 1, 18 },		// 135 bits per transform
-			{ 8, 14, 17 },		// 135 bits per transform
-			{ 8, 15, 16 },		// 135 bits per transform
-			{ 8, 16, 15 },		// 135 bits per transform
-			{ 8, 17, 14 },		// 135 bits per transform
-			{ 8, 18, 1 },		// 135 bits per transform
-			{ 9, 13, 17 },		// 135 bits per transform
-			{ 9, 14, 16 },		// 135 bits per transform
-			{ 9, 15, 15 },		// 135 bits per transform
-			{ 9, 16, 14 },		// 135 bits per transform
-			{ 9, 17, 13 },		// 135 bits per transform
-			{ 10, 12, 17 },		// 135 bits per transform
-			{ 10, 13, 16 },		// 135 bits per transform
-			{ 10, 14, 15 },		// 135 bits per transform
-			{ 10, 15, 14 },		// 135 bits per transform
-			{ 10, 16, 13 },		// 135 bits per transform
-			{ 10, 17, 12 },		// 135 bits per transform
-			{ 11, 0, 18 },		// 135 bits per transform
-			{ 11, 11, 17 },		// 135 bits per transform
-			{ 11, 12, 16 },		// 135 bits per transform
-			{ 11, 13, 15 },		// 135 bits per transform
-			{ 11, 14, 14 },		// 135 bits per transform
-			{ 11, 15, 13 },		// 135 bits per transform
-			{ 11, 16, 12 },		// 135 bits per transform
-			{ 11, 17, 11 },		// 135 bits per transform
-			{ 11, 18, 0 },		// 135 bits per transform
-			{ 12, 10, 17 },		// 135 bits per transform
-			{ 12, 11, 16 },		// 135 bits per transform
-			{ 12, 12, 15 },		// 135 bits per transform
-			{ 12, 13, 14 },		// 135 bits per transform
-			{ 12, 14, 13 },		// 135 bits per transform
-			{ 12, 15, 12 },		// 135 bits per transform
-			{ 12, 16, 11 },		// 135 bits per transform
-			{ 12, 17, 10 },		// 135 bits per transform
-			{ 13, 9, 17 },		// 135 bits per transform
-			{ 13, 10, 16 },		// 135 bits per transform
-			{ 13, 11, 15 },		// 135 bits per transform
-			{ 13, 12, 14 },		// 135 bits per transform
-			{ 13, 13, 13 },		// 135 bits per transform
-			{ 13, 14, 12 },		// 135 bits per transform
-			{ 13, 15, 11 },		// 135 bits per transform
-			{ 13, 16, 10 },		// 135 bits per transform
-			{ 13, 17, 9 },		// 135 bits per transform
-			{ 14, 8, 17 },		// 135 bits per transform
-			{ 14, 9, 16 },		// 135 bits per transform
-			{ 14, 10, 15 },		// 135 bits per transform
-			{ 14, 11, 14 },		// 135 bits per transform
-			{ 14, 12, 13 },		// 135 bits per transform
-			{ 14, 13, 12 },		// 135 bits per transform
-			{ 14, 14, 11 },		// 135 bits per transform
-			{ 14, 15, 10 },		// 135 bits per transform
-			{ 14, 16, 9 },		// 135 bits per transform
-			{ 14, 17, 8 },		// 135 bits per transform
-			{ 15, 7, 17 },		// 135 bits per transform
-			{ 15, 8, 16 },		// 135 bits per transform
-			{ 15, 9, 15 },		// 135 bits per transform
-			{ 15, 10, 14 },		// 135 bits per transform
-			{ 15, 11, 13 },		// 135 bits per transform
-			{ 15, 12, 12 },		// 135 bits per transform
-			{ 15, 13, 11 },		// 135 bits per transform
-			{ 15, 14, 10 },		// 135 bits per transform
-			{ 15, 15, 9 },		// 135 bits per transform
-			{ 15, 16, 8 },		// 135 bits per transform
-			{ 15, 17, 7 },		// 135 bits per transform
-			{ 16, 6, 17 },		// 135 bits per transform
-			{ 16, 7, 16 },		// 135 bits per transform
-			{ 16, 8, 15 },		// 135 bits per transform
-			{ 16, 9, 14 },		// 135 bits per transform
-			{ 16, 10, 13 },		// 135 bits per transform
-			{ 16, 11, 12 },		// 135 bits per transform
-			{ 16, 12, 11 },		// 135 bits per transform
-			{ 16, 13, 10 },		// 135 bits per transform
-			{ 16, 14, 9 },		// 135 bits per transform
-			{ 16, 15, 8 },		// 135 bits per transform
-			{ 16, 16, 7 },		// 135 bits per transform
-			{ 16, 17, 6 },		// 135 bits per transform
-			{ 17, 5, 17 },		// 135 bits per transform
-			{ 17, 6, 16 },		// 135 bits per transform
-			{ 17, 7, 15 },		// 135 bits per transform
-			{ 17, 8, 14 },		// 135 bits per transform
-			{ 17, 9, 13 },		// 135 bits per transform
-			{ 17, 10, 12 },		// 135 bits per transform
-			{ 17, 11, 11 },		// 135 bits per transform
-			{ 17, 12, 10 },		// 135 bits per transform
-			{ 17, 13, 9 },		// 135 bits per transform
-			{ 17, 14, 8 },		// 135 bits per transform
-			{ 17, 15, 7 },		// 135 bits per transform
-			{ 17, 16, 6 },		// 135 bits per transform
-			{ 17, 17, 5 },		// 135 bits per transform
-			{ 18, 0, 11 },		// 135 bits per transform
-			{ 18, 1, 8 },		// 135 bits per transform
-			{ 18, 2, 7 },		// 135 bits per transform
-			{ 18, 3, 6 },		// 135 bits per transform
-			{ 18, 4, 5 },		// 135 bits per transform
-			{ 18, 5, 4 },		// 135 bits per transform
-			{ 18, 6, 3 },		// 135 bits per transform
-			{ 18, 7, 2 },		// 135 bits per transform
-			{ 18, 8, 1 },		// 135 bits per transform
-			{ 18, 11, 0 },		// 135 bits per transform
-			{ 0, 12, 18 },		// 138 bits per transform
-			{ 0, 18, 12 },		// 138 bits per transform
-			{ 1, 9, 18 },		// 138 bits per transform
-			{ 1, 18, 9 },		// 138 bits per transform
-			{ 2, 8, 18 },		// 138 bits per transform
-			{ 2, 18, 8 },		// 138 bits per transform
-			{ 3, 7, 18 },		// 138 bits per transform
-			{ 3, 18, 7 },		// 138 bits per transform
-			{ 4, 6, 18 },		// 138 bits per transform
-			{ 4, 18, 6 },		// 138 bits per transform
-			{ 5, 5, 18 },		// 138 bits per transform
-			{ 5, 18, 5 },		// 138 bits per transform
-			{ 6, 4, 18 },		// 138 bits per transform
-			{ 6, 17, 17 },		// 138 bits per transform
-			{ 6, 18, 4 },		// 138 bits per transform
-			{ 7, 3, 18 },		// 138 bits per transform
-			{ 7, 16, 17 },		// 138 bits per transform
-			{ 7, 17, 16 },		// 138 bits per transform
-			{ 7, 18, 3 },		// 138 bits per transform
-			{ 8, 2, 18 },		// 138 bits per transform
-			{ 8, 15, 17 },		// 138 bits per transform
-			{ 8, 16, 16 },		// 138 bits per transform
-			{ 8, 17, 15 },		// 138 bits per transform
-			{ 8, 18, 2 },		// 138 bits per transform
-			{ 9, 1, 18 },		// 138 bits per transform
-			{ 9, 14, 17 },		// 138 bits per transform
-			{ 9, 15, 16 },		// 138 bits per transform
-			{ 9, 16, 15 },		// 138 bits per transform
-			{ 9, 17, 14 },		// 138 bits per transform
-			{ 9, 18, 1 },		// 138 bits per transform
-			{ 10, 13, 17 },		// 138 bits per transform
-			{ 10, 14, 16 },		// 138 bits per transform
-			{ 10, 15, 15 },		// 138 bits per transform
-			{ 10, 16, 14 },		// 138 bits per transform
-			{ 10, 17, 13 },		// 138 bits per transform
-			{ 11, 12, 17 },		// 138 bits per transform
-			{ 11, 13, 16 },		// 138 bits per transform
-			{ 11, 14, 15 },		// 138 bits per transform
-			{ 11, 15, 14 },		// 138 bits per transform
-			{ 11, 16, 13 },		// 138 bits per transform
-			{ 11, 17, 12 },		// 138 bits per transform
-			{ 12, 0, 18 },		// 138 bits per transform
-			{ 12, 11, 17 },		// 138 bits per transform
-			{ 12, 12, 16 },		// 138 bits per transform
-			{ 12, 13, 15 },		// 138 bits per transform
-			{ 12, 14, 14 },		// 138 bits per transform
-			{ 12, 15, 13 },		// 138 bits per transform
-			{ 12, 16, 12 },		// 138 bits per transform
-			{ 12, 17, 11 },		// 138 bits per transform
-			{ 12, 18, 0 },		// 138 bits per transform
-			{ 13, 10, 17 },		// 138 bits per transform
-			{ 13, 11, 16 },		// 138 bits per transform
-			{ 13, 12, 15 },		// 138 bits per transform
-			{ 13, 13, 14 },		// 138 bits per transform
-			{ 13, 14, 13 },		// 138 bits per transform
-			{ 13, 15, 12 },		// 138 bits per transform
-			{ 13, 16, 11 },		// 138 bits per transform
-			{ 13, 17, 10 },		// 138 bits per transform
-			{ 14, 9, 17 },		// 138 bits per transform
-			{ 14, 10, 16 },		// 138 bits per transform
-			{ 14, 11, 15 },		// 138 bits per transform
-			{ 14, 12, 14 },		// 138 bits per transform
-			{ 14, 13, 13 },		// 138 bits per transform
-			{ 14, 14, 12 },		// 138 bits per transform
-			{ 14, 15, 11 },		// 138 bits per transform
-			{ 14, 16, 10 },		// 138 bits per transform
-			{ 14, 17, 9 },		// 138 bits per transform
-			{ 15, 8, 17 },		// 138 bits per transform
-			{ 15, 9, 16 },		// 138 bits per transform
-			{ 15, 10, 15 },		// 138 bits per transform
-			{ 15, 11, 14 },		// 138 bits per transform
-			{ 15, 12, 13 },		// 138 bits per transform
-			{ 15, 13, 12 },		// 138 bits per transform
-			{ 15, 14, 11 },		// 138 bits per transform
-			{ 15, 15, 10 },		// 138 bits per transform
-			{ 15, 16, 9 },		// 138 bits per transform
-			{ 15, 17, 8 },		// 138 bits per transform
-			{ 16, 7, 17 },		// 138 bits per transform
-			{ 16, 8, 16 },		// 138 bits per transform
-			{ 16, 9, 15 },		// 138 bits per transform
-			{ 16, 10, 14 },		// 138 bits per transform
-			{ 16, 11, 13 },		// 138 bits per transform
-			{ 16, 12, 12 },		// 138 bits per transform
-			{ 16, 13, 11 },		// 138 bits per transform
-			{ 16, 14, 10 },		// 138 bits per transform
-			{ 16, 15, 9 },		// 138 bits per transform
-			{ 16, 16, 8 },		// 138 bits per transform
-			{ 16, 17, 7 },		// 138 bits per transform
-			{ 17, 6, 17 },		// 138 bits per transform
-			{ 17, 7, 16 },		// 138 bits per transform
-			{ 17, 8, 15 },		// 138 bits per transform
-			{ 17, 9, 14 },		// 138 bits per transform
-			{ 17, 10, 13 },		// 138 bits per transform
-			{ 17, 11, 12 },		// 138 bits per transform
-			{ 17, 12, 11 },		// 138 bits per transform
-			{ 17, 13, 10 },		// 138 bits per transform
-			{ 17, 14, 9 },		// 138 bits per transform
-			{ 17, 15, 8 },		// 138 bits per transform
-			{ 17, 16, 7 },		// 138 bits per transform
-			{ 17, 17, 6 },		// 138 bits per transform
-			{ 18, 0, 12 },		// 138 bits per transform
-			{ 18, 1, 9 },		// 138 bits per transform
-			{ 18, 2, 8 },		// 138 bits per transform
-			{ 18, 3, 7 },		// 138 bits per transform
-			{ 18, 4, 6 },		// 138 bits per transform
-			{ 18, 5, 5 },		// 138 bits per transform
-			{ 18, 6, 4 },		// 138 bits per transform
-			{ 18, 7, 3 },		// 138 bits per transform
-			{ 18, 8, 2 },		// 138 bits per transform
-			{ 18, 9, 1 },		// 138 bits per transform
-			{ 18, 12, 0 },		// 138 bits per transform
-			{ 0, 13, 18 },		// 141 bits per transform
-			{ 0, 18, 13 },		// 141 bits per transform
-			{ 1, 10, 18 },		// 141 bits per transform
-			{ 1, 18, 10 },		// 141 bits per transform
-			{ 2, 9, 18 },		// 141 bits per transform
-			{ 2, 18, 9 },		// 141 bits per transform
-			{ 3, 8, 18 },		// 141 bits per transform
-			{ 3, 18, 8 },		// 141 bits per transform
-			{ 4, 7, 18 },		// 141 bits per transform
-			{ 4, 18, 7 },		// 141 bits per transform
-			{ 5, 6, 18 },		// 141 bits per transform
-			{ 5, 18, 6 },		// 141 bits per transform
-			{ 6, 5, 18 },		// 141 bits per transform
-			{ 6, 18, 5 },		// 141 bits per transform
-			{ 7, 4, 18 },		// 141 bits per transform
-			{ 7, 17, 17 },		// 141 bits per transform
-			{ 7, 18, 4 },		// 141 bits per transform
-			{ 8, 3, 18 },		// 141 bits per transform
-			{ 8, 16, 17 },		// 141 bits per transform
-			{ 8, 17, 16 },		// 141 bits per transform
-			{ 8, 18, 3 },		// 141 bits per transform
-			{ 9, 2, 18 },		// 141 bits per transform
-			{ 9, 15, 17 },		// 141 bits per transform
-			{ 9, 16, 16 },		// 141 bits per transform
-			{ 9, 17, 15 },		// 141 bits per transform
-			{ 9, 18, 2 },		// 141 bits per transform
-			{ 10, 1, 18 },		// 141 bits per transform
-			{ 10, 14, 17 },		// 141 bits per transform
-			{ 10, 15, 16 },		// 141 bits per transform
-			{ 10, 16, 15 },		// 141 bits per transform
-			{ 10, 17, 14 },		// 141 bits per transform
-			{ 10, 18, 1 },		// 141 bits per transform
-			{ 11, 13, 17 },		// 141 bits per transform
-			{ 11, 14, 16 },		// 141 bits per transform
-			{ 11, 15, 15 },		// 141 bits per transform
-			{ 11, 16, 14 },		// 141 bits per transform
-			{ 11, 17, 13 },		// 141 bits per transform
-			{ 12, 12, 17 },		// 141 bits per transform
-			{ 12, 13, 16 },		// 141 bits per transform
-			{ 12, 14, 15 },		// 141 bits per transform
-			{ 12, 15, 14 },		// 141 bits per transform
-			{ 12, 16, 13 },		// 141 bits per transform
-			{ 12, 17, 12 },		// 141 bits per transform
-			{ 13, 0, 18 },		// 141 bits per transform
-			{ 13, 11, 17 },		// 141 bits per transform
-			{ 13, 12, 16 },		// 141 bits per transform
-			{ 13, 13, 15 },		// 141 bits per transform
-			{ 13, 14, 14 },		// 141 bits per transform
-			{ 13, 15, 13 },		// 141 bits per transform
-			{ 13, 16, 12 },		// 141 bits per transform
-			{ 13, 17, 11 },		// 141 bits per transform
-			{ 13, 18, 0 },		// 141 bits per transform
-			{ 14, 10, 17 },		// 141 bits per transform
-			{ 14, 11, 16 },		// 141 bits per transform
-			{ 14, 12, 15 },		// 141 bits per transform
-			{ 14, 13, 14 },		// 141 bits per transform
-			{ 14, 14, 13 },		// 141 bits per transform
-			{ 14, 15, 12 },		// 141 bits per transform
-			{ 14, 16, 11 },		// 141 bits per transform
-			{ 14, 17, 10 },		// 141 bits per transform
-			{ 15, 9, 17 },		// 141 bits per transform
-			{ 15, 10, 16 },		// 141 bits per transform
-			{ 15, 11, 15 },		// 141 bits per transform
-			{ 15, 12, 14 },		// 141 bits per transform
-			{ 15, 13, 13 },		// 141 bits per transform
-			{ 15, 14, 12 },		// 141 bits per transform
-			{ 15, 15, 11 },		// 141 bits per transform
-			{ 15, 16, 10 },		// 141 bits per transform
-			{ 15, 17, 9 },		// 141 bits per transform
-			{ 16, 8, 17 },		// 141 bits per transform
-			{ 16, 9, 16 },		// 141 bits per transform
-			{ 16, 10, 15 },		// 141 bits per transform
-			{ 16, 11, 14 },		// 141 bits per transform
-			{ 16, 12, 13 },		// 141 bits per transform
-			{ 16, 13, 12 },		// 141 bits per transform
-			{ 16, 14, 11 },		// 141 bits per transform
-			{ 16, 15, 10 },		// 141 bits per transform
-			{ 16, 16, 9 },		// 141 bits per transform
-			{ 16, 17, 8 },		// 141 bits per transform
-			{ 17, 7, 17 },		// 141 bits per transform
-			{ 17, 8, 16 },		// 141 bits per transform
-			{ 17, 9, 15 },		// 141 bits per transform
-			{ 17, 10, 14 },		// 141 bits per transform
-			{ 17, 11, 13 },		// 141 bits per transform
-			{ 17, 12, 12 },		// 141 bits per transform
-			{ 17, 13, 11 },		// 141 bits per transform
-			{ 17, 14, 10 },		// 141 bits per transform
-			{ 17, 15, 9 },		// 141 bits per transform
-			{ 17, 16, 8 },		// 141 bits per transform
-			{ 17, 17, 7 },		// 141 bits per transform
-			{ 18, 0, 13 },		// 141 bits per transform
-			{ 18, 1, 10 },		// 141 bits per transform
-			{ 18, 2, 9 },		// 141 bits per transform
-			{ 18, 3, 8 },		// 141 bits per transform
-			{ 18, 4, 7 },		// 141 bits per transform
-			{ 18, 5, 6 },		// 141 bits per transform
-			{ 18, 6, 5 },		// 141 bits per transform
-			{ 18, 7, 4 },		// 141 bits per transform
-			{ 18, 8, 3 },		// 141 bits per transform
-			{ 18, 9, 2 },		// 141 bits per transform
-			{ 18, 10, 1 },		// 141 bits per transform
-			{ 18, 13, 0 },		// 141 bits per transform
-			{ 0, 14, 18 },		// 144 bits per transform
-			{ 0, 18, 14 },		// 144 bits per transform
-			{ 1, 11, 18 },		// 144 bits per transform
-			{ 1, 18, 11 },		// 144 bits per transform
-			{ 2, 10, 18 },		// 144 bits per transform
-			{ 2, 18, 10 },		// 144 bits per transform
-			{ 3, 9, 18 },		// 144 bits per transform
-			{ 3, 18, 9 },		// 144 bits per transform
-			{ 4, 8, 18 },		// 144 bits per transform
-			{ 4, 18, 8 },		// 144 bits per transform
-			{ 5, 7, 18 },		// 144 bits per transform
-			{ 5, 18, 7 },		// 144 bits per transform
-			{ 6, 6, 18 },		// 144 bits per transform
-			{ 6, 18, 6 },		// 144 bits per transform
-			{ 7, 5, 18 },		// 144 bits per transform
-			{ 7, 18, 5 },		// 144 bits per transform
-			{ 8, 4, 18 },		// 144 bits per transform
-			{ 8, 17, 17 },		// 144 bits per transform
-			{ 8, 18, 4 },		// 144 bits per transform
-			{ 9, 3, 18 },		// 144 bits per transform
-			{ 9, 16, 17 },		// 144 bits per transform
-			{ 9, 17, 16 },		// 144 bits per transform
-			{ 9, 18, 3 },		// 144 bits per transform
-			{ 10, 2, 18 },		// 144 bits per transform
-			{ 10, 15, 17 },		// 144 bits per transform
-			{ 10, 16, 16 },		// 144 bits per transform
-			{ 10, 17, 15 },		// 144 bits per transform
-			{ 10, 18, 2 },		// 144 bits per transform
-			{ 11, 1, 18 },		// 144 bits per transform
-			{ 11, 14, 17 },		// 144 bits per transform
-			{ 11, 15, 16 },		// 144 bits per transform
-			{ 11, 16, 15 },		// 144 bits per transform
-			{ 11, 17, 14 },		// 144 bits per transform
-			{ 11, 18, 1 },		// 144 bits per transform
-			{ 12, 13, 17 },		// 144 bits per transform
-			{ 12, 14, 16 },		// 144 bits per transform
-			{ 12, 15, 15 },		// 144 bits per transform
-			{ 12, 16, 14 },		// 144 bits per transform
-			{ 12, 17, 13 },		// 144 bits per transform
-			{ 13, 12, 17 },		// 144 bits per transform
-			{ 13, 13, 16 },		// 144 bits per transform
-			{ 13, 14, 15 },		// 144 bits per transform
-			{ 13, 15, 14 },		// 144 bits per transform
-			{ 13, 16, 13 },		// 144 bits per transform
-			{ 13, 17, 12 },		// 144 bits per transform
-			{ 14, 0, 18 },		// 144 bits per transform
-			{ 14, 11, 17 },		// 144 bits per transform
-			{ 14, 12, 16 },		// 144 bits per transform
-			{ 14, 13, 15 },		// 144 bits per transform
-			{ 14, 14, 14 },		// 144 bits per transform
-			{ 14, 15, 13 },		// 144 bits per transform
-			{ 14, 16, 12 },		// 144 bits per transform
-			{ 14, 17, 11 },		// 144 bits per transform
-			{ 14, 18, 0 },		// 144 bits per transform
-			{ 15, 10, 17 },		// 144 bits per transform
-			{ 15, 11, 16 },		// 144 bits per transform
-			{ 15, 12, 15 },		// 144 bits per transform
-			{ 15, 13, 14 },		// 144 bits per transform
-			{ 15, 14, 13 },		// 144 bits per transform
-			{ 15, 15, 12 },		// 144 bits per transform
-			{ 15, 16, 11 },		// 144 bits per transform
-			{ 15, 17, 10 },		// 144 bits per transform
-			{ 16, 9, 17 },		// 144 bits per transform
-			{ 16, 10, 16 },		// 144 bits per transform
-			{ 16, 11, 15 },		// 144 bits per transform
-			{ 16, 12, 14 },		// 144 bits per transform
-			{ 16, 13, 13 },		// 144 bits per transform
-			{ 16, 14, 12 },		// 144 bits per transform
-			{ 16, 15, 11 },		// 144 bits per transform
-			{ 16, 16, 10 },		// 144 bits per transform
-			{ 16, 17, 9 },		// 144 bits per transform
-			{ 17, 8, 17 },		// 144 bits per transform
-			{ 17, 9, 16 },		// 144 bits per transform
-			{ 17, 10, 15 },		// 144 bits per transform
-			{ 17, 11, 14 },		// 144 bits per transform
-			{ 17, 12, 13 },		// 144 bits per transform
-			{ 17, 13, 12 },		// 144 bits per transform
-			{ 17, 14, 11 },		// 144 bits per transform
-			{ 17, 15, 10 },		// 144 bits per transform
-			{ 17, 16, 9 },		// 144 bits per transform
-			{ 17, 17, 8 },		// 144 bits per transform
-			{ 18, 0, 14 },		// 144 bits per transform
-			{ 18, 1, 11 },		// 144 bits per transform
-			{ 18, 2, 10 },		// 144 bits per transform
-			{ 18, 3, 9 },		// 144 bits per transform
-			{ 18, 4, 8 },		// 144 bits per transform
-			{ 18, 5, 7 },		// 144 bits per transform
-			{ 18, 6, 6 },		// 144 bits per transform
-			{ 18, 7, 5 },		// 144 bits per transform
-			{ 18, 8, 4 },		// 144 bits per transform
-			{ 18, 9, 3 },		// 144 bits per transform
-			{ 18, 10, 2 },		// 144 bits per transform
-			{ 18, 11, 1 },		// 144 bits per transform
-			{ 18, 14, 0 },		// 144 bits per transform
-			{ 0, 15, 18 },		// 147 bits per transform
-			{ 0, 18, 15 },		// 147 bits per transform
-			{ 1, 12, 18 },		// 147 bits per transform
-			{ 1, 18, 12 },		// 147 bits per transform
-			{ 2, 11, 18 },		// 147 bits per transform
-			{ 2, 18, 11 },		// 147 bits per transform
-			{ 3, 10, 18 },		// 147 bits per transform
-			{ 3, 18, 10 },		// 147 bits per transform
-			{ 4, 9, 18 },		// 147 bits per transform
-			{ 4, 18, 9 },		// 147 bits per transform
-			{ 5, 8, 18 },		// 147 bits per transform
-			{ 5, 18, 8 },		// 147 bits per transform
-			{ 6, 7, 18 },		// 147 bits per transform
-			{ 6, 18, 7 },		// 147 bits per transform
-			{ 7, 6, 18 },		// 147 bits per transform
-			{ 7, 18, 6 },		// 147 bits per transform
-			{ 8, 5, 18 },		// 147 bits per transform
-			{ 8, 18, 5 },		// 147 bits per transform
-			{ 9, 4, 18 },		// 147 bits per transform
-			{ 9, 17, 17 },		// 147 bits per transform
-			{ 9, 18, 4 },		// 147 bits per transform
-			{ 10, 3, 18 },		// 147 bits per transform
-			{ 10, 16, 17 },		// 147 bits per transform
-			{ 10, 17, 16 },		// 147 bits per transform
-			{ 10, 18, 3 },		// 147 bits per transform
-			{ 11, 2, 18 },		// 147 bits per transform
-			{ 11, 15, 17 },		// 147 bits per transform
-			{ 11, 16, 16 },		// 147 bits per transform
-			{ 11, 17, 15 },		// 147 bits per transform
-			{ 11, 18, 2 },		// 147 bits per transform
-			{ 12, 1, 18 },		// 147 bits per transform
-			{ 12, 14, 17 },		// 147 bits per transform
-			{ 12, 15, 16 },		// 147 bits per transform
-			{ 12, 16, 15 },		// 147 bits per transform
-			{ 12, 17, 14 },		// 147 bits per transform
-			{ 12, 18, 1 },		// 147 bits per transform
-			{ 13, 13, 17 },		// 147 bits per transform
-			{ 13, 14, 16 },		// 147 bits per transform
-			{ 13, 15, 15 },		// 147 bits per transform
-			{ 13, 16, 14 },		// 147 bits per transform
-			{ 13, 17, 13 },		// 147 bits per transform
-			{ 14, 12, 17 },		// 147 bits per transform
-			{ 14, 13, 16 },		// 147 bits per transform
-			{ 14, 14, 15 },		// 147 bits per transform
-			{ 14, 15, 14 },		// 147 bits per transform
-			{ 14, 16, 13 },		// 147 bits per transform
-			{ 14, 17, 12 },		// 147 bits per transform
-			{ 15, 0, 18 },		// 147 bits per transform
-			{ 15, 11, 17 },		// 147 bits per transform
-			{ 15, 12, 16 },		// 147 bits per transform
-			{ 15, 13, 15 },		// 147 bits per transform
-			{ 15, 14, 14 },		// 147 bits per transform
-			{ 15, 15, 13 },		// 147 bits per transform
-			{ 15, 16, 12 },		// 147 bits per transform
-			{ 15, 17, 11 },		// 147 bits per transform
-			{ 15, 18, 0 },		// 147 bits per transform
-			{ 16, 10, 17 },		// 147 bits per transform
-			{ 16, 11, 16 },		// 147 bits per transform
-			{ 16, 12, 15 },		// 147 bits per transform
-			{ 16, 13, 14 },		// 147 bits per transform
-			{ 16, 14, 13 },		// 147 bits per transform
-			{ 16, 15, 12 },		// 147 bits per transform
-			{ 16, 16, 11 },		// 147 bits per transform
-			{ 16, 17, 10 },		// 147 bits per transform
-			{ 17, 9, 17 },		// 147 bits per transform
-			{ 17, 10, 16 },		// 147 bits per transform
-			{ 17, 11, 15 },		// 147 bits per transform
-			{ 17, 12, 14 },		// 147 bits per transform
-			{ 17, 13, 13 },		// 147 bits per transform
-			{ 17, 14, 12 },		// 147 bits per transform
-			{ 17, 15, 11 },		// 147 bits per transform
-			{ 17, 16, 10 },		// 147 bits per transform
-			{ 17, 17, 9 },		// 147 bits per transform
-			{ 18, 0, 15 },		// 147 bits per transform
-			{ 18, 1, 12 },		// 147 bits per transform
-			{ 18, 2, 11 },		// 147 bits per transform
-			{ 18, 3, 10 },		// 147 bits per transform
-			{ 18, 4, 9 },		// 147 bits per transform
-			{ 18, 5, 8 },		// 147 bits per transform
-			{ 18, 6, 7 },		// 147 bits per transform
-			{ 18, 7, 6 },		// 147 bits per transform
-			{ 18, 8, 5 },		// 147 bits per transform
-			{ 18, 9, 4 },		// 147 bits per transform
-			{ 18, 10, 3 },		// 147 bits per transform
-			{ 18, 11, 2 },		// 147 bits per transform
-			{ 18, 12, 1 },		// 147 bits per transform
-			{ 18, 15, 0 },		// 147 bits per transform
-			{ 0, 16, 18 },		// 150 bits per transform
-			{ 0, 18, 16 },		// 150 bits per transform
-			{ 1, 13, 18 },		// 150 bits per transform
-			{ 1, 18, 13 },		// 150 bits per transform
-			{ 2, 12, 18 },		// 150 bits per transform
-			{ 2, 18, 12 },		// 150 bits per transform
-			{ 3, 11, 18 },		// 150 bits per transform
-			{ 3, 18, 11 },		// 150 bits per transform
-			{ 4, 10, 18 },		// 150 bits per transform
-			{ 4, 18, 10 },		// 150 bits per transform
-			{ 5, 9, 18 },		// 150 bits per transform
-			{ 5, 18, 9 },		// 150 bits per transform
-			{ 6, 8, 18 },		// 150 bits per transform
-			{ 6, 18, 8 },		// 150 bits per transform
-			{ 7, 7, 18 },		// 150 bits per transform
-			{ 7, 18, 7 },		// 150 bits per transform
-			{ 8, 6, 18 },		// 150 bits per transform
-			{ 8, 18, 6 },		// 150 bits per transform
-			{ 9, 5, 18 },		// 150 bits per transform
-			{ 9, 18, 5 },		// 150 bits per transform
-			{ 10, 4, 18 },		// 150 bits per transform
-			{ 10, 17, 17 },		// 150 bits per transform
-			{ 10, 18, 4 },		// 150 bits per transform
-			{ 11, 3, 18 },		// 150 bits per transform
-			{ 11, 16, 17 },		// 150 bits per transform
-			{ 11, 17, 16 },		// 150 bits per transform
-			{ 11, 18, 3 },		// 150 bits per transform
-			{ 12, 2, 18 },		// 150 bits per transform
-			{ 12, 15, 17 },		// 150 bits per transform
-			{ 12, 16, 16 },		// 150 bits per transform
-			{ 12, 17, 15 },		// 150 bits per transform
-			{ 12, 18, 2 },		// 150 bits per transform
-			{ 13, 1, 18 },		// 150 bits per transform
-			{ 13, 14, 17 },		// 150 bits per transform
-			{ 13, 15, 16 },		// 150 bits per transform
-			{ 13, 16, 15 },		// 150 bits per transform
-			{ 13, 17, 14 },		// 150 bits per transform
-			{ 13, 18, 1 },		// 150 bits per transform
-			{ 14, 13, 17 },		// 150 bits per transform
-			{ 14, 14, 16 },		// 150 bits per transform
-			{ 14, 15, 15 },		// 150 bits per transform
-			{ 14, 16, 14 },		// 150 bits per transform
-			{ 14, 17, 13 },		// 150 bits per transform
-			{ 15, 12, 17 },		// 150 bits per transform
-			{ 15, 13, 16 },		// 150 bits per transform
-			{ 15, 14, 15 },		// 150 bits per transform
-			{ 15, 15, 14 },		// 150 bits per transform
-			{ 15, 16, 13 },		// 150 bits per transform
-			{ 15, 17, 12 },		// 150 bits per transform
-			{ 16, 0, 18 },		// 150 bits per transform
-			{ 16, 11, 17 },		// 150 bits per transform
-			{ 16, 12, 16 },		// 150 bits per transform
-			{ 16, 13, 15 },		// 150 bits per transform
-			{ 16, 14, 14 },		// 150 bits per transform
-			{ 16, 15, 13 },		// 150 bits per transform
-			{ 16, 16, 12 },		// 150 bits per transform
-			{ 16, 17, 11 },		// 150 bits per transform
-			{ 16, 18, 0 },		// 150 bits per transform
-			{ 17, 10, 17 },		// 150 bits per transform
-			{ 17, 11, 16 },		// 150 bits per transform
-			{ 17, 12, 15 },		// 150 bits per transform
-			{ 17, 13, 14 },		// 150 bits per transform
-			{ 17, 14, 13 },		// 150 bits per transform
-			{ 17, 15, 12 },		// 150 bits per transform
-			{ 17, 16, 11 },		// 150 bits per transform
-			{ 17, 17, 10 },		// 150 bits per transform
-			{ 18, 0, 16 },		// 150 bits per transform
-			{ 18, 1, 13 },		// 150 bits per transform
-			{ 18, 2, 12 },		// 150 bits per transform
-			{ 18, 3, 11 },		// 150 bits per transform
-			{ 18, 4, 10 },		// 150 bits per transform
-			{ 18, 5, 9 },		// 150 bits per transform
-			{ 18, 6, 8 },		// 150 bits per transform
-			{ 18, 7, 7 },		// 150 bits per transform
-			{ 18, 8, 6 },		// 150 bits per transform
-			{ 18, 9, 5 },		// 150 bits per transform
-			{ 18, 10, 4 },		// 150 bits per transform
-			{ 18, 11, 3 },		// 150 bits per transform
-			{ 18, 12, 2 },		// 150 bits per transform
-			{ 18, 13, 1 },		// 150 bits per transform
-			{ 18, 16, 0 },		// 150 bits per transform
-			{ 0, 17, 18 },		// 153 bits per transform
-			{ 0, 18, 17 },		// 153 bits per transform
-			{ 1, 14, 18 },		// 153 bits per transform
-			{ 1, 18, 14 },		// 153 bits per transform
-			{ 2, 13, 18 },		// 153 bits per transform
-			{ 2, 18, 13 },		// 153 bits per transform
-			{ 3, 12, 18 },		// 153 bits per transform
-			{ 3, 18, 12 },		// 153 bits per transform
-			{ 4, 11, 18 },		// 153 bits per transform
-			{ 4, 18, 11 },		// 153 bits per transform
-			{ 5, 10, 18 },		// 153 bits per transform
-			{ 5, 18, 10 },		// 153 bits per transform
-			{ 6, 9, 18 },		// 153 bits per transform
-			{ 6, 18, 9 },		// 153 bits per transform
-			{ 7, 8, 18 },		// 153 bits per transform
-			{ 7, 18, 8 },		// 153 bits per transform
-			{ 8, 7, 18 },		// 153 bits per transform
-			{ 8, 18, 7 },		// 153 bits per transform
-			{ 9, 6, 18 },		// 153 bits per transform
-			{ 9, 18, 6 },		// 153 bits per transform
-			{ 10, 5, 18 },		// 153 bits per transform
-			{ 10, 18, 5 },		// 153 bits per transform
-			{ 11, 4, 18 },		// 153 bits per transform
-			{ 11, 17, 17 },		// 153 bits per transform
-			{ 11, 18, 4 },		// 153 bits per transform
-			{ 12, 3, 18 },		// 153 bits per transform
-			{ 12, 16, 17 },		// 153 bits per transform
-			{ 12, 17, 16 },		// 153 bits per transform
-			{ 12, 18, 3 },		// 153 bits per transform
-			{ 13, 2, 18 },		// 153 bits per transform
-			{ 13, 15, 17 },		// 153 bits per transform
-			{ 13, 16, 16 },		// 153 bits per transform
-			{ 13, 17, 15 },		// 153 bits per transform
-			{ 13, 18, 2 },		// 153 bits per transform
-			{ 14, 1, 18 },		// 153 bits per transform
-			{ 14, 14, 17 },		// 153 bits per transform
-			{ 14, 15, 16 },		// 153 bits per transform
-			{ 14, 16, 15 },		// 153 bits per transform
-			{ 14, 17, 14 },		// 153 bits per transform
-			{ 14, 18, 1 },		// 153 bits per transform
-			{ 15, 13, 17 },		// 153 bits per transform
-			{ 15, 14, 16 },		// 153 bits per transform
-			{ 15, 15, 15 },		// 153 bits per transform
-			{ 15, 16, 14 },		// 153 bits per transform
-			{ 15, 17, 13 },		// 153 bits per transform
-			{ 16, 12, 17 },		// 153 bits per transform
-			{ 16, 13, 16 },		// 153 bits per transform
-			{ 16, 14, 15 },		// 153 bits per transform
-			{ 16, 15, 14 },		// 153 bits per transform
-			{ 16, 16, 13 },		// 153 bits per transform
-			{ 16, 17, 12 },		// 153 bits per transform
-			{ 17, 0, 18 },		// 153 bits per transform
-			{ 17, 11, 17 },		// 153 bits per transform
-			{ 17, 12, 16 },		// 153 bits per transform
-			{ 17, 13, 15 },		// 153 bits per transform
-			{ 17, 14, 14 },		// 153 bits per transform
-			{ 17, 15, 13 },		// 153 bits per transform
-			{ 17, 16, 12 },		// 153 bits per transform
-			{ 17, 17, 11 },		// 153 bits per transform
-			{ 17, 18, 0 },		// 153 bits per transform
-			{ 18, 0, 17 },		// 153 bits per transform
-			{ 18, 1, 14 },		// 153 bits per transform
-			{ 18, 2, 13 },		// 153 bits per transform
-			{ 18, 3, 12 },		// 153 bits per transform
-			{ 18, 4, 11 },		// 153 bits per transform
-			{ 18, 5, 10 },		// 153 bits per transform
-			{ 18, 6, 9 },		// 153 bits per transform
-			{ 18, 7, 8 },		// 153 bits per transform
-			{ 18, 8, 7 },		// 153 bits per transform
-			{ 18, 9, 6 },		// 153 bits per transform
-			{ 18, 10, 5 },		// 153 bits per transform
-			{ 18, 11, 4 },		// 153 bits per transform
-			{ 18, 12, 3 },		// 153 bits per transform
-			{ 18, 13, 2 },		// 153 bits per transform
-			{ 18, 14, 1 },		// 153 bits per transform
-			{ 18, 17, 0 },		// 153 bits per transform
-			{ 1, 15, 18 },		// 156 bits per transform
-			{ 1, 18, 15 },		// 156 bits per transform
-			{ 2, 14, 18 },		// 156 bits per transform
-			{ 2, 18, 14 },		// 156 bits per transform
-			{ 3, 13, 18 },		// 156 bits per transform
-			{ 3, 18, 13 },		// 156 bits per transform
-			{ 4, 12, 18 },		// 156 bits per transform
-			{ 4, 18, 12 },		// 156 bits per transform
-			{ 5, 11, 18 },		// 156 bits per transform
-			{ 5, 18, 11 },		// 156 bits per transform
-			{ 6, 10, 18 },		// 156 bits per transform
-			{ 6, 18, 10 },		// 156 bits per transform
-			{ 7, 9, 18 },		// 156 bits per transform
-			{ 7, 18, 9 },		// 156 bits per transform
-			{ 8, 8, 18 },		// 156 bits per transform
-			{ 8, 18, 8 },		// 156 bits per transform
-			{ 9, 7, 18 },		// 156 bits per transform
-			{ 9, 18, 7 },		// 156 bits per transform
-			{ 10, 6, 18 },		// 156 bits per transform
-			{ 10, 18, 6 },		// 156 bits per transform
-			{ 11, 5, 18 },		// 156 bits per transform
-			{ 11, 18, 5 },		// 156 bits per transform
-			{ 12, 4, 18 },		// 156 bits per transform
-			{ 12, 17, 17 },		// 156 bits per transform
-			{ 12, 18, 4 },		// 156 bits per transform
-			{ 13, 3, 18 },		// 156 bits per transform
-			{ 13, 16, 17 },		// 156 bits per transform
-			{ 13, 17, 16 },		// 156 bits per transform
-			{ 13, 18, 3 },		// 156 bits per transform
-			{ 14, 2, 18 },		// 156 bits per transform
-			{ 14, 15, 17 },		// 156 bits per transform
-			{ 14, 16, 16 },		// 156 bits per transform
-			{ 14, 17, 15 },		// 156 bits per transform
-			{ 14, 18, 2 },		// 156 bits per transform
-			{ 15, 1, 18 },		// 156 bits per transform
-			{ 15, 14, 17 },		// 156 bits per transform
-			{ 15, 15, 16 },		// 156 bits per transform
-			{ 15, 16, 15 },		// 156 bits per transform
-			{ 15, 17, 14 },		// 156 bits per transform
-			{ 15, 18, 1 },		// 156 bits per transform
-			{ 16, 13, 17 },		// 156 bits per transform
-			{ 16, 14, 16 },		// 156 bits per transform
-			{ 16, 15, 15 },		// 156 bits per transform
-			{ 16, 16, 14 },		// 156 bits per transform
-			{ 16, 17, 13 },		// 156 bits per transform
-			{ 17, 12, 17 },		// 156 bits per transform
-			{ 17, 13, 16 },		// 156 bits per transform
-			{ 17, 14, 15 },		// 156 bits per transform
-			{ 17, 15, 14 },		// 156 bits per transform
-			{ 17, 16, 13 },		// 156 bits per transform
-			{ 17, 17, 12 },		// 156 bits per transform
-			{ 18, 1, 15 },		// 156 bits per transform
-			{ 18, 2, 14 },		// 156 bits per transform
-			{ 18, 3, 13 },		// 156 bits per transform
-			{ 18, 4, 12 },		// 156 bits per transform
-			{ 18, 5, 11 },		// 156 bits per transform
-			{ 18, 6, 10 },		// 156 bits per transform
-			{ 18, 7, 9 },		// 156 bits per transform
-			{ 18, 8, 8 },		// 156 bits per transform
-			{ 18, 9, 7 },		// 156 bits per transform
-			{ 18, 10, 6 },		// 156 bits per transform
-			{ 18, 11, 5 },		// 156 bits per transform
-			{ 18, 12, 4 },		// 156 bits per transform
-			{ 18, 13, 3 },		// 156 bits per transform
-			{ 18, 14, 2 },		// 156 bits per transform
-			{ 18, 15, 1 },		// 156 bits per transform
-			{ 1, 16, 18 },		// 159 bits per transform
-			{ 1, 18, 16 },		// 159 bits per transform
-			{ 2, 15, 18 },		// 159 bits per transform
-			{ 2, 18, 15 },		// 159 bits per transform
-			{ 3, 14, 18 },		// 159 bits per transform
-			{ 3, 18, 14 },		// 159 bits per transform
-			{ 4, 13, 18 },		// 159 bits per transform
-			{ 4, 18, 13 },		// 159 bits per transform
-			{ 5, 12, 18 },		// 159 bits per transform
-			{ 5, 18, 12 },		// 159 bits per transform
-			{ 6, 11, 18 },		// 159 bits per transform
-			{ 6, 18, 11 },		// 159 bits per transform
-			{ 7, 10, 18 },		// 159 bits per transform
-			{ 7, 18, 10 },		// 159 bits per transform
-			{ 8, 9, 18 },		// 159 bits per transform
-			{ 8, 18, 9 },		// 159 bits per transform
-			{ 9, 8, 18 },		// 159 bits per transform
-			{ 9, 18, 8 },		// 159 bits per transform
-			{ 10, 7, 18 },		// 159 bits per transform
-			{ 10, 18, 7 },		// 159 bits per transform
-			{ 11, 6, 18 },		// 159 bits per transform
-			{ 11, 18, 6 },		// 159 bits per transform
-			{ 12, 5, 18 },		// 159 bits per transform
-			{ 12, 18, 5 },		// 159 bits per transform
-			{ 13, 4, 18 },		// 159 bits per transform
-			{ 13, 17, 17 },		// 159 bits per transform
-			{ 13, 18, 4 },		// 159 bits per transform
-			{ 14, 3, 18 },		// 159 bits per transform
-			{ 14, 16, 17 },		// 159 bits per transform
-			{ 14, 17, 16 },		// 159 bits per transform
-			{ 14, 18, 3 },		// 159 bits per transform
-			{ 15, 2, 18 },		// 159 bits per transform
-			{ 15, 15, 17 },		// 159 bits per transform
-			{ 15, 16, 16 },		// 159 bits per transform
-			{ 15, 17, 15 },		// 159 bits per transform
-			{ 15, 18, 2 },		// 159 bits per transform
-			{ 16, 1, 18 },		// 159 bits per transform
-			{ 16, 14, 17 },		// 159 bits per transform
-			{ 16, 15, 16 },		// 159 bits per transform
-			{ 16, 16, 15 },		// 159 bits per transform
-			{ 16, 17, 14 },		// 159 bits per transform
-			{ 16, 18, 1 },		// 159 bits per transform
-			{ 17, 13, 17 },		// 159 bits per transform
-			{ 17, 14, 16 },		// 159 bits per transform
-			{ 17, 15, 15 },		// 159 bits per transform
-			{ 17, 16, 14 },		// 159 bits per transform
-			{ 17, 17, 13 },		// 159 bits per transform
-			{ 18, 1, 16 },		// 159 bits per transform
-			{ 18, 2, 15 },		// 159 bits per transform
-			{ 18, 3, 14 },		// 159 bits per transform
-			{ 18, 4, 13 },		// 159 bits per transform
-			{ 18, 5, 12 },		// 159 bits per transform
-			{ 18, 6, 11 },		// 159 bits per transform
-			{ 18, 7, 10 },		// 159 bits per transform
-			{ 18, 8, 9 },		// 159 bits per transform
-			{ 18, 9, 8 },		// 159 bits per transform
-			{ 18, 10, 7 },		// 159 bits per transform
-			{ 18, 11, 6 },		// 159 bits per transform
-			{ 18, 12, 5 },		// 159 bits per transform
-			{ 18, 13, 4 },		// 159 bits per transform
-			{ 18, 14, 3 },		// 159 bits per transform
-			{ 18, 15, 2 },		// 159 bits per transform
-			{ 18, 16, 1 },		// 159 bits per transform
-			{ 1, 17, 18 },		// 162 bits per transform
-			{ 1, 18, 17 },		// 162 bits per transform
-			{ 2, 16, 18 },		// 162 bits per transform
-			{ 2, 18, 16 },		// 162 bits per transform
-			{ 3, 15, 18 },		// 162 bits per transform
-			{ 3, 18, 15 },		// 162 bits per transform
-			{ 4, 14, 18 },		// 162 bits per transform
-			{ 4, 18, 14 },		// 162 bits per transform
-			{ 5, 13, 18 },		// 162 bits per transform
-			{ 5, 18, 13 },		// 162 bits per transform
-			{ 6, 12, 18 },		// 162 bits per transform
-			{ 6, 18, 12 },		// 162 bits per transform
-			{ 7, 11, 18 },		// 162 bits per transform
-			{ 7, 18, 11 },		// 162 bits per transform
-			{ 8, 10, 18 },		// 162 bits per transform
-			{ 8, 18, 10 },		// 162 bits per transform
-			{ 9, 9, 18 },		// 162 bits per transform
-			{ 9, 18, 9 },		// 162 bits per transform
-			{ 10, 8, 18 },		// 162 bits per transform
-			{ 10, 18, 8 },		// 162 bits per transform
-			{ 11, 7, 18 },		// 162 bits per transform
-			{ 11, 18, 7 },		// 162 bits per transform
-			{ 12, 6, 18 },		// 162 bits per transform
-			{ 12, 18, 6 },		// 162 bits per transform
-			{ 13, 5, 18 },		// 162 bits per transform
-			{ 13, 18, 5 },		// 162 bits per transform
-			{ 14, 4, 18 },		// 162 bits per transform
-			{ 14, 17, 17 },		// 162 bits per transform
-			{ 14, 18, 4 },		// 162 bits per transform
-			{ 15, 3, 18 },		// 162 bits per transform
-			{ 15, 16, 17 },		// 162 bits per transform
-			{ 15, 17, 16 },		// 162 bits per transform
-			{ 15, 18, 3 },		// 162 bits per transform
-			{ 16, 2, 18 },		// 162 bits per transform
-			{ 16, 15, 17 },		// 162 bits per transform
-			{ 16, 16, 16 },		// 162 bits per transform
-			{ 16, 17, 15 },		// 162 bits per transform
-			{ 16, 18, 2 },		// 162 bits per transform
-			{ 17, 1, 18 },		// 162 bits per transform
-			{ 17, 14, 17 },		// 162 bits per transform
-			{ 17, 15, 16 },		// 162 bits per transform
-			{ 17, 16, 15 },		// 162 bits per transform
-			{ 17, 17, 14 },		// 162 bits per transform
-			{ 17, 18, 1 },		// 162 bits per transform
-			{ 18, 1, 17 },		// 162 bits per transform
-			{ 18, 2, 16 },		// 162 bits per transform
-			{ 18, 3, 15 },		// 162 bits per transform
-			{ 18, 4, 14 },		// 162 bits per transform
-			{ 18, 5, 13 },		// 162 bits per transform
-			{ 18, 6, 12 },		// 162 bits per transform
-			{ 18, 7, 11 },		// 162 bits per transform
-			{ 18, 8, 10 },		// 162 bits per transform
-			{ 18, 9, 9 },		// 162 bits per transform
-			{ 18, 10, 8 },		// 162 bits per transform
-			{ 18, 11, 7 },		// 162 bits per transform
-			{ 18, 12, 6 },		// 162 bits per transform
-			{ 18, 13, 5 },		// 162 bits per transform
-			{ 18, 14, 4 },		// 162 bits per transform
-			{ 18, 15, 3 },		// 162 bits per transform
-			{ 18, 16, 2 },		// 162 bits per transform
-			{ 18, 17, 1 },		// 162 bits per transform
-			{ 2, 17, 18 },		// 165 bits per transform
-			{ 2, 18, 17 },		// 165 bits per transform
-			{ 3, 16, 18 },		// 165 bits per transform
-			{ 3, 18, 16 },		// 165 bits per transform
-			{ 4, 15, 18 },		// 165 bits per transform
-			{ 4, 18, 15 },		// 165 bits per transform
-			{ 5, 14, 18 },		// 165 bits per transform
-			{ 5, 18, 14 },		// 165 bits per transform
-			{ 6, 13, 18 },		// 165 bits per transform
-			{ 6, 18, 13 },		// 165 bits per transform
-			{ 7, 12, 18 },		// 165 bits per transform
-			{ 7, 18, 12 },		// 165 bits per transform
-			{ 8, 11, 18 },		// 165 bits per transform
-			{ 8, 18, 11 },		// 165 bits per transform
-			{ 9, 10, 18 },		// 165 bits per transform
-			{ 9, 18, 10 },		// 165 bits per transform
-			{ 10, 9, 18 },		// 165 bits per transform
-			{ 10, 18, 9 },		// 165 bits per transform
-			{ 11, 8, 18 },		// 165 bits per transform
-			{ 11, 18, 8 },		// 165 bits per transform
-			{ 12, 7, 18 },		// 165 bits per transform
-			{ 12, 18, 7 },		// 165 bits per transform
-			{ 13, 6, 18 },		// 165 bits per transform
-			{ 13, 18, 6 },		// 165 bits per transform
-			{ 14, 5, 18 },		// 165 bits per transform
-			{ 14, 18, 5 },		// 165 bits per transform
-			{ 15, 4, 18 },		// 165 bits per transform
-			{ 15, 17, 17 },		// 165 bits per transform
-			{ 15, 18, 4 },		// 165 bits per transform
-			{ 16, 3, 18 },		// 165 bits per transform
-			{ 16, 16, 17 },		// 165 bits per transform
-			{ 16, 17, 16 },		// 165 bits per transform
-			{ 16, 18, 3 },		// 165 bits per transform
-			{ 17, 2, 18 },		// 165 bits per transform
-			{ 17, 15, 17 },		// 165 bits per transform
-			{ 17, 16, 16 },		// 165 bits per transform
-			{ 17, 17, 15 },		// 165 bits per transform
-			{ 17, 18, 2 },		// 165 bits per transform
-			{ 18, 2, 17 },		// 165 bits per transform
-			{ 18, 3, 16 },		// 165 bits per transform
-			{ 18, 4, 15 },		// 165 bits per transform
-			{ 18, 5, 14 },		// 165 bits per transform
-			{ 18, 6, 13 },		// 165 bits per transform
-			{ 18, 7, 12 },		// 165 bits per transform
-			{ 18, 8, 11 },		// 165 bits per transform
-			{ 18, 9, 10 },		// 165 bits per transform
-			{ 18, 10, 9 },		// 165 bits per transform
-			{ 18, 11, 8 },		// 165 bits per transform
-			{ 18, 12, 7 },		// 165 bits per transform
-			{ 18, 13, 6 },		// 165 bits per transform
-			{ 18, 14, 5 },		// 165 bits per transform
-			{ 18, 15, 4 },		// 165 bits per transform
-			{ 18, 16, 3 },		// 165 bits per transform
-			{ 18, 17, 2 },		// 165 bits per transform
-			{ 3, 17, 18 },		// 168 bits per transform
-			{ 3, 18, 17 },		// 168 bits per transform
-			{ 4, 16, 18 },		// 168 bits per transform
-			{ 4, 18, 16 },		// 168 bits per transform
-			{ 5, 15, 18 },		// 168 bits per transform
-			{ 5, 18, 15 },		// 168 bits per transform
-			{ 6, 14, 18 },		// 168 bits per transform
-			{ 6, 18, 14 },		// 168 bits per transform
-			{ 7, 13, 18 },		// 168 bits per transform
-			{ 7, 18, 13 },		// 168 bits per transform
-			{ 8, 12, 18 },		// 168 bits per transform
-			{ 8, 18, 12 },		// 168 bits per transform
-			{ 9, 11, 18 },		// 168 bits per transform
-			{ 9, 18, 11 },		// 168 bits per transform
-			{ 10, 10, 18 },		// 168 bits per transform
-			{ 10, 18, 10 },		// 168 bits per transform
-			{ 11, 9, 18 },		// 168 bits per transform
-			{ 11, 18, 9 },		// 168 bits per transform
-			{ 12, 8, 18 },		// 168 bits per transform
-			{ 12, 18, 8 },		// 168 bits per transform
-			{ 13, 7, 18 },		// 168 bits per transform
-			{ 13, 18, 7 },		// 168 bits per transform
-			{ 14, 6, 18 },		// 168 bits per transform
-			{ 14, 18, 6 },		// 168 bits per transform
-			{ 15, 5, 18 },		// 168 bits per transform
-			{ 15, 18, 5 },		// 168 bits per transform
-			{ 16, 4, 18 },		// 168 bits per transform
-			{ 16, 17, 17 },		// 168 bits per transform
-			{ 16, 18, 4 },		// 168 bits per transform
-			{ 17, 3, 18 },		// 168 bits per transform
-			{ 17, 16, 17 },		// 168 bits per transform
-			{ 17, 17, 16 },		// 168 bits per transform
-			{ 17, 18, 3 },		// 168 bits per transform
-			{ 18, 3, 17 },		// 168 bits per transform
-			{ 18, 4, 16 },		// 168 bits per transform
-			{ 18, 5, 15 },		// 168 bits per transform
-			{ 18, 6, 14 },		// 168 bits per transform
-			{ 18, 7, 13 },		// 168 bits per transform
-			{ 18, 8, 12 },		// 168 bits per transform
-			{ 18, 9, 11 },		// 168 bits per transform
-			{ 18, 10, 10 },		// 168 bits per transform
-			{ 18, 11, 9 },		// 168 bits per transform
-			{ 18, 12, 8 },		// 168 bits per transform
-			{ 18, 13, 7 },		// 168 bits per transform
-			{ 18, 14, 6 },		// 168 bits per transform
-			{ 18, 15, 5 },		// 168 bits per transform
-			{ 18, 16, 4 },		// 168 bits per transform
-			{ 18, 17, 3 },		// 168 bits per transform
-			{ 4, 17, 18 },		// 171 bits per transform
-			{ 4, 18, 17 },		// 171 bits per transform
-			{ 5, 16, 18 },		// 171 bits per transform
-			{ 5, 18, 16 },		// 171 bits per transform
-			{ 6, 15, 18 },		// 171 bits per transform
-			{ 6, 18, 15 },		// 171 bits per transform
-			{ 7, 14, 18 },		// 171 bits per transform
-			{ 7, 18, 14 },		// 171 bits per transform
-			{ 8, 13, 18 },		// 171 bits per transform
-			{ 8, 18, 13 },		// 171 bits per transform
-			{ 9, 12, 18 },		// 171 bits per transform
-			{ 9, 18, 12 },		// 171 bits per transform
-			{ 10, 11, 18 },		// 171 bits per transform
-			{ 10, 18, 11 },		// 171 bits per transform
-			{ 11, 10, 18 },		// 171 bits per transform
-			{ 11, 18, 10 },		// 171 bits per transform
-			{ 12, 9, 18 },		// 171 bits per transform
-			{ 12, 18, 9 },		// 171 bits per transform
-			{ 13, 8, 18 },		// 171 bits per transform
-			{ 13, 18, 8 },		// 171 bits per transform
-			{ 14, 7, 18 },		// 171 bits per transform
-			{ 14, 18, 7 },		// 171 bits per transform
-			{ 15, 6, 18 },		// 171 bits per transform
-			{ 15, 18, 6 },		// 171 bits per transform
-			{ 16, 5, 18 },		// 171 bits per transform
-			{ 16, 18, 5 },		// 171 bits per transform
-			{ 17, 4, 18 },		// 171 bits per transform
-			{ 17, 17, 17 },		// 171 bits per transform
-			{ 17, 18, 4 },		// 171 bits per transform
-			{ 18, 4, 17 },		// 171 bits per transform
-			{ 18, 5, 16 },		// 171 bits per transform
-			{ 18, 6, 15 },		// 171 bits per transform
-			{ 18, 7, 14 },		// 171 bits per transform
-			{ 18, 8, 13 },		// 171 bits per transform
-			{ 18, 9, 12 },		// 171 bits per transform
-			{ 18, 10, 11 },		// 171 bits per transform
-			{ 18, 11, 10 },		// 171 bits per transform
-			{ 18, 12, 9 },		// 171 bits per transform
-			{ 18, 13, 8 },		// 171 bits per transform
-			{ 18, 14, 7 },		// 171 bits per transform
-			{ 18, 15, 6 },		// 171 bits per transform
-			{ 18, 16, 5 },		// 171 bits per transform
-			{ 18, 17, 4 },		// 171 bits per transform
-			{ 5, 17, 18 },		// 174 bits per transform
-			{ 5, 18, 17 },		// 174 bits per transform
-			{ 6, 16, 18 },		// 174 bits per transform
-			{ 6, 18, 16 },		// 174 bits per transform
-			{ 7, 15, 18 },		// 174 bits per transform
-			{ 7, 18, 15 },		// 174 bits per transform
-			{ 8, 14, 18 },		// 174 bits per transform
-			{ 8, 18, 14 },		// 174 bits per transform
-			{ 9, 13, 18 },		// 174 bits per transform
-			{ 9, 18, 13 },		// 174 bits per transform
-			{ 10, 12, 18 },		// 174 bits per transform
-			{ 10, 18, 12 },		// 174 bits per transform
-			{ 11, 11, 18 },		// 174 bits per transform
-			{ 11, 18, 11 },		// 174 bits per transform
-			{ 12, 10, 18 },		// 174 bits per transform
-			{ 12, 18, 10 },		// 174 bits per transform
-			{ 13, 9, 18 },		// 174 bits per transform
-			{ 13, 18, 9 },		// 174 bits per transform
-			{ 14, 8, 18 },		// 174 bits per transform
-			{ 14, 18, 8 },		// 174 bits per transform
-			{ 15, 7, 18 },		// 174 bits per transform
-			{ 15, 18, 7 },		// 174 bits per transform
-			{ 16, 6, 18 },		// 174 bits per transform
-			{ 16, 18, 6 },		// 174 bits per transform
-			{ 17, 5, 18 },		// 174 bits per transform
-			{ 17, 18, 5 },		// 174 bits per transform
-			{ 18, 5, 17 },		// 174 bits per transform
-			{ 18, 6, 16 },		// 174 bits per transform
-			{ 18, 7, 15 },		// 174 bits per transform
-			{ 18, 8, 14 },		// 174 bits per transform
-			{ 18, 9, 13 },		// 174 bits per transform
-			{ 18, 10, 12 },		// 174 bits per transform
-			{ 18, 11, 11 },		// 174 bits per transform
-			{ 18, 12, 10 },		// 174 bits per transform
-			{ 18, 13, 9 },		// 174 bits per transform
-			{ 18, 14, 8 },		// 174 bits per transform
-			{ 18, 15, 7 },		// 174 bits per transform
-			{ 18, 16, 6 },		// 174 bits per transform
-			{ 18, 17, 5 },		// 174 bits per transform
-			{ 6, 17, 18 },		// 177 bits per transform
-			{ 6, 18, 17 },		// 177 bits per transform
-			{ 7, 16, 18 },		// 177 bits per transform
-			{ 7, 18, 16 },		// 177 bits per transform
-			{ 8, 15, 18 },		// 177 bits per transform
-			{ 8, 18, 15 },		// 177 bits per transform
-			{ 9, 14, 18 },		// 177 bits per transform
-			{ 9, 18, 14 },		// 177 bits per transform
-			{ 10, 13, 18 },		// 177 bits per transform
-			{ 10, 18, 13 },		// 177 bits per transform
-			{ 11, 12, 18 },		// 177 bits per transform
-			{ 11, 18, 12 },		// 177 bits per transform
-			{ 12, 11, 18 },		// 177 bits per transform
-			{ 12, 18, 11 },		// 177 bits per transform
-			{ 13, 10, 18 },		// 177 bits per transform
-			{ 13, 18, 10 },		// 177 bits per transform
-			{ 14, 9, 18 },		// 177 bits per transform
-			{ 14, 18, 9 },		// 177 bits per transform
-			{ 15, 8, 18 },		// 177 bits per transform
-			{ 15, 18, 8 },		// 177 bits per transform
-			{ 16, 7, 18 },		// 177 bits per transform
-			{ 16, 18, 7 },		// 177 bits per transform
-			{ 17, 6, 18 },		// 177 bits per transform
-			{ 17, 18, 6 },		// 177 bits per transform
-			{ 18, 6, 17 },		// 177 bits per transform
-			{ 18, 7, 16 },		// 177 bits per transform
-			{ 18, 8, 15 },		// 177 bits per transform
-			{ 18, 9, 14 },		// 177 bits per transform
-			{ 18, 10, 13 },		// 177 bits per transform
-			{ 18, 11, 12 },		// 177 bits per transform
-			{ 18, 12, 11 },		// 177 bits per transform
-			{ 18, 13, 10 },		// 177 bits per transform
-			{ 18, 14, 9 },		// 177 bits per transform
-			{ 18, 15, 8 },		// 177 bits per transform
-			{ 18, 16, 7 },		// 177 bits per transform
-			{ 18, 17, 6 },		// 177 bits per transform
-			{ 7, 17, 18 },		// 180 bits per transform
-			{ 7, 18, 17 },		// 180 bits per transform
-			{ 8, 16, 18 },		// 180 bits per transform
-			{ 8, 18, 16 },		// 180 bits per transform
-			{ 9, 15, 18 },		// 180 bits per transform
-			{ 9, 18, 15 },		// 180 bits per transform
-			{ 10, 14, 18 },		// 180 bits per transform
-			{ 10, 18, 14 },		// 180 bits per transform
-			{ 11, 13, 18 },		// 180 bits per transform
-			{ 11, 18, 13 },		// 180 bits per transform
-			{ 12, 12, 18 },		// 180 bits per transform
-			{ 12, 18, 12 },		// 180 bits per transform
-			{ 13, 11, 18 },		// 180 bits per transform
-			{ 13, 18, 11 },		// 180 bits per transform
-			{ 14, 10, 18 },		// 180 bits per transform
-			{ 14, 18, 10 },		// 180 bits per transform
-			{ 15, 9, 18 },		// 180 bits per transform
-			{ 15, 18, 9 },		// 180 bits per transform
-			{ 16, 8, 18 },		// 180 bits per transform
-			{ 16, 18, 8 },		// 180 bits per transform
-			{ 17, 7, 18 },		// 180 bits per transform
-			{ 17, 18, 7 },		// 180 bits per transform
-			{ 18, 7, 17 },		// 180 bits per transform
-			{ 18, 8, 16 },		// 180 bits per transform
-			{ 18, 9, 15 },		// 180 bits per transform
-			{ 18, 10, 14 },		// 180 bits per transform
-			{ 18, 11, 13 },		// 180 bits per transform
-			{ 18, 12, 12 },		// 180 bits per transform
-			{ 18, 13, 11 },		// 180 bits per transform
-			{ 18, 14, 10 },		// 180 bits per transform
-			{ 18, 15, 9 },		// 180 bits per transform
-			{ 18, 16, 8 },		// 180 bits per transform
-			{ 18, 17, 7 },		// 180 bits per transform
-			{ 8, 17, 18 },		// 183 bits per transform
-			{ 8, 18, 17 },		// 183 bits per transform
-			{ 9, 16, 18 },		// 183 bits per transform
-			{ 9, 18, 16 },		// 183 bits per transform
-			{ 10, 15, 18 },		// 183 bits per transform
-			{ 10, 18, 15 },		// 183 bits per transform
-			{ 11, 14, 18 },		// 183 bits per transform
-			{ 11, 18, 14 },		// 183 bits per transform
-			{ 12, 13, 18 },		// 183 bits per transform
-			{ 12, 18, 13 },		// 183 bits per transform
-			{ 13, 12, 18 },		// 183 bits per transform
-			{ 13, 18, 12 },		// 183 bits per transform
-			{ 14, 11, 18 },		// 183 bits per transform
-			{ 14, 18, 11 },		// 183 bits per transform
-			{ 15, 10, 18 },		// 183 bits per transform
-			{ 15, 18, 10 },		// 183 bits per transform
-			{ 16, 9, 18 },		// 183 bits per transform
-			{ 16, 18, 9 },		// 183 bits per transform
-			{ 17, 8, 18 },		// 183 bits per transform
-			{ 17, 18, 8 },		// 183 bits per transform
-			{ 18, 8, 17 },		// 183 bits per transform
-			{ 18, 9, 16 },		// 183 bits per transform
-			{ 18, 10, 15 },		// 183 bits per transform
-			{ 18, 11, 14 },		// 183 bits per transform
-			{ 18, 12, 13 },		// 183 bits per transform
-			{ 18, 13, 12 },		// 183 bits per transform
-			{ 18, 14, 11 },		// 183 bits per transform
-			{ 18, 15, 10 },		// 183 bits per transform
-			{ 18, 16, 9 },		// 183 bits per transform
-			{ 18, 17, 8 },		// 183 bits per transform
-			{ 9, 17, 18 },		// 186 bits per transform
-			{ 9, 18, 17 },		// 186 bits per transform
-			{ 10, 16, 18 },		// 186 bits per transform
-			{ 10, 18, 16 },		// 186 bits per transform
-			{ 11, 15, 18 },		// 186 bits per transform
-			{ 11, 18, 15 },		// 186 bits per transform
-			{ 12, 14, 18 },		// 186 bits per transform
-			{ 12, 18, 14 },		// 186 bits per transform
-			{ 13, 13, 18 },		// 186 bits per transform
-			{ 13, 18, 13 },		// 186 bits per transform
-			{ 14, 12, 18 },		// 186 bits per transform
-			{ 14, 18, 12 },		// 186 bits per transform
-			{ 15, 11, 18 },		// 186 bits per transform
-			{ 15, 18, 11 },		// 186 bits per transform
-			{ 16, 10, 18 },		// 186 bits per transform
-			{ 16, 18, 10 },		// 186 bits per transform
-			{ 17, 9, 18 },		// 186 bits per transform
-			{ 17, 18, 9 },		// 186 bits per transform
-			{ 18, 9, 17 },		// 186 bits per transform
-			{ 18, 10, 16 },		// 186 bits per transform
-			{ 18, 11, 15 },		// 186 bits per transform
-			{ 18, 12, 14 },		// 186 bits per transform
-			{ 18, 13, 13 },		// 186 bits per transform
-			{ 18, 14, 12 },		// 186 bits per transform
-			{ 18, 15, 11 },		// 186 bits per transform
-			{ 18, 16, 10 },		// 186 bits per transform
-			{ 18, 17, 9 },		// 186 bits per transform
-			{ 10, 17, 18 },		// 189 bits per transform
-			{ 10, 18, 17 },		// 189 bits per transform
-			{ 11, 16, 18 },		// 189 bits per transform
-			{ 11, 18, 16 },		// 189 bits per transform
-			{ 12, 15, 18 },		// 189 bits per transform
-			{ 12, 18, 15 },		// 189 bits per transform
-			{ 13, 14, 18 },		// 189 bits per transform
-			{ 13, 18, 14 },		// 189 bits per transform
-			{ 14, 13, 18 },		// 189 bits per transform
-			{ 14, 18, 13 },		// 189 bits per transform
-			{ 15, 12, 18 },		// 189 bits per transform
-			{ 15, 18, 12 },		// 189 bits per transform
-			{ 16, 11, 18 },		// 189 bits per transform
-			{ 16, 18, 11 },		// 189 bits per transform
-			{ 17, 10, 18 },		// 189 bits per transform
-			{ 17, 18, 10 },		// 189 bits per transform
-			{ 18, 10, 17 },		// 189 bits per transform
-			{ 18, 11, 16 },		// 189 bits per transform
-			{ 18, 12, 15 },		// 189 bits per transform
-			{ 18, 13, 14 },		// 189 bits per transform
-			{ 18, 14, 13 },		// 189 bits per transform
-			{ 18, 15, 12 },		// 189 bits per transform
-			{ 18, 16, 11 },		// 189 bits per transform
-			{ 18, 17, 10 },		// 189 bits per transform
-			{ 0, 18, 18 },		// 192 bits per transform
-			{ 11, 17, 18 },		// 192 bits per transform
-			{ 11, 18, 17 },		// 192 bits per transform
-			{ 12, 16, 18 },		// 192 bits per transform
-			{ 12, 18, 16 },		// 192 bits per transform
-			{ 13, 15, 18 },		// 192 bits per transform
-			{ 13, 18, 15 },		// 192 bits per transform
-			{ 14, 14, 18 },		// 192 bits per transform
-			{ 14, 18, 14 },		// 192 bits per transform
-			{ 15, 13, 18 },		// 192 bits per transform
-			{ 15, 18, 13 },		// 192 bits per transform
-			{ 16, 12, 18 },		// 192 bits per transform
-			{ 16, 18, 12 },		// 192 bits per transform
-			{ 17, 11, 18 },		// 192 bits per transform
-			{ 17, 18, 11 },		// 192 bits per transform
-			{ 18, 0, 18 },		// 192 bits per transform
-			{ 18, 11, 17 },		// 192 bits per transform
-			{ 18, 12, 16 },		// 192 bits per transform
-			{ 18, 13, 15 },		// 192 bits per transform
-			{ 18, 14, 14 },		// 192 bits per transform
-			{ 18, 15, 13 },		// 192 bits per transform
-			{ 18, 16, 12 },		// 192 bits per transform
-			{ 18, 17, 11 },		// 192 bits per transform
-			{ 18, 18, 0 },		// 192 bits per transform
-			{ 12, 17, 18 },		// 195 bits per transform
-			{ 12, 18, 17 },		// 195 bits per transform
-			{ 13, 16, 18 },		// 195 bits per transform
-			{ 13, 18, 16 },		// 195 bits per transform
-			{ 14, 15, 18 },		// 195 bits per transform
-			{ 14, 18, 15 },		// 195 bits per transform
-			{ 15, 14, 18 },		// 195 bits per transform
-			{ 15, 18, 14 },		// 195 bits per transform
-			{ 16, 13, 18 },		// 195 bits per transform
-			{ 16, 18, 13 },		// 195 bits per transform
-			{ 17, 12, 18 },		// 195 bits per transform
-			{ 17, 18, 12 },		// 195 bits per transform
-			{ 18, 12, 17 },		// 195 bits per transform
-			{ 18, 13, 16 },		// 195 bits per transform
-			{ 18, 14, 15 },		// 195 bits per transform
-			{ 18, 15, 14 },		// 195 bits per transform
-			{ 18, 16, 13 },		// 195 bits per transform
-			{ 18, 17, 12 },		// 195 bits per transform
-			{ 13, 17, 18 },		// 198 bits per transform
-			{ 13, 18, 17 },		// 198 bits per transform
-			{ 14, 16, 18 },		// 198 bits per transform
-			{ 14, 18, 16 },		// 198 bits per transform
-			{ 15, 15, 18 },		// 198 bits per transform
-			{ 15, 18, 15 },		// 198 bits per transform
-			{ 16, 14, 18 },		// 198 bits per transform
-			{ 16, 18, 14 },		// 198 bits per transform
-			{ 17, 13, 18 },		// 198 bits per transform
-			{ 17, 18, 13 },		// 198 bits per transform
-			{ 18, 13, 17 },		// 198 bits per transform
-			{ 18, 14, 16 },		// 198 bits per transform
-			{ 18, 15, 15 },		// 198 bits per transform
-			{ 18, 16, 14 },		// 198 bits per transform
-			{ 18, 17, 13 },		// 198 bits per transform
-			{ 1, 18, 18 },		// 201 bits per transform
-			{ 14, 17, 18 },		// 201 bits per transform
-			{ 14, 18, 17 },		// 201 bits per transform
-			{ 15, 16, 18 },		// 201 bits per transform
-			{ 15, 18, 16 },		// 201 bits per transform
-			{ 16, 15, 18 },		// 201 bits per transform
-			{ 16, 18, 15 },		// 201 bits per transform
-			{ 17, 14, 18 },		// 201 bits per transform
-			{ 17, 18, 14 },		// 201 bits per transform
-			{ 18, 1, 18 },		// 201 bits per transform
-			{ 18, 14, 17 },		// 201 bits per transform
-			{ 18, 15, 16 },		// 201 bits per transform
-			{ 18, 16, 15 },		// 201 bits per transform
-			{ 18, 17, 14 },		// 201 bits per transform
-			{ 18, 18, 1 },		// 201 bits per transform
-			{ 2, 18, 18 },		// 204 bits per transform
-			{ 15, 17, 18 },		// 204 bits per transform
-			{ 15, 18, 17 },		// 204 bits per transform
-			{ 16, 16, 18 },		// 204 bits per transform
-			{ 16, 18, 16 },		// 204 bits per transform
-			{ 17, 15, 18 },		// 204 bits per transform
-			{ 17, 18, 15 },		// 204 bits per transform
-			{ 18, 2, 18 },		// 204 bits per transform
-			{ 18, 15, 17 },		// 204 bits per transform
-			{ 18, 16, 16 },		// 204 bits per transform
-			{ 18, 17, 15 },		// 204 bits per transform
-			{ 18, 18, 2 },		// 204 bits per transform
-			{ 3, 18, 18 },		// 207 bits per transform
-			{ 16, 17, 18 },		// 207 bits per transform
-			{ 16, 18, 17 },		// 207 bits per transform
-			{ 17, 16, 18 },		// 207 bits per transform
-			{ 17, 18, 16 },		// 207 bits per transform
-			{ 18, 3, 18 },		// 207 bits per transform
-			{ 18, 16, 17 },		// 207 bits per transform
-			{ 18, 17, 16 },		// 207 bits per transform
-			{ 18, 18, 3 },		// 207 bits per transform
-			{ 4, 18, 18 },		// 210 bits per transform
-			{ 17, 17, 18 },		// 210 bits per transform
-			{ 17, 18, 17 },		// 210 bits per transform
-			{ 18, 4, 18 },		// 210 bits per transform
-			{ 18, 17, 17 },		// 210 bits per transform
-			{ 18, 18, 4 },		// 210 bits per transform
-			{ 5, 18, 18 },		// 213 bits per transform
-			{ 18, 5, 18 },		// 213 bits per transform
-			{ 18, 18, 5 },		// 213 bits per transform
-			{ 6, 18, 18 },		// 216 bits per transform
-			{ 18, 6, 18 },		// 216 bits per transform
-			{ 18, 18, 6 },		// 216 bits per transform
-			{ 7, 18, 18 },		// 219 bits per transform
-			{ 18, 7, 18 },		// 219 bits per transform
-			{ 18, 18, 7 },		// 219 bits per transform
-			{ 8, 18, 18 },		// 222 bits per transform
-			{ 18, 8, 18 },		// 222 bits per transform
-			{ 18, 18, 8 },		// 222 bits per transform
-			{ 9, 18, 18 },		// 225 bits per transform
-			{ 18, 9, 18 },		// 225 bits per transform
-			{ 18, 18, 9 },		// 225 bits per transform
-			{ 10, 18, 18 },		// 228 bits per transform
-			{ 18, 10, 18 },		// 228 bits per transform
-			{ 18, 18, 10 },		// 228 bits per transform
-			{ 11, 18, 18 },		// 231 bits per transform
-			{ 18, 11, 18 },		// 231 bits per transform
-			{ 18, 18, 11 },		// 231 bits per transform
-			{ 12, 18, 18 },		// 234 bits per transform
-			{ 18, 12, 18 },		// 234 bits per transform
-			{ 18, 18, 12 },		// 234 bits per transform
-			{ 13, 18, 18 },		// 237 bits per transform
-			{ 18, 13, 18 },		// 237 bits per transform
-			{ 18, 18, 13 },		// 237 bits per transform
-			{ 14, 18, 18 },		// 240 bits per transform
-			{ 18, 14, 18 },		// 240 bits per transform
-			{ 18, 18, 14 },		// 240 bits per transform
-			{ 15, 18, 18 },		// 243 bits per transform
-			{ 18, 15, 18 },		// 243 bits per transform
-			{ 18, 18, 15 },		// 243 bits per transform
-			{ 16, 18, 18 },		// 246 bits per transform
-			{ 18, 16, 18 },		// 246 bits per transform
-			{ 18, 18, 16 },		// 246 bits per transform
-			{ 17, 18, 18 },		// 249 bits per transform
-			{ 18, 17, 18 },		// 249 bits per transform
-			{ 18, 18, 17 },		// 249 bits per transform
-			{ 18, 18, 18 },		// 288 bits per transform
+			{ 0, 0, 1 },		// 3 bits per transform
+			{ 0, 1, 0 },		// 3 bits per transform
+			{ 1, 0, 0 },		// 3 bits per transform
+			{ 0, 0, 2 },		// 6 bits per transform
+			{ 0, 1, 1 },		// 6 bits per transform
+			{ 0, 2, 0 },		// 6 bits per transform
+			{ 1, 0, 1 },		// 6 bits per transform
+			{ 1, 1, 0 },		// 6 bits per transform
+			{ 2, 0, 0 },		// 6 bits per transform
+			{ 0, 0, 3 },		// 9 bits per transform
+			{ 0, 1, 2 },		// 9 bits per transform
+			{ 0, 2, 1 },		// 9 bits per transform
+			{ 0, 3, 0 },		// 9 bits per transform
+			{ 1, 0, 2 },		// 9 bits per transform
+			{ 1, 1, 1 },		// 9 bits per transform
+			{ 1, 2, 0 },		// 9 bits per transform
+			{ 2, 0, 1 },		// 9 bits per transform
+			{ 2, 1, 0 },		// 9 bits per transform
+			{ 3, 0, 0 },		// 9 bits per transform
+			{ 0, 0, 4 },		// 12 bits per transform
+			{ 0, 1, 3 },		// 12 bits per transform
+			{ 0, 2, 2 },		// 12 bits per transform
+			{ 0, 3, 1 },		// 12 bits per transform
+			{ 0, 4, 0 },		// 12 bits per transform
+			{ 1, 0, 3 },		// 12 bits per transform
+			{ 1, 1, 2 },		// 12 bits per transform
+			{ 1, 2, 1 },		// 12 bits per transform
+			{ 1, 3, 0 },		// 12 bits per transform
+			{ 2, 0, 2 },		// 12 bits per transform
+			{ 2, 1, 1 },		// 12 bits per transform
+			{ 2, 2, 0 },		// 12 bits per transform
+			{ 3, 0, 1 },		// 12 bits per transform
+			{ 3, 1, 0 },		// 12 bits per transform
+			{ 4, 0, 0 },		// 12 bits per transform
+			{ 0, 0, 5 },		// 15 bits per transform
+			{ 0, 1, 4 },		// 15 bits per transform
+			{ 0, 2, 3 },		// 15 bits per transform
+			{ 0, 3, 2 },		// 15 bits per transform
+			{ 0, 4, 1 },		// 15 bits per transform
+			{ 0, 5, 0 },		// 15 bits per transform
+			{ 1, 0, 4 },		// 15 bits per transform
+			{ 1, 1, 3 },		// 15 bits per transform
+			{ 1, 2, 2 },		// 15 bits per transform
+			{ 1, 3, 1 },		// 15 bits per transform
+			{ 1, 4, 0 },		// 15 bits per transform
+			{ 2, 0, 3 },		// 15 bits per transform
+			{ 2, 1, 2 },		// 15 bits per transform
+			{ 2, 2, 1 },		// 15 bits per transform
+			{ 2, 3, 0 },		// 15 bits per transform
+			{ 3, 0, 2 },		// 15 bits per transform
+			{ 3, 1, 1 },		// 15 bits per transform
+			{ 3, 2, 0 },		// 15 bits per transform
+			{ 4, 0, 1 },		// 15 bits per transform
+			{ 4, 1, 0 },		// 15 bits per transform
+			{ 5, 0, 0 },		// 15 bits per transform
+			{ 0, 0, 6 },		// 18 bits per transform
+			{ 0, 1, 5 },		// 18 bits per transform
+			{ 0, 2, 4 },		// 18 bits per transform
+			{ 0, 3, 3 },		// 18 bits per transform
+			{ 0, 4, 2 },		// 18 bits per transform
+			{ 0, 5, 1 },		// 18 bits per transform
+			{ 0, 6, 0 },		// 18 bits per transform
+			{ 1, 0, 5 },		// 18 bits per transform
+			{ 1, 1, 4 },		// 18 bits per transform
+			{ 1, 2, 3 },		// 18 bits per transform
+			{ 1, 3, 2 },		// 18 bits per transform
+			{ 1, 4, 1 },		// 18 bits per transform
+			{ 1, 5, 0 },		// 18 bits per transform
+			{ 2, 0, 4 },		// 18 bits per transform
+			{ 2, 1, 3 },		// 18 bits per transform
+			{ 2, 2, 2 },		// 18 bits per transform
+			{ 2, 3, 1 },		// 18 bits per transform
+			{ 2, 4, 0 },		// 18 bits per transform
+			{ 3, 0, 3 },		// 18 bits per transform
+			{ 3, 1, 2 },		// 18 bits per transform
+			{ 3, 2, 1 },		// 18 bits per transform
+			{ 3, 3, 0 },		// 18 bits per transform
+			{ 4, 0, 2 },		// 18 bits per transform
+			{ 4, 1, 1 },		// 18 bits per transform
+			{ 4, 2, 0 },		// 18 bits per transform
+			{ 5, 0, 1 },		// 18 bits per transform
+			{ 5, 1, 0 },		// 18 bits per transform
+			{ 6, 0, 0 },		// 18 bits per transform
+			{ 0, 0, 7 },		// 21 bits per transform
+			{ 0, 1, 6 },		// 21 bits per transform
+			{ 0, 2, 5 },		// 21 bits per transform
+			{ 0, 3, 4 },		// 21 bits per transform
+			{ 0, 4, 3 },		// 21 bits per transform
+			{ 0, 5, 2 },		// 21 bits per transform
+			{ 0, 6, 1 },		// 21 bits per transform
+			{ 0, 7, 0 },		// 21 bits per transform
+			{ 1, 0, 6 },		// 21 bits per transform
+			{ 1, 1, 5 },		// 21 bits per transform
+			{ 1, 2, 4 },		// 21 bits per transform
+			{ 1, 3, 3 },		// 21 bits per transform
+			{ 1, 4, 2 },		// 21 bits per transform
+			{ 1, 5, 1 },		// 21 bits per transform
+			{ 1, 6, 0 },		// 21 bits per transform
+			{ 2, 0, 5 },		// 21 bits per transform
+			{ 2, 1, 4 },		// 21 bits per transform
+			{ 2, 2, 3 },		// 21 bits per transform
+			{ 2, 3, 2 },		// 21 bits per transform
+			{ 2, 4, 1 },		// 21 bits per transform
+			{ 2, 5, 0 },		// 21 bits per transform
+			{ 3, 0, 4 },		// 21 bits per transform
+			{ 3, 1, 3 },		// 21 bits per transform
+			{ 3, 2, 2 },		// 21 bits per transform
+			{ 3, 3, 1 },		// 21 bits per transform
+			{ 3, 4, 0 },		// 21 bits per transform
+			{ 4, 0, 3 },		// 21 bits per transform
+			{ 4, 1, 2 },		// 21 bits per transform
+			{ 4, 2, 1 },		// 21 bits per transform
+			{ 4, 3, 0 },		// 21 bits per transform
+			{ 5, 0, 2 },		// 21 bits per transform
+			{ 5, 1, 1 },		// 21 bits per transform
+			{ 5, 2, 0 },		// 21 bits per transform
+			{ 6, 0, 1 },		// 21 bits per transform
+			{ 6, 1, 0 },		// 21 bits per transform
+			{ 7, 0, 0 },		// 21 bits per transform
+			{ 0, 0, 8 },		// 24 bits per transform
+			{ 0, 1, 7 },		// 24 bits per transform
+			{ 0, 2, 6 },		// 24 bits per transform
+			{ 0, 3, 5 },		// 24 bits per transform
+			{ 0, 4, 4 },		// 24 bits per transform
+			{ 0, 5, 3 },		// 24 bits per transform
+			{ 0, 6, 2 },		// 24 bits per transform
+			{ 0, 7, 1 },		// 24 bits per transform
+			{ 0, 8, 0 },		// 24 bits per transform
+			{ 1, 0, 7 },		// 24 bits per transform
+			{ 1, 1, 6 },		// 24 bits per transform
+			{ 1, 2, 5 },		// 24 bits per transform
+			{ 1, 3, 4 },		// 24 bits per transform
+			{ 1, 4, 3 },		// 24 bits per transform
+			{ 1, 5, 2 },		// 24 bits per transform
+			{ 1, 6, 1 },		// 24 bits per transform
+			{ 1, 7, 0 },		// 24 bits per transform
+			{ 2, 0, 6 },		// 24 bits per transform
+			{ 2, 1, 5 },		// 24 bits per transform
+			{ 2, 2, 4 },		// 24 bits per transform
+			{ 2, 3, 3 },		// 24 bits per transform
+			{ 2, 4, 2 },		// 24 bits per transform
+			{ 2, 5, 1 },		// 24 bits per transform
+			{ 2, 6, 0 },		// 24 bits per transform
+			{ 3, 0, 5 },		// 24 bits per transform
+			{ 3, 1, 4 },		// 24 bits per transform
+			{ 3, 2, 3 },		// 24 bits per transform
+			{ 3, 3, 2 },		// 24 bits per transform
+			{ 3, 4, 1 },		// 24 bits per transform
+			{ 3, 5, 0 },		// 24 bits per transform
+			{ 4, 0, 4 },		// 24 bits per transform
+			{ 4, 1, 3 },		// 24 bits per transform
+			{ 4, 2, 2 },		// 24 bits per transform
+			{ 4, 3, 1 },		// 24 bits per transform
+			{ 4, 4, 0 },		// 24 bits per transform
+			{ 5, 0, 3 },		// 24 bits per transform
+			{ 5, 1, 2 },		// 24 bits per transform
+			{ 5, 2, 1 },		// 24 bits per transform
+			{ 5, 3, 0 },		// 24 bits per transform
+			{ 6, 0, 2 },		// 24 bits per transform
+			{ 6, 1, 1 },		// 24 bits per transform
+			{ 6, 2, 0 },		// 24 bits per transform
+			{ 7, 0, 1 },		// 24 bits per transform
+			{ 7, 1, 0 },		// 24 bits per transform
+			{ 8, 0, 0 },		// 24 bits per transform
+			{ 0, 0, 9 },		// 27 bits per transform
+			{ 0, 1, 8 },		// 27 bits per transform
+			{ 0, 2, 7 },		// 27 bits per transform
+			{ 0, 3, 6 },		// 27 bits per transform
+			{ 0, 4, 5 },		// 27 bits per transform
+			{ 0, 5, 4 },		// 27 bits per transform
+			{ 0, 6, 3 },		// 27 bits per transform
+			{ 0, 7, 2 },		// 27 bits per transform
+			{ 0, 8, 1 },		// 27 bits per transform
+			{ 0, 9, 0 },		// 27 bits per transform
+			{ 1, 0, 8 },		// 27 bits per transform
+			{ 1, 1, 7 },		// 27 bits per transform
+			{ 1, 2, 6 },		// 27 bits per transform
+			{ 1, 3, 5 },		// 27 bits per transform
+			{ 1, 4, 4 },		// 27 bits per transform
+			{ 1, 5, 3 },		// 27 bits per transform
+			{ 1, 6, 2 },		// 27 bits per transform
+			{ 1, 7, 1 },		// 27 bits per transform
+			{ 1, 8, 0 },		// 27 bits per transform
+			{ 2, 0, 7 },		// 27 bits per transform
+			{ 2, 1, 6 },		// 27 bits per transform
+			{ 2, 2, 5 },		// 27 bits per transform
+			{ 2, 3, 4 },		// 27 bits per transform
+			{ 2, 4, 3 },		// 27 bits per transform
+			{ 2, 5, 2 },		// 27 bits per transform
+			{ 2, 6, 1 },		// 27 bits per transform
+			{ 2, 7, 0 },		// 27 bits per transform
+			{ 3, 0, 6 },		// 27 bits per transform
+			{ 3, 1, 5 },		// 27 bits per transform
+			{ 3, 2, 4 },		// 27 bits per transform
+			{ 3, 3, 3 },		// 27 bits per transform
+			{ 3, 4, 2 },		// 27 bits per transform
+			{ 3, 5, 1 },		// 27 bits per transform
+			{ 3, 6, 0 },		// 27 bits per transform
+			{ 4, 0, 5 },		// 27 bits per transform
+			{ 4, 1, 4 },		// 27 bits per transform
+			{ 4, 2, 3 },		// 27 bits per transform
+			{ 4, 3, 2 },		// 27 bits per transform
+			{ 4, 4, 1 },		// 27 bits per transform
+			{ 4, 5, 0 },		// 27 bits per transform
+			{ 5, 0, 4 },		// 27 bits per transform
+			{ 5, 1, 3 },		// 27 bits per transform
+			{ 5, 2, 2 },		// 27 bits per transform
+			{ 5, 3, 1 },		// 27 bits per transform
+			{ 5, 4, 0 },		// 27 bits per transform
+			{ 6, 0, 3 },		// 27 bits per transform
+			{ 6, 1, 2 },		// 27 bits per transform
+			{ 6, 2, 1 },		// 27 bits per transform
+			{ 6, 3, 0 },		// 27 bits per transform
+			{ 7, 0, 2 },		// 27 bits per transform
+			{ 7, 1, 1 },		// 27 bits per transform
+			{ 7, 2, 0 },		// 27 bits per transform
+			{ 8, 0, 1 },		// 27 bits per transform
+			{ 8, 1, 0 },		// 27 bits per transform
+			{ 9, 0, 0 },		// 27 bits per transform
+			{ 0, 0, 10 },		// 30 bits per transform
+			{ 0, 1, 9 },		// 30 bits per transform
+			{ 0, 2, 8 },		// 30 bits per transform
+			{ 0, 3, 7 },		// 30 bits per transform
+			{ 0, 4, 6 },		// 30 bits per transform
+			{ 0, 5, 5 },		// 30 bits per transform
+			{ 0, 6, 4 },		// 30 bits per transform
+			{ 0, 7, 3 },		// 30 bits per transform
+			{ 0, 8, 2 },		// 30 bits per transform
+			{ 0, 9, 1 },		// 30 bits per transform
+			{ 0, 10, 0 },		// 30 bits per transform
+			{ 1, 0, 9 },		// 30 bits per transform
+			{ 1, 1, 8 },		// 30 bits per transform
+			{ 1, 2, 7 },		// 30 bits per transform
+			{ 1, 3, 6 },		// 30 bits per transform
+			{ 1, 4, 5 },		// 30 bits per transform
+			{ 1, 5, 4 },		// 30 bits per transform
+			{ 1, 6, 3 },		// 30 bits per transform
+			{ 1, 7, 2 },		// 30 bits per transform
+			{ 1, 8, 1 },		// 30 bits per transform
+			{ 1, 9, 0 },		// 30 bits per transform
+			{ 2, 0, 8 },		// 30 bits per transform
+			{ 2, 1, 7 },		// 30 bits per transform
+			{ 2, 2, 6 },		// 30 bits per transform
+			{ 2, 3, 5 },		// 30 bits per transform
+			{ 2, 4, 4 },		// 30 bits per transform
+			{ 2, 5, 3 },		// 30 bits per transform
+			{ 2, 6, 2 },		// 30 bits per transform
+			{ 2, 7, 1 },		// 30 bits per transform
+			{ 2, 8, 0 },		// 30 bits per transform
+			{ 3, 0, 7 },		// 30 bits per transform
+			{ 3, 1, 6 },		// 30 bits per transform
+			{ 3, 2, 5 },		// 30 bits per transform
+			{ 3, 3, 4 },		// 30 bits per transform
+			{ 3, 4, 3 },		// 30 bits per transform
+			{ 3, 5, 2 },		// 30 bits per transform
+			{ 3, 6, 1 },		// 30 bits per transform
+			{ 3, 7, 0 },		// 30 bits per transform
+			{ 4, 0, 6 },		// 30 bits per transform
+			{ 4, 1, 5 },		// 30 bits per transform
+			{ 4, 2, 4 },		// 30 bits per transform
+			{ 4, 3, 3 },		// 30 bits per transform
+			{ 4, 4, 2 },		// 30 bits per transform
+			{ 4, 5, 1 },		// 30 bits per transform
+			{ 4, 6, 0 },		// 30 bits per transform
+			{ 5, 0, 5 },		// 30 bits per transform
+			{ 5, 1, 4 },		// 30 bits per transform
+			{ 5, 2, 3 },		// 30 bits per transform
+			{ 5, 3, 2 },		// 30 bits per transform
+			{ 5, 4, 1 },		// 30 bits per transform
+			{ 5, 5, 0 },		// 30 bits per transform
+			{ 6, 0, 4 },		// 30 bits per transform
+			{ 6, 1, 3 },		// 30 bits per transform
+			{ 6, 2, 2 },		// 30 bits per transform
+			{ 6, 3, 1 },		// 30 bits per transform
+			{ 6, 4, 0 },		// 30 bits per transform
+			{ 7, 0, 3 },		// 30 bits per transform
+			{ 7, 1, 2 },		// 30 bits per transform
+			{ 7, 2, 1 },		// 30 bits per transform
+			{ 7, 3, 0 },		// 30 bits per transform
+			{ 8, 0, 2 },		// 30 bits per transform
+			{ 8, 1, 1 },		// 30 bits per transform
+			{ 8, 2, 0 },		// 30 bits per transform
+			{ 9, 0, 1 },		// 30 bits per transform
+			{ 9, 1, 0 },		// 30 bits per transform
+			{ 10, 0, 0 },		// 30 bits per transform
+			{ 0, 0, 11 },		// 33 bits per transform
+			{ 0, 1, 10 },		// 33 bits per transform
+			{ 0, 2, 9 },		// 33 bits per transform
+			{ 0, 3, 8 },		// 33 bits per transform
+			{ 0, 4, 7 },		// 33 bits per transform
+			{ 0, 5, 6 },		// 33 bits per transform
+			{ 0, 6, 5 },		// 33 bits per transform
+			{ 0, 7, 4 },		// 33 bits per transform
+			{ 0, 8, 3 },		// 33 bits per transform
+			{ 0, 9, 2 },		// 33 bits per transform
+			{ 0, 10, 1 },		// 33 bits per transform
+			{ 0, 11, 0 },		// 33 bits per transform
+			{ 1, 0, 10 },		// 33 bits per transform
+			{ 1, 1, 9 },		// 33 bits per transform
+			{ 1, 2, 8 },		// 33 bits per transform
+			{ 1, 3, 7 },		// 33 bits per transform
+			{ 1, 4, 6 },		// 33 bits per transform
+			{ 1, 5, 5 },		// 33 bits per transform
+			{ 1, 6, 4 },		// 33 bits per transform
+			{ 1, 7, 3 },		// 33 bits per transform
+			{ 1, 8, 2 },		// 33 bits per transform
+			{ 1, 9, 1 },		// 33 bits per transform
+			{ 1, 10, 0 },		// 33 bits per transform
+			{ 2, 0, 9 },		// 33 bits per transform
+			{ 2, 1, 8 },		// 33 bits per transform
+			{ 2, 2, 7 },		// 33 bits per transform
+			{ 2, 3, 6 },		// 33 bits per transform
+			{ 2, 4, 5 },		// 33 bits per transform
+			{ 2, 5, 4 },		// 33 bits per transform
+			{ 2, 6, 3 },		// 33 bits per transform
+			{ 2, 7, 2 },		// 33 bits per transform
+			{ 2, 8, 1 },		// 33 bits per transform
+			{ 2, 9, 0 },		// 33 bits per transform
+			{ 3, 0, 8 },		// 33 bits per transform
+			{ 3, 1, 7 },		// 33 bits per transform
+			{ 3, 2, 6 },		// 33 bits per transform
+			{ 3, 3, 5 },		// 33 bits per transform
+			{ 3, 4, 4 },		// 33 bits per transform
+			{ 3, 5, 3 },		// 33 bits per transform
+			{ 3, 6, 2 },		// 33 bits per transform
+			{ 3, 7, 1 },		// 33 bits per transform
+			{ 3, 8, 0 },		// 33 bits per transform
+			{ 4, 0, 7 },		// 33 bits per transform
+			{ 4, 1, 6 },		// 33 bits per transform
+			{ 4, 2, 5 },		// 33 bits per transform
+			{ 4, 3, 4 },		// 33 bits per transform
+			{ 4, 4, 3 },		// 33 bits per transform
+			{ 4, 5, 2 },		// 33 bits per transform
+			{ 4, 6, 1 },		// 33 bits per transform
+			{ 4, 7, 0 },		// 33 bits per transform
+			{ 5, 0, 6 },		// 33 bits per transform
+			{ 5, 1, 5 },		// 33 bits per transform
+			{ 5, 2, 4 },		// 33 bits per transform
+			{ 5, 3, 3 },		// 33 bits per transform
+			{ 5, 4, 2 },		// 33 bits per transform
+			{ 5, 5, 1 },		// 33 bits per transform
+			{ 5, 6, 0 },		// 33 bits per transform
+			{ 6, 0, 5 },		// 33 bits per transform
+			{ 6, 1, 4 },		// 33 bits per transform
+			{ 6, 2, 3 },		// 33 bits per transform
+			{ 6, 3, 2 },		// 33 bits per transform
+			{ 6, 4, 1 },		// 33 bits per transform
+			{ 6, 5, 0 },		// 33 bits per transform
+			{ 7, 0, 4 },		// 33 bits per transform
+			{ 7, 1, 3 },		// 33 bits per transform
+			{ 7, 2, 2 },		// 33 bits per transform
+			{ 7, 3, 1 },		// 33 bits per transform
+			{ 7, 4, 0 },		// 33 bits per transform
+			{ 8, 0, 3 },		// 33 bits per transform
+			{ 8, 1, 2 },		// 33 bits per transform
+			{ 8, 2, 1 },		// 33 bits per transform
+			{ 8, 3, 0 },		// 33 bits per transform
+			{ 9, 0, 2 },		// 33 bits per transform
+			{ 9, 1, 1 },		// 33 bits per transform
+			{ 9, 2, 0 },		// 33 bits per transform
+			{ 10, 0, 1 },		// 33 bits per transform
+			{ 10, 1, 0 },		// 33 bits per transform
+			{ 11, 0, 0 },		// 33 bits per transform
+			{ 0, 0, 12 },		// 36 bits per transform
+			{ 0, 1, 11 },		// 36 bits per transform
+			{ 0, 2, 10 },		// 36 bits per transform
+			{ 0, 3, 9 },		// 36 bits per transform
+			{ 0, 4, 8 },		// 36 bits per transform
+			{ 0, 5, 7 },		// 36 bits per transform
+			{ 0, 6, 6 },		// 36 bits per transform
+			{ 0, 7, 5 },		// 36 bits per transform
+			{ 0, 8, 4 },		// 36 bits per transform
+			{ 0, 9, 3 },		// 36 bits per transform
+			{ 0, 10, 2 },		// 36 bits per transform
+			{ 0, 11, 1 },		// 36 bits per transform
+			{ 0, 12, 0 },		// 36 bits per transform
+			{ 1, 0, 11 },		// 36 bits per transform
+			{ 1, 1, 10 },		// 36 bits per transform
+			{ 1, 2, 9 },		// 36 bits per transform
+			{ 1, 3, 8 },		// 36 bits per transform
+			{ 1, 4, 7 },		// 36 bits per transform
+			{ 1, 5, 6 },		// 36 bits per transform
+			{ 1, 6, 5 },		// 36 bits per transform
+			{ 1, 7, 4 },		// 36 bits per transform
+			{ 1, 8, 3 },		// 36 bits per transform
+			{ 1, 9, 2 },		// 36 bits per transform
+			{ 1, 10, 1 },		// 36 bits per transform
+			{ 1, 11, 0 },		// 36 bits per transform
+			{ 2, 0, 10 },		// 36 bits per transform
+			{ 2, 1, 9 },		// 36 bits per transform
+			{ 2, 2, 8 },		// 36 bits per transform
+			{ 2, 3, 7 },		// 36 bits per transform
+			{ 2, 4, 6 },		// 36 bits per transform
+			{ 2, 5, 5 },		// 36 bits per transform
+			{ 2, 6, 4 },		// 36 bits per transform
+			{ 2, 7, 3 },		// 36 bits per transform
+			{ 2, 8, 2 },		// 36 bits per transform
+			{ 2, 9, 1 },		// 36 bits per transform
+			{ 2, 10, 0 },		// 36 bits per transform
+			{ 3, 0, 9 },		// 36 bits per transform
+			{ 3, 1, 8 },		// 36 bits per transform
+			{ 3, 2, 7 },		// 36 bits per transform
+			{ 3, 3, 6 },		// 36 bits per transform
+			{ 3, 4, 5 },		// 36 bits per transform
+			{ 3, 5, 4 },		// 36 bits per transform
+			{ 3, 6, 3 },		// 36 bits per transform
+			{ 3, 7, 2 },		// 36 bits per transform
+			{ 3, 8, 1 },		// 36 bits per transform
+			{ 3, 9, 0 },		// 36 bits per transform
+			{ 4, 0, 8 },		// 36 bits per transform
+			{ 4, 1, 7 },		// 36 bits per transform
+			{ 4, 2, 6 },		// 36 bits per transform
+			{ 4, 3, 5 },		// 36 bits per transform
+			{ 4, 4, 4 },		// 36 bits per transform
+			{ 4, 5, 3 },		// 36 bits per transform
+			{ 4, 6, 2 },		// 36 bits per transform
+			{ 4, 7, 1 },		// 36 bits per transform
+			{ 4, 8, 0 },		// 36 bits per transform
+			{ 5, 0, 7 },		// 36 bits per transform
+			{ 5, 1, 6 },		// 36 bits per transform
+			{ 5, 2, 5 },		// 36 bits per transform
+			{ 5, 3, 4 },		// 36 bits per transform
+			{ 5, 4, 3 },		// 36 bits per transform
+			{ 5, 5, 2 },		// 36 bits per transform
+			{ 5, 6, 1 },		// 36 bits per transform
+			{ 5, 7, 0 },		// 36 bits per transform
+			{ 6, 0, 6 },		// 36 bits per transform
+			{ 6, 1, 5 },		// 36 bits per transform
+			{ 6, 2, 4 },		// 36 bits per transform
+			{ 6, 3, 3 },		// 36 bits per transform
+			{ 6, 4, 2 },		// 36 bits per transform
+			{ 6, 5, 1 },		// 36 bits per transform
+			{ 6, 6, 0 },		// 36 bits per transform
+			{ 7, 0, 5 },		// 36 bits per transform
+			{ 7, 1, 4 },		// 36 bits per transform
+			{ 7, 2, 3 },		// 36 bits per transform
+			{ 7, 3, 2 },		// 36 bits per transform
+			{ 7, 4, 1 },		// 36 bits per transform
+			{ 7, 5, 0 },		// 36 bits per transform
+			{ 8, 0, 4 },		// 36 bits per transform
+			{ 8, 1, 3 },		// 36 bits per transform
+			{ 8, 2, 2 },		// 36 bits per transform
+			{ 8, 3, 1 },		// 36 bits per transform
+			{ 8, 4, 0 },		// 36 bits per transform
+			{ 9, 0, 3 },		// 36 bits per transform
+			{ 9, 1, 2 },		// 36 bits per transform
+			{ 9, 2, 1 },		// 36 bits per transform
+			{ 9, 3, 0 },		// 36 bits per transform
+			{ 10, 0, 2 },		// 36 bits per transform
+			{ 10, 1, 1 },		// 36 bits per transform
+			{ 10, 2, 0 },		// 36 bits per transform
+			{ 11, 0, 1 },		// 36 bits per transform
+			{ 11, 1, 0 },		// 36 bits per transform
+			{ 12, 0, 0 },		// 36 bits per transform
+			{ 0, 0, 13 },		// 39 bits per transform
+			{ 0, 1, 12 },		// 39 bits per transform
+			{ 0, 2, 11 },		// 39 bits per transform
+			{ 0, 3, 10 },		// 39 bits per transform
+			{ 0, 4, 9 },		// 39 bits per transform
+			{ 0, 5, 8 },		// 39 bits per transform
+			{ 0, 6, 7 },		// 39 bits per transform
+			{ 0, 7, 6 },		// 39 bits per transform
+			{ 0, 8, 5 },		// 39 bits per transform
+			{ 0, 9, 4 },		// 39 bits per transform
+			{ 0, 10, 3 },		// 39 bits per transform
+			{ 0, 11, 2 },		// 39 bits per transform
+			{ 0, 12, 1 },		// 39 bits per transform
+			{ 0, 13, 0 },		// 39 bits per transform
+			{ 1, 0, 12 },		// 39 bits per transform
+			{ 1, 1, 11 },		// 39 bits per transform
+			{ 1, 2, 10 },		// 39 bits per transform
+			{ 1, 3, 9 },		// 39 bits per transform
+			{ 1, 4, 8 },		// 39 bits per transform
+			{ 1, 5, 7 },		// 39 bits per transform
+			{ 1, 6, 6 },		// 39 bits per transform
+			{ 1, 7, 5 },		// 39 bits per transform
+			{ 1, 8, 4 },		// 39 bits per transform
+			{ 1, 9, 3 },		// 39 bits per transform
+			{ 1, 10, 2 },		// 39 bits per transform
+			{ 1, 11, 1 },		// 39 bits per transform
+			{ 1, 12, 0 },		// 39 bits per transform
+			{ 2, 0, 11 },		// 39 bits per transform
+			{ 2, 1, 10 },		// 39 bits per transform
+			{ 2, 2, 9 },		// 39 bits per transform
+			{ 2, 3, 8 },		// 39 bits per transform
+			{ 2, 4, 7 },		// 39 bits per transform
+			{ 2, 5, 6 },		// 39 bits per transform
+			{ 2, 6, 5 },		// 39 bits per transform
+			{ 2, 7, 4 },		// 39 bits per transform
+			{ 2, 8, 3 },		// 39 bits per transform
+			{ 2, 9, 2 },		// 39 bits per transform
+			{ 2, 10, 1 },		// 39 bits per transform
+			{ 2, 11, 0 },		// 39 bits per transform
+			{ 3, 0, 10 },		// 39 bits per transform
+			{ 3, 1, 9 },		// 39 bits per transform
+			{ 3, 2, 8 },		// 39 bits per transform
+			{ 3, 3, 7 },		// 39 bits per transform
+			{ 3, 4, 6 },		// 39 bits per transform
+			{ 3, 5, 5 },		// 39 bits per transform
+			{ 3, 6, 4 },		// 39 bits per transform
+			{ 3, 7, 3 },		// 39 bits per transform
+			{ 3, 8, 2 },		// 39 bits per transform
+			{ 3, 9, 1 },		// 39 bits per transform
+			{ 3, 10, 0 },		// 39 bits per transform
+			{ 4, 0, 9 },		// 39 bits per transform
+			{ 4, 1, 8 },		// 39 bits per transform
+			{ 4, 2, 7 },		// 39 bits per transform
+			{ 4, 3, 6 },		// 39 bits per transform
+			{ 4, 4, 5 },		// 39 bits per transform
+			{ 4, 5, 4 },		// 39 bits per transform
+			{ 4, 6, 3 },		// 39 bits per transform
+			{ 4, 7, 2 },		// 39 bits per transform
+			{ 4, 8, 1 },		// 39 bits per transform
+			{ 4, 9, 0 },		// 39 bits per transform
+			{ 5, 0, 8 },		// 39 bits per transform
+			{ 5, 1, 7 },		// 39 bits per transform
+			{ 5, 2, 6 },		// 39 bits per transform
+			{ 5, 3, 5 },		// 39 bits per transform
+			{ 5, 4, 4 },		// 39 bits per transform
+			{ 5, 5, 3 },		// 39 bits per transform
+			{ 5, 6, 2 },		// 39 bits per transform
+			{ 5, 7, 1 },		// 39 bits per transform
+			{ 5, 8, 0 },		// 39 bits per transform
+			{ 6, 0, 7 },		// 39 bits per transform
+			{ 6, 1, 6 },		// 39 bits per transform
+			{ 6, 2, 5 },		// 39 bits per transform
+			{ 6, 3, 4 },		// 39 bits per transform
+			{ 6, 4, 3 },		// 39 bits per transform
+			{ 6, 5, 2 },		// 39 bits per transform
+			{ 6, 6, 1 },		// 39 bits per transform
+			{ 6, 7, 0 },		// 39 bits per transform
+			{ 7, 0, 6 },		// 39 bits per transform
+			{ 7, 1, 5 },		// 39 bits per transform
+			{ 7, 2, 4 },		// 39 bits per transform
+			{ 7, 3, 3 },		// 39 bits per transform
+			{ 7, 4, 2 },		// 39 bits per transform
+			{ 7, 5, 1 },		// 39 bits per transform
+			{ 7, 6, 0 },		// 39 bits per transform
+			{ 8, 0, 5 },		// 39 bits per transform
+			{ 8, 1, 4 },		// 39 bits per transform
+			{ 8, 2, 3 },		// 39 bits per transform
+			{ 8, 3, 2 },		// 39 bits per transform
+			{ 8, 4, 1 },		// 39 bits per transform
+			{ 8, 5, 0 },		// 39 bits per transform
+			{ 9, 0, 4 },		// 39 bits per transform
+			{ 9, 1, 3 },		// 39 bits per transform
+			{ 9, 2, 2 },		// 39 bits per transform
+			{ 9, 3, 1 },		// 39 bits per transform
+			{ 9, 4, 0 },		// 39 bits per transform
+			{ 10, 0, 3 },		// 39 bits per transform
+			{ 10, 1, 2 },		// 39 bits per transform
+			{ 10, 2, 1 },		// 39 bits per transform
+			{ 10, 3, 0 },		// 39 bits per transform
+			{ 11, 0, 2 },		// 39 bits per transform
+			{ 11, 1, 1 },		// 39 bits per transform
+			{ 11, 2, 0 },		// 39 bits per transform
+			{ 12, 0, 1 },		// 39 bits per transform
+			{ 12, 1, 0 },		// 39 bits per transform
+			{ 13, 0, 0 },		// 39 bits per transform
+			{ 0, 0, 14 },		// 42 bits per transform
+			{ 0, 1, 13 },		// 42 bits per transform
+			{ 0, 2, 12 },		// 42 bits per transform
+			{ 0, 3, 11 },		// 42 bits per transform
+			{ 0, 4, 10 },		// 42 bits per transform
+			{ 0, 5, 9 },		// 42 bits per transform
+			{ 0, 6, 8 },		// 42 bits per transform
+			{ 0, 7, 7 },		// 42 bits per transform
+			{ 0, 8, 6 },		// 42 bits per transform
+			{ 0, 9, 5 },		// 42 bits per transform
+			{ 0, 10, 4 },		// 42 bits per transform
+			{ 0, 11, 3 },		// 42 bits per transform
+			{ 0, 12, 2 },		// 42 bits per transform
+			{ 0, 13, 1 },		// 42 bits per transform
+			{ 0, 14, 0 },		// 42 bits per transform
+			{ 1, 0, 13 },		// 42 bits per transform
+			{ 1, 1, 12 },		// 42 bits per transform
+			{ 1, 2, 11 },		// 42 bits per transform
+			{ 1, 3, 10 },		// 42 bits per transform
+			{ 1, 4, 9 },		// 42 bits per transform
+			{ 1, 5, 8 },		// 42 bits per transform
+			{ 1, 6, 7 },		// 42 bits per transform
+			{ 1, 7, 6 },		// 42 bits per transform
+			{ 1, 8, 5 },		// 42 bits per transform
+			{ 1, 9, 4 },		// 42 bits per transform
+			{ 1, 10, 3 },		// 42 bits per transform
+			{ 1, 11, 2 },		// 42 bits per transform
+			{ 1, 12, 1 },		// 42 bits per transform
+			{ 1, 13, 0 },		// 42 bits per transform
+			{ 2, 0, 12 },		// 42 bits per transform
+			{ 2, 1, 11 },		// 42 bits per transform
+			{ 2, 2, 10 },		// 42 bits per transform
+			{ 2, 3, 9 },		// 42 bits per transform
+			{ 2, 4, 8 },		// 42 bits per transform
+			{ 2, 5, 7 },		// 42 bits per transform
+			{ 2, 6, 6 },		// 42 bits per transform
+			{ 2, 7, 5 },		// 42 bits per transform
+			{ 2, 8, 4 },		// 42 bits per transform
+			{ 2, 9, 3 },		// 42 bits per transform
+			{ 2, 10, 2 },		// 42 bits per transform
+			{ 2, 11, 1 },		// 42 bits per transform
+			{ 2, 12, 0 },		// 42 bits per transform
+			{ 3, 0, 11 },		// 42 bits per transform
+			{ 3, 1, 10 },		// 42 bits per transform
+			{ 3, 2, 9 },		// 42 bits per transform
+			{ 3, 3, 8 },		// 42 bits per transform
+			{ 3, 4, 7 },		// 42 bits per transform
+			{ 3, 5, 6 },		// 42 bits per transform
+			{ 3, 6, 5 },		// 42 bits per transform
+			{ 3, 7, 4 },		// 42 bits per transform
+			{ 3, 8, 3 },		// 42 bits per transform
+			{ 3, 9, 2 },		// 42 bits per transform
+			{ 3, 10, 1 },		// 42 bits per transform
+			{ 3, 11, 0 },		// 42 bits per transform
+			{ 4, 0, 10 },		// 42 bits per transform
+			{ 4, 1, 9 },		// 42 bits per transform
+			{ 4, 2, 8 },		// 42 bits per transform
+			{ 4, 3, 7 },		// 42 bits per transform
+			{ 4, 4, 6 },		// 42 bits per transform
+			{ 4, 5, 5 },		// 42 bits per transform
+			{ 4, 6, 4 },		// 42 bits per transform
+			{ 4, 7, 3 },		// 42 bits per transform
+			{ 4, 8, 2 },		// 42 bits per transform
+			{ 4, 9, 1 },		// 42 bits per transform
+			{ 4, 10, 0 },		// 42 bits per transform
+			{ 5, 0, 9 },		// 42 bits per transform
+			{ 5, 1, 8 },		// 42 bits per transform
+			{ 5, 2, 7 },		// 42 bits per transform
+			{ 5, 3, 6 },		// 42 bits per transform
+			{ 5, 4, 5 },		// 42 bits per transform
+			{ 5, 5, 4 },		// 42 bits per transform
+			{ 5, 6, 3 },		// 42 bits per transform
+			{ 5, 7, 2 },		// 42 bits per transform
+			{ 5, 8, 1 },		// 42 bits per transform
+			{ 5, 9, 0 },		// 42 bits per transform
+			{ 6, 0, 8 },		// 42 bits per transform
+			{ 6, 1, 7 },		// 42 bits per transform
+			{ 6, 2, 6 },		// 42 bits per transform
+			{ 6, 3, 5 },		// 42 bits per transform
+			{ 6, 4, 4 },		// 42 bits per transform
+			{ 6, 5, 3 },		// 42 bits per transform
+			{ 6, 6, 2 },		// 42 bits per transform
+			{ 6, 7, 1 },		// 42 bits per transform
+			{ 6, 8, 0 },		// 42 bits per transform
+			{ 7, 0, 7 },		// 42 bits per transform
+			{ 7, 1, 6 },		// 42 bits per transform
+			{ 7, 2, 5 },		// 42 bits per transform
+			{ 7, 3, 4 },		// 42 bits per transform
+			{ 7, 4, 3 },		// 42 bits per transform
+			{ 7, 5, 2 },		// 42 bits per transform
+			{ 7, 6, 1 },		// 42 bits per transform
+			{ 7, 7, 0 },		// 42 bits per transform
+			{ 8, 0, 6 },		// 42 bits per transform
+			{ 8, 1, 5 },		// 42 bits per transform
+			{ 8, 2, 4 },		// 42 bits per transform
+			{ 8, 3, 3 },		// 42 bits per transform
+			{ 8, 4, 2 },		// 42 bits per transform
+			{ 8, 5, 1 },		// 42 bits per transform
+			{ 8, 6, 0 },		// 42 bits per transform
+			{ 9, 0, 5 },		// 42 bits per transform
+			{ 9, 1, 4 },		// 42 bits per transform
+			{ 9, 2, 3 },		// 42 bits per transform
+			{ 9, 3, 2 },		// 42 bits per transform
+			{ 9, 4, 1 },		// 42 bits per transform
+			{ 9, 5, 0 },		// 42 bits per transform
+			{ 10, 0, 4 },		// 42 bits per transform
+			{ 10, 1, 3 },		// 42 bits per transform
+			{ 10, 2, 2 },		// 42 bits per transform
+			{ 10, 3, 1 },		// 42 bits per transform
+			{ 10, 4, 0 },		// 42 bits per transform
+			{ 11, 0, 3 },		// 42 bits per transform
+			{ 11, 1, 2 },		// 42 bits per transform
+			{ 11, 2, 1 },		// 42 bits per transform
+			{ 11, 3, 0 },		// 42 bits per transform
+			{ 12, 0, 2 },		// 42 bits per transform
+			{ 12, 1, 1 },		// 42 bits per transform
+			{ 12, 2, 0 },		// 42 bits per transform
+			{ 13, 0, 1 },		// 42 bits per transform
+			{ 13, 1, 0 },		// 42 bits per transform
+			{ 14, 0, 0 },		// 42 bits per transform
+			{ 0, 0, 15 },		// 45 bits per transform
+			{ 0, 1, 14 },		// 45 bits per transform
+			{ 0, 2, 13 },		// 45 bits per transform
+			{ 0, 3, 12 },		// 45 bits per transform
+			{ 0, 4, 11 },		// 45 bits per transform
+			{ 0, 5, 10 },		// 45 bits per transform
+			{ 0, 6, 9 },		// 45 bits per transform
+			{ 0, 7, 8 },		// 45 bits per transform
+			{ 0, 8, 7 },		// 45 bits per transform
+			{ 0, 9, 6 },		// 45 bits per transform
+			{ 0, 10, 5 },		// 45 bits per transform
+			{ 0, 11, 4 },		// 45 bits per transform
+			{ 0, 12, 3 },		// 45 bits per transform
+			{ 0, 13, 2 },		// 45 bits per transform
+			{ 0, 14, 1 },		// 45 bits per transform
+			{ 0, 15, 0 },		// 45 bits per transform
+			{ 1, 0, 14 },		// 45 bits per transform
+			{ 1, 1, 13 },		// 45 bits per transform
+			{ 1, 2, 12 },		// 45 bits per transform
+			{ 1, 3, 11 },		// 45 bits per transform
+			{ 1, 4, 10 },		// 45 bits per transform
+			{ 1, 5, 9 },		// 45 bits per transform
+			{ 1, 6, 8 },		// 45 bits per transform
+			{ 1, 7, 7 },		// 45 bits per transform
+			{ 1, 8, 6 },		// 45 bits per transform
+			{ 1, 9, 5 },		// 45 bits per transform
+			{ 1, 10, 4 },		// 45 bits per transform
+			{ 1, 11, 3 },		// 45 bits per transform
+			{ 1, 12, 2 },		// 45 bits per transform
+			{ 1, 13, 1 },		// 45 bits per transform
+			{ 1, 14, 0 },		// 45 bits per transform
+			{ 2, 0, 13 },		// 45 bits per transform
+			{ 2, 1, 12 },		// 45 bits per transform
+			{ 2, 2, 11 },		// 45 bits per transform
+			{ 2, 3, 10 },		// 45 bits per transform
+			{ 2, 4, 9 },		// 45 bits per transform
+			{ 2, 5, 8 },		// 45 bits per transform
+			{ 2, 6, 7 },		// 45 bits per transform
+			{ 2, 7, 6 },		// 45 bits per transform
+			{ 2, 8, 5 },		// 45 bits per transform
+			{ 2, 9, 4 },		// 45 bits per transform
+			{ 2, 10, 3 },		// 45 bits per transform
+			{ 2, 11, 2 },		// 45 bits per transform
+			{ 2, 12, 1 },		// 45 bits per transform
+			{ 2, 13, 0 },		// 45 bits per transform
+			{ 3, 0, 12 },		// 45 bits per transform
+			{ 3, 1, 11 },		// 45 bits per transform
+			{ 3, 2, 10 },		// 45 bits per transform
+			{ 3, 3, 9 },		// 45 bits per transform
+			{ 3, 4, 8 },		// 45 bits per transform
+			{ 3, 5, 7 },		// 45 bits per transform
+			{ 3, 6, 6 },		// 45 bits per transform
+			{ 3, 7, 5 },		// 45 bits per transform
+			{ 3, 8, 4 },		// 45 bits per transform
+			{ 3, 9, 3 },		// 45 bits per transform
+			{ 3, 10, 2 },		// 45 bits per transform
+			{ 3, 11, 1 },		// 45 bits per transform
+			{ 3, 12, 0 },		// 45 bits per transform
+			{ 4, 0, 11 },		// 45 bits per transform
+			{ 4, 1, 10 },		// 45 bits per transform
+			{ 4, 2, 9 },		// 45 bits per transform
+			{ 4, 3, 8 },		// 45 bits per transform
+			{ 4, 4, 7 },		// 45 bits per transform
+			{ 4, 5, 6 },		// 45 bits per transform
+			{ 4, 6, 5 },		// 45 bits per transform
+			{ 4, 7, 4 },		// 45 bits per transform
+			{ 4, 8, 3 },		// 45 bits per transform
+			{ 4, 9, 2 },		// 45 bits per transform
+			{ 4, 10, 1 },		// 45 bits per transform
+			{ 4, 11, 0 },		// 45 bits per transform
+			{ 5, 0, 10 },		// 45 bits per transform
+			{ 5, 1, 9 },		// 45 bits per transform
+			{ 5, 2, 8 },		// 45 bits per transform
+			{ 5, 3, 7 },		// 45 bits per transform
+			{ 5, 4, 6 },		// 45 bits per transform
+			{ 5, 5, 5 },		// 45 bits per transform
+			{ 5, 6, 4 },		// 45 bits per transform
+			{ 5, 7, 3 },		// 45 bits per transform
+			{ 5, 8, 2 },		// 45 bits per transform
+			{ 5, 9, 1 },		// 45 bits per transform
+			{ 5, 10, 0 },		// 45 bits per transform
+			{ 6, 0, 9 },		// 45 bits per transform
+			{ 6, 1, 8 },		// 45 bits per transform
+			{ 6, 2, 7 },		// 45 bits per transform
+			{ 6, 3, 6 },		// 45 bits per transform
+			{ 6, 4, 5 },		// 45 bits per transform
+			{ 6, 5, 4 },		// 45 bits per transform
+			{ 6, 6, 3 },		// 45 bits per transform
+			{ 6, 7, 2 },		// 45 bits per transform
+			{ 6, 8, 1 },		// 45 bits per transform
+			{ 6, 9, 0 },		// 45 bits per transform
+			{ 7, 0, 8 },		// 45 bits per transform
+			{ 7, 1, 7 },		// 45 bits per transform
+			{ 7, 2, 6 },		// 45 bits per transform
+			{ 7, 3, 5 },		// 45 bits per transform
+			{ 7, 4, 4 },		// 45 bits per transform
+			{ 7, 5, 3 },		// 45 bits per transform
+			{ 7, 6, 2 },		// 45 bits per transform
+			{ 7, 7, 1 },		// 45 bits per transform
+			{ 7, 8, 0 },		// 45 bits per transform
+			{ 8, 0, 7 },		// 45 bits per transform
+			{ 8, 1, 6 },		// 45 bits per transform
+			{ 8, 2, 5 },		// 45 bits per transform
+			{ 8, 3, 4 },		// 45 bits per transform
+			{ 8, 4, 3 },		// 45 bits per transform
+			{ 8, 5, 2 },		// 45 bits per transform
+			{ 8, 6, 1 },		// 45 bits per transform
+			{ 8, 7, 0 },		// 45 bits per transform
+			{ 9, 0, 6 },		// 45 bits per transform
+			{ 9, 1, 5 },		// 45 bits per transform
+			{ 9, 2, 4 },		// 45 bits per transform
+			{ 9, 3, 3 },		// 45 bits per transform
+			{ 9, 4, 2 },		// 45 bits per transform
+			{ 9, 5, 1 },		// 45 bits per transform
+			{ 9, 6, 0 },		// 45 bits per transform
+			{ 10, 0, 5 },		// 45 bits per transform
+			{ 10, 1, 4 },		// 45 bits per transform
+			{ 10, 2, 3 },		// 45 bits per transform
+			{ 10, 3, 2 },		// 45 bits per transform
+			{ 10, 4, 1 },		// 45 bits per transform
+			{ 10, 5, 0 },		// 45 bits per transform
+			{ 11, 0, 4 },		// 45 bits per transform
+			{ 11, 1, 3 },		// 45 bits per transform
+			{ 11, 2, 2 },		// 45 bits per transform
+			{ 11, 3, 1 },		// 45 bits per transform
+			{ 11, 4, 0 },		// 45 bits per transform
+			{ 12, 0, 3 },		// 45 bits per transform
+			{ 12, 1, 2 },		// 45 bits per transform
+			{ 12, 2, 1 },		// 45 bits per transform
+			{ 12, 3, 0 },		// 45 bits per transform
+			{ 13, 0, 2 },		// 45 bits per transform
+			{ 13, 1, 1 },		// 45 bits per transform
+			{ 13, 2, 0 },		// 45 bits per transform
+			{ 14, 0, 1 },		// 45 bits per transform
+			{ 14, 1, 0 },		// 45 bits per transform
+			{ 15, 0, 0 },		// 45 bits per transform
+			{ 0, 0, 16 },		// 48 bits per transform
+			{ 0, 1, 15 },		// 48 bits per transform
+			{ 0, 2, 14 },		// 48 bits per transform
+			{ 0, 3, 13 },		// 48 bits per transform
+			{ 0, 4, 12 },		// 48 bits per transform
+			{ 0, 5, 11 },		// 48 bits per transform
+			{ 0, 6, 10 },		// 48 bits per transform
+			{ 0, 7, 9 },		// 48 bits per transform
+			{ 0, 8, 8 },		// 48 bits per transform
+			{ 0, 9, 7 },		// 48 bits per transform
+			{ 0, 10, 6 },		// 48 bits per transform
+			{ 0, 11, 5 },		// 48 bits per transform
+			{ 0, 12, 4 },		// 48 bits per transform
+			{ 0, 13, 3 },		// 48 bits per transform
+			{ 0, 14, 2 },		// 48 bits per transform
+			{ 0, 15, 1 },		// 48 bits per transform
+			{ 0, 16, 0 },		// 48 bits per transform
+			{ 1, 0, 15 },		// 48 bits per transform
+			{ 1, 1, 14 },		// 48 bits per transform
+			{ 1, 2, 13 },		// 48 bits per transform
+			{ 1, 3, 12 },		// 48 bits per transform
+			{ 1, 4, 11 },		// 48 bits per transform
+			{ 1, 5, 10 },		// 48 bits per transform
+			{ 1, 6, 9 },		// 48 bits per transform
+			{ 1, 7, 8 },		// 48 bits per transform
+			{ 1, 8, 7 },		// 48 bits per transform
+			{ 1, 9, 6 },		// 48 bits per transform
+			{ 1, 10, 5 },		// 48 bits per transform
+			{ 1, 11, 4 },		// 48 bits per transform
+			{ 1, 12, 3 },		// 48 bits per transform
+			{ 1, 13, 2 },		// 48 bits per transform
+			{ 1, 14, 1 },		// 48 bits per transform
+			{ 1, 15, 0 },		// 48 bits per transform
+			{ 2, 0, 14 },		// 48 bits per transform
+			{ 2, 1, 13 },		// 48 bits per transform
+			{ 2, 2, 12 },		// 48 bits per transform
+			{ 2, 3, 11 },		// 48 bits per transform
+			{ 2, 4, 10 },		// 48 bits per transform
+			{ 2, 5, 9 },		// 48 bits per transform
+			{ 2, 6, 8 },		// 48 bits per transform
+			{ 2, 7, 7 },		// 48 bits per transform
+			{ 2, 8, 6 },		// 48 bits per transform
+			{ 2, 9, 5 },		// 48 bits per transform
+			{ 2, 10, 4 },		// 48 bits per transform
+			{ 2, 11, 3 },		// 48 bits per transform
+			{ 2, 12, 2 },		// 48 bits per transform
+			{ 2, 13, 1 },		// 48 bits per transform
+			{ 2, 14, 0 },		// 48 bits per transform
+			{ 3, 0, 13 },		// 48 bits per transform
+			{ 3, 1, 12 },		// 48 bits per transform
+			{ 3, 2, 11 },		// 48 bits per transform
+			{ 3, 3, 10 },		// 48 bits per transform
+			{ 3, 4, 9 },		// 48 bits per transform
+			{ 3, 5, 8 },		// 48 bits per transform
+			{ 3, 6, 7 },		// 48 bits per transform
+			{ 3, 7, 6 },		// 48 bits per transform
+			{ 3, 8, 5 },		// 48 bits per transform
+			{ 3, 9, 4 },		// 48 bits per transform
+			{ 3, 10, 3 },		// 48 bits per transform
+			{ 3, 11, 2 },		// 48 bits per transform
+			{ 3, 12, 1 },		// 48 bits per transform
+			{ 3, 13, 0 },		// 48 bits per transform
+			{ 4, 0, 12 },		// 48 bits per transform
+			{ 4, 1, 11 },		// 48 bits per transform
+			{ 4, 2, 10 },		// 48 bits per transform
+			{ 4, 3, 9 },		// 48 bits per transform
+			{ 4, 4, 8 },		// 48 bits per transform
+			{ 4, 5, 7 },		// 48 bits per transform
+			{ 4, 6, 6 },		// 48 bits per transform
+			{ 4, 7, 5 },		// 48 bits per transform
+			{ 4, 8, 4 },		// 48 bits per transform
+			{ 4, 9, 3 },		// 48 bits per transform
+			{ 4, 10, 2 },		// 48 bits per transform
+			{ 4, 11, 1 },		// 48 bits per transform
+			{ 4, 12, 0 },		// 48 bits per transform
+			{ 5, 0, 11 },		// 48 bits per transform
+			{ 5, 1, 10 },		// 48 bits per transform
+			{ 5, 2, 9 },		// 48 bits per transform
+			{ 5, 3, 8 },		// 48 bits per transform
+			{ 5, 4, 7 },		// 48 bits per transform
+			{ 5, 5, 6 },		// 48 bits per transform
+			{ 5, 6, 5 },		// 48 bits per transform
+			{ 5, 7, 4 },		// 48 bits per transform
+			{ 5, 8, 3 },		// 48 bits per transform
+			{ 5, 9, 2 },		// 48 bits per transform
+			{ 5, 10, 1 },		// 48 bits per transform
+			{ 5, 11, 0 },		// 48 bits per transform
+			{ 6, 0, 10 },		// 48 bits per transform
+			{ 6, 1, 9 },		// 48 bits per transform
+			{ 6, 2, 8 },		// 48 bits per transform
+			{ 6, 3, 7 },		// 48 bits per transform
+			{ 6, 4, 6 },		// 48 bits per transform
+			{ 6, 5, 5 },		// 48 bits per transform
+			{ 6, 6, 4 },		// 48 bits per transform
+			{ 6, 7, 3 },		// 48 bits per transform
+			{ 6, 8, 2 },		// 48 bits per transform
+			{ 6, 9, 1 },		// 48 bits per transform
+			{ 6, 10, 0 },		// 48 bits per transform
+			{ 7, 0, 9 },		// 48 bits per transform
+			{ 7, 1, 8 },		// 48 bits per transform
+			{ 7, 2, 7 },		// 48 bits per transform
+			{ 7, 3, 6 },		// 48 bits per transform
+			{ 7, 4, 5 },		// 48 bits per transform
+			{ 7, 5, 4 },		// 48 bits per transform
+			{ 7, 6, 3 },		// 48 bits per transform
+			{ 7, 7, 2 },		// 48 bits per transform
+			{ 7, 8, 1 },		// 48 bits per transform
+			{ 7, 9, 0 },		// 48 bits per transform
+			{ 8, 0, 8 },		// 48 bits per transform
+			{ 8, 1, 7 },		// 48 bits per transform
+			{ 8, 2, 6 },		// 48 bits per transform
+			{ 8, 3, 5 },		// 48 bits per transform
+			{ 8, 4, 4 },		// 48 bits per transform
+			{ 8, 5, 3 },		// 48 bits per transform
+			{ 8, 6, 2 },		// 48 bits per transform
+			{ 8, 7, 1 },		// 48 bits per transform
+			{ 8, 8, 0 },		// 48 bits per transform
+			{ 9, 0, 7 },		// 48 bits per transform
+			{ 9, 1, 6 },		// 48 bits per transform
+			{ 9, 2, 5 },		// 48 bits per transform
+			{ 9, 3, 4 },		// 48 bits per transform
+			{ 9, 4, 3 },		// 48 bits per transform
+			{ 9, 5, 2 },		// 48 bits per transform
+			{ 9, 6, 1 },		// 48 bits per transform
+			{ 9, 7, 0 },		// 48 bits per transform
+			{ 10, 0, 6 },		// 48 bits per transform
+			{ 10, 1, 5 },		// 48 bits per transform
+			{ 10, 2, 4 },		// 48 bits per transform
+			{ 10, 3, 3 },		// 48 bits per transform
+			{ 10, 4, 2 },		// 48 bits per transform
+			{ 10, 5, 1 },		// 48 bits per transform
+			{ 10, 6, 0 },		// 48 bits per transform
+			{ 11, 0, 5 },		// 48 bits per transform
+			{ 11, 1, 4 },		// 48 bits per transform
+			{ 11, 2, 3 },		// 48 bits per transform
+			{ 11, 3, 2 },		// 48 bits per transform
+			{ 11, 4, 1 },		// 48 bits per transform
+			{ 11, 5, 0 },		// 48 bits per transform
+			{ 12, 0, 4 },		// 48 bits per transform
+			{ 12, 1, 3 },		// 48 bits per transform
+			{ 12, 2, 2 },		// 48 bits per transform
+			{ 12, 3, 1 },		// 48 bits per transform
+			{ 12, 4, 0 },		// 48 bits per transform
+			{ 13, 0, 3 },		// 48 bits per transform
+			{ 13, 1, 2 },		// 48 bits per transform
+			{ 13, 2, 1 },		// 48 bits per transform
+			{ 13, 3, 0 },		// 48 bits per transform
+			{ 14, 0, 2 },		// 48 bits per transform
+			{ 14, 1, 1 },		// 48 bits per transform
+			{ 14, 2, 0 },		// 48 bits per transform
+			{ 15, 0, 1 },		// 48 bits per transform
+			{ 15, 1, 0 },		// 48 bits per transform
+			{ 16, 0, 0 },		// 48 bits per transform
+			{ 0, 0, 17 },		// 51 bits per transform
+			{ 0, 1, 16 },		// 51 bits per transform
+			{ 0, 2, 15 },		// 51 bits per transform
+			{ 0, 3, 14 },		// 51 bits per transform
+			{ 0, 4, 13 },		// 51 bits per transform
+			{ 0, 5, 12 },		// 51 bits per transform
+			{ 0, 6, 11 },		// 51 bits per transform
+			{ 0, 7, 10 },		// 51 bits per transform
+			{ 0, 8, 9 },		// 51 bits per transform
+			{ 0, 9, 8 },		// 51 bits per transform
+			{ 0, 10, 7 },		// 51 bits per transform
+			{ 0, 11, 6 },		// 51 bits per transform
+			{ 0, 12, 5 },		// 51 bits per transform
+			{ 0, 13, 4 },		// 51 bits per transform
+			{ 0, 14, 3 },		// 51 bits per transform
+			{ 0, 15, 2 },		// 51 bits per transform
+			{ 0, 16, 1 },		// 51 bits per transform
+			{ 0, 17, 0 },		// 51 bits per transform
+			{ 1, 0, 16 },		// 51 bits per transform
+			{ 1, 1, 15 },		// 51 bits per transform
+			{ 1, 2, 14 },		// 51 bits per transform
+			{ 1, 3, 13 },		// 51 bits per transform
+			{ 1, 4, 12 },		// 51 bits per transform
+			{ 1, 5, 11 },		// 51 bits per transform
+			{ 1, 6, 10 },		// 51 bits per transform
+			{ 1, 7, 9 },		// 51 bits per transform
+			{ 1, 8, 8 },		// 51 bits per transform
+			{ 1, 9, 7 },		// 51 bits per transform
+			{ 1, 10, 6 },		// 51 bits per transform
+			{ 1, 11, 5 },		// 51 bits per transform
+			{ 1, 12, 4 },		// 51 bits per transform
+			{ 1, 13, 3 },		// 51 bits per transform
+			{ 1, 14, 2 },		// 51 bits per transform
+			{ 1, 15, 1 },		// 51 bits per transform
+			{ 1, 16, 0 },		// 51 bits per transform
+			{ 2, 0, 15 },		// 51 bits per transform
+			{ 2, 1, 14 },		// 51 bits per transform
+			{ 2, 2, 13 },		// 51 bits per transform
+			{ 2, 3, 12 },		// 51 bits per transform
+			{ 2, 4, 11 },		// 51 bits per transform
+			{ 2, 5, 10 },		// 51 bits per transform
+			{ 2, 6, 9 },		// 51 bits per transform
+			{ 2, 7, 8 },		// 51 bits per transform
+			{ 2, 8, 7 },		// 51 bits per transform
+			{ 2, 9, 6 },		// 51 bits per transform
+			{ 2, 10, 5 },		// 51 bits per transform
+			{ 2, 11, 4 },		// 51 bits per transform
+			{ 2, 12, 3 },		// 51 bits per transform
+			{ 2, 13, 2 },		// 51 bits per transform
+			{ 2, 14, 1 },		// 51 bits per transform
+			{ 2, 15, 0 },		// 51 bits per transform
+			{ 3, 0, 14 },		// 51 bits per transform
+			{ 3, 1, 13 },		// 51 bits per transform
+			{ 3, 2, 12 },		// 51 bits per transform
+			{ 3, 3, 11 },		// 51 bits per transform
+			{ 3, 4, 10 },		// 51 bits per transform
+			{ 3, 5, 9 },		// 51 bits per transform
+			{ 3, 6, 8 },		// 51 bits per transform
+			{ 3, 7, 7 },		// 51 bits per transform
+			{ 3, 8, 6 },		// 51 bits per transform
+			{ 3, 9, 5 },		// 51 bits per transform
+			{ 3, 10, 4 },		// 51 bits per transform
+			{ 3, 11, 3 },		// 51 bits per transform
+			{ 3, 12, 2 },		// 51 bits per transform
+			{ 3, 13, 1 },		// 51 bits per transform
+			{ 3, 14, 0 },		// 51 bits per transform
+			{ 4, 0, 13 },		// 51 bits per transform
+			{ 4, 1, 12 },		// 51 bits per transform
+			{ 4, 2, 11 },		// 51 bits per transform
+			{ 4, 3, 10 },		// 51 bits per transform
+			{ 4, 4, 9 },		// 51 bits per transform
+			{ 4, 5, 8 },		// 51 bits per transform
+			{ 4, 6, 7 },		// 51 bits per transform
+			{ 4, 7, 6 },		// 51 bits per transform
+			{ 4, 8, 5 },		// 51 bits per transform
+			{ 4, 9, 4 },		// 51 bits per transform
+			{ 4, 10, 3 },		// 51 bits per transform
+			{ 4, 11, 2 },		// 51 bits per transform
+			{ 4, 12, 1 },		// 51 bits per transform
+			{ 4, 13, 0 },		// 51 bits per transform
+			{ 5, 0, 12 },		// 51 bits per transform
+			{ 5, 1, 11 },		// 51 bits per transform
+			{ 5, 2, 10 },		// 51 bits per transform
+			{ 5, 3, 9 },		// 51 bits per transform
+			{ 5, 4, 8 },		// 51 bits per transform
+			{ 5, 5, 7 },		// 51 bits per transform
+			{ 5, 6, 6 },		// 51 bits per transform
+			{ 5, 7, 5 },		// 51 bits per transform
+			{ 5, 8, 4 },		// 51 bits per transform
+			{ 5, 9, 3 },		// 51 bits per transform
+			{ 5, 10, 2 },		// 51 bits per transform
+			{ 5, 11, 1 },		// 51 bits per transform
+			{ 5, 12, 0 },		// 51 bits per transform
+			{ 6, 0, 11 },		// 51 bits per transform
+			{ 6, 1, 10 },		// 51 bits per transform
+			{ 6, 2, 9 },		// 51 bits per transform
+			{ 6, 3, 8 },		// 51 bits per transform
+			{ 6, 4, 7 },		// 51 bits per transform
+			{ 6, 5, 6 },		// 51 bits per transform
+			{ 6, 6, 5 },		// 51 bits per transform
+			{ 6, 7, 4 },		// 51 bits per transform
+			{ 6, 8, 3 },		// 51 bits per transform
+			{ 6, 9, 2 },		// 51 bits per transform
+			{ 6, 10, 1 },		// 51 bits per transform
+			{ 6, 11, 0 },		// 51 bits per transform
+			{ 7, 0, 10 },		// 51 bits per transform
+			{ 7, 1, 9 },		// 51 bits per transform
+			{ 7, 2, 8 },		// 51 bits per transform
+			{ 7, 3, 7 },		// 51 bits per transform
+			{ 7, 4, 6 },		// 51 bits per transform
+			{ 7, 5, 5 },		// 51 bits per transform
+			{ 7, 6, 4 },		// 51 bits per transform
+			{ 7, 7, 3 },		// 51 bits per transform
+			{ 7, 8, 2 },		// 51 bits per transform
+			{ 7, 9, 1 },		// 51 bits per transform
+			{ 7, 10, 0 },		// 51 bits per transform
+			{ 8, 0, 9 },		// 51 bits per transform
+			{ 8, 1, 8 },		// 51 bits per transform
+			{ 8, 2, 7 },		// 51 bits per transform
+			{ 8, 3, 6 },		// 51 bits per transform
+			{ 8, 4, 5 },		// 51 bits per transform
+			{ 8, 5, 4 },		// 51 bits per transform
+			{ 8, 6, 3 },		// 51 bits per transform
+			{ 8, 7, 2 },		// 51 bits per transform
+			{ 8, 8, 1 },		// 51 bits per transform
+			{ 8, 9, 0 },		// 51 bits per transform
+			{ 9, 0, 8 },		// 51 bits per transform
+			{ 9, 1, 7 },		// 51 bits per transform
+			{ 9, 2, 6 },		// 51 bits per transform
+			{ 9, 3, 5 },		// 51 bits per transform
+			{ 9, 4, 4 },		// 51 bits per transform
+			{ 9, 5, 3 },		// 51 bits per transform
+			{ 9, 6, 2 },		// 51 bits per transform
+			{ 9, 7, 1 },		// 51 bits per transform
+			{ 9, 8, 0 },		// 51 bits per transform
+			{ 10, 0, 7 },		// 51 bits per transform
+			{ 10, 1, 6 },		// 51 bits per transform
+			{ 10, 2, 5 },		// 51 bits per transform
+			{ 10, 3, 4 },		// 51 bits per transform
+			{ 10, 4, 3 },		// 51 bits per transform
+			{ 10, 5, 2 },		// 51 bits per transform
+			{ 10, 6, 1 },		// 51 bits per transform
+			{ 10, 7, 0 },		// 51 bits per transform
+			{ 11, 0, 6 },		// 51 bits per transform
+			{ 11, 1, 5 },		// 51 bits per transform
+			{ 11, 2, 4 },		// 51 bits per transform
+			{ 11, 3, 3 },		// 51 bits per transform
+			{ 11, 4, 2 },		// 51 bits per transform
+			{ 11, 5, 1 },		// 51 bits per transform
+			{ 11, 6, 0 },		// 51 bits per transform
+			{ 12, 0, 5 },		// 51 bits per transform
+			{ 12, 1, 4 },		// 51 bits per transform
+			{ 12, 2, 3 },		// 51 bits per transform
+			{ 12, 3, 2 },		// 51 bits per transform
+			{ 12, 4, 1 },		// 51 bits per transform
+			{ 12, 5, 0 },		// 51 bits per transform
+			{ 13, 0, 4 },		// 51 bits per transform
+			{ 13, 1, 3 },		// 51 bits per transform
+			{ 13, 2, 2 },		// 51 bits per transform
+			{ 13, 3, 1 },		// 51 bits per transform
+			{ 13, 4, 0 },		// 51 bits per transform
+			{ 14, 0, 3 },		// 51 bits per transform
+			{ 14, 1, 2 },		// 51 bits per transform
+			{ 14, 2, 1 },		// 51 bits per transform
+			{ 14, 3, 0 },		// 51 bits per transform
+			{ 15, 0, 2 },		// 51 bits per transform
+			{ 15, 1, 1 },		// 51 bits per transform
+			{ 15, 2, 0 },		// 51 bits per transform
+			{ 16, 0, 1 },		// 51 bits per transform
+			{ 16, 1, 0 },		// 51 bits per transform
+			{ 17, 0, 0 },		// 51 bits per transform
+			{ 0, 0, 18 },		// 54 bits per transform
+			{ 0, 1, 17 },		// 54 bits per transform
+			{ 0, 2, 16 },		// 54 bits per transform
+			{ 0, 3, 15 },		// 54 bits per transform
+			{ 0, 4, 14 },		// 54 bits per transform
+			{ 0, 5, 13 },		// 54 bits per transform
+			{ 0, 6, 12 },		// 54 bits per transform
+			{ 0, 7, 11 },		// 54 bits per transform
+			{ 0, 8, 10 },		// 54 bits per transform
+			{ 0, 9, 9 },		// 54 bits per transform
+			{ 0, 10, 8 },		// 54 bits per transform
+			{ 0, 11, 7 },		// 54 bits per transform
+			{ 0, 12, 6 },		// 54 bits per transform
+			{ 0, 13, 5 },		// 54 bits per transform
+			{ 0, 14, 4 },		// 54 bits per transform
+			{ 0, 15, 3 },		// 54 bits per transform
+			{ 0, 16, 2 },		// 54 bits per transform
+			{ 0, 17, 1 },		// 54 bits per transform
+			{ 0, 18, 0 },		// 54 bits per transform
+			{ 1, 0, 17 },		// 54 bits per transform
+			{ 1, 1, 16 },		// 54 bits per transform
+			{ 1, 2, 15 },		// 54 bits per transform
+			{ 1, 3, 14 },		// 54 bits per transform
+			{ 1, 4, 13 },		// 54 bits per transform
+			{ 1, 5, 12 },		// 54 bits per transform
+			{ 1, 6, 11 },		// 54 bits per transform
+			{ 1, 7, 10 },		// 54 bits per transform
+			{ 1, 8, 9 },		// 54 bits per transform
+			{ 1, 9, 8 },		// 54 bits per transform
+			{ 1, 10, 7 },		// 54 bits per transform
+			{ 1, 11, 6 },		// 54 bits per transform
+			{ 1, 12, 5 },		// 54 bits per transform
+			{ 1, 13, 4 },		// 54 bits per transform
+			{ 1, 14, 3 },		// 54 bits per transform
+			{ 1, 15, 2 },		// 54 bits per transform
+			{ 1, 16, 1 },		// 54 bits per transform
+			{ 1, 17, 0 },		// 54 bits per transform
+			{ 2, 0, 16 },		// 54 bits per transform
+			{ 2, 1, 15 },		// 54 bits per transform
+			{ 2, 2, 14 },		// 54 bits per transform
+			{ 2, 3, 13 },		// 54 bits per transform
+			{ 2, 4, 12 },		// 54 bits per transform
+			{ 2, 5, 11 },		// 54 bits per transform
+			{ 2, 6, 10 },		// 54 bits per transform
+			{ 2, 7, 9 },		// 54 bits per transform
+			{ 2, 8, 8 },		// 54 bits per transform
+			{ 2, 9, 7 },		// 54 bits per transform
+			{ 2, 10, 6 },		// 54 bits per transform
+			{ 2, 11, 5 },		// 54 bits per transform
+			{ 2, 12, 4 },		// 54 bits per transform
+			{ 2, 13, 3 },		// 54 bits per transform
+			{ 2, 14, 2 },		// 54 bits per transform
+			{ 2, 15, 1 },		// 54 bits per transform
+			{ 2, 16, 0 },		// 54 bits per transform
+			{ 3, 0, 15 },		// 54 bits per transform
+			{ 3, 1, 14 },		// 54 bits per transform
+			{ 3, 2, 13 },		// 54 bits per transform
+			{ 3, 3, 12 },		// 54 bits per transform
+			{ 3, 4, 11 },		// 54 bits per transform
+			{ 3, 5, 10 },		// 54 bits per transform
+			{ 3, 6, 9 },		// 54 bits per transform
+			{ 3, 7, 8 },		// 54 bits per transform
+			{ 3, 8, 7 },		// 54 bits per transform
+			{ 3, 9, 6 },		// 54 bits per transform
+			{ 3, 10, 5 },		// 54 bits per transform
+			{ 3, 11, 4 },		// 54 bits per transform
+			{ 3, 12, 3 },		// 54 bits per transform
+			{ 3, 13, 2 },		// 54 bits per transform
+			{ 3, 14, 1 },		// 54 bits per transform
+			{ 3, 15, 0 },		// 54 bits per transform
+			{ 4, 0, 14 },		// 54 bits per transform
+			{ 4, 1, 13 },		// 54 bits per transform
+			{ 4, 2, 12 },		// 54 bits per transform
+			{ 4, 3, 11 },		// 54 bits per transform
+			{ 4, 4, 10 },		// 54 bits per transform
+			{ 4, 5, 9 },		// 54 bits per transform
+			{ 4, 6, 8 },		// 54 bits per transform
+			{ 4, 7, 7 },		// 54 bits per transform
+			{ 4, 8, 6 },		// 54 bits per transform
+			{ 4, 9, 5 },		// 54 bits per transform
+			{ 4, 10, 4 },		// 54 bits per transform
+			{ 4, 11, 3 },		// 54 bits per transform
+			{ 4, 12, 2 },		// 54 bits per transform
+			{ 4, 13, 1 },		// 54 bits per transform
+			{ 4, 14, 0 },		// 54 bits per transform
+			{ 5, 0, 13 },		// 54 bits per transform
+			{ 5, 1, 12 },		// 54 bits per transform
+			{ 5, 2, 11 },		// 54 bits per transform
+			{ 5, 3, 10 },		// 54 bits per transform
+			{ 5, 4, 9 },		// 54 bits per transform
+			{ 5, 5, 8 },		// 54 bits per transform
+			{ 5, 6, 7 },		// 54 bits per transform
+			{ 5, 7, 6 },		// 54 bits per transform
+			{ 5, 8, 5 },		// 54 bits per transform
+			{ 5, 9, 4 },		// 54 bits per transform
+			{ 5, 10, 3 },		// 54 bits per transform
+			{ 5, 11, 2 },		// 54 bits per transform
+			{ 5, 12, 1 },		// 54 bits per transform
+			{ 5, 13, 0 },		// 54 bits per transform
+			{ 6, 0, 12 },		// 54 bits per transform
+			{ 6, 1, 11 },		// 54 bits per transform
+			{ 6, 2, 10 },		// 54 bits per transform
+			{ 6, 3, 9 },		// 54 bits per transform
+			{ 6, 4, 8 },		// 54 bits per transform
+			{ 6, 5, 7 },		// 54 bits per transform
+			{ 6, 6, 6 },		// 54 bits per transform
+			{ 6, 7, 5 },		// 54 bits per transform
+			{ 6, 8, 4 },		// 54 bits per transform
+			{ 6, 9, 3 },		// 54 bits per transform
+			{ 6, 10, 2 },		// 54 bits per transform
+			{ 6, 11, 1 },		// 54 bits per transform
+			{ 6, 12, 0 },		// 54 bits per transform
+			{ 7, 0, 11 },		// 54 bits per transform
+			{ 7, 1, 10 },		// 54 bits per transform
+			{ 7, 2, 9 },		// 54 bits per transform
+			{ 7, 3, 8 },		// 54 bits per transform
+			{ 7, 4, 7 },		// 54 bits per transform
+			{ 7, 5, 6 },		// 54 bits per transform
+			{ 7, 6, 5 },		// 54 bits per transform
+			{ 7, 7, 4 },		// 54 bits per transform
+			{ 7, 8, 3 },		// 54 bits per transform
+			{ 7, 9, 2 },		// 54 bits per transform
+			{ 7, 10, 1 },		// 54 bits per transform
+			{ 7, 11, 0 },		// 54 bits per transform
+			{ 8, 0, 10 },		// 54 bits per transform
+			{ 8, 1, 9 },		// 54 bits per transform
+			{ 8, 2, 8 },		// 54 bits per transform
+			{ 8, 3, 7 },		// 54 bits per transform
+			{ 8, 4, 6 },		// 54 bits per transform
+			{ 8, 5, 5 },		// 54 bits per transform
+			{ 8, 6, 4 },		// 54 bits per transform
+			{ 8, 7, 3 },		// 54 bits per transform
+			{ 8, 8, 2 },		// 54 bits per transform
+			{ 8, 9, 1 },		// 54 bits per transform
+			{ 8, 10, 0 },		// 54 bits per transform
+			{ 9, 0, 9 },		// 54 bits per transform
+			{ 9, 1, 8 },		// 54 bits per transform
+			{ 9, 2, 7 },		// 54 bits per transform
+			{ 9, 3, 6 },		// 54 bits per transform
+			{ 9, 4, 5 },		// 54 bits per transform
+			{ 9, 5, 4 },		// 54 bits per transform
+			{ 9, 6, 3 },		// 54 bits per transform
+			{ 9, 7, 2 },		// 54 bits per transform
+			{ 9, 8, 1 },		// 54 bits per transform
+			{ 9, 9, 0 },		// 54 bits per transform
+			{ 10, 0, 8 },		// 54 bits per transform
+			{ 10, 1, 7 },		// 54 bits per transform
+			{ 10, 2, 6 },		// 54 bits per transform
+			{ 10, 3, 5 },		// 54 bits per transform
+			{ 10, 4, 4 },		// 54 bits per transform
+			{ 10, 5, 3 },		// 54 bits per transform
+			{ 10, 6, 2 },		// 54 bits per transform
+			{ 10, 7, 1 },		// 54 bits per transform
+			{ 10, 8, 0 },		// 54 bits per transform
+			{ 11, 0, 7 },		// 54 bits per transform
+			{ 11, 1, 6 },		// 54 bits per transform
+			{ 11, 2, 5 },		// 54 bits per transform
+			{ 11, 3, 4 },		// 54 bits per transform
+			{ 11, 4, 3 },		// 54 bits per transform
+			{ 11, 5, 2 },		// 54 bits per transform
+			{ 11, 6, 1 },		// 54 bits per transform
+			{ 11, 7, 0 },		// 54 bits per transform
+			{ 12, 0, 6 },		// 54 bits per transform
+			{ 12, 1, 5 },		// 54 bits per transform
+			{ 12, 2, 4 },		// 54 bits per transform
+			{ 12, 3, 3 },		// 54 bits per transform
+			{ 12, 4, 2 },		// 54 bits per transform
+			{ 12, 5, 1 },		// 54 bits per transform
+			{ 12, 6, 0 },		// 54 bits per transform
+			{ 13, 0, 5 },		// 54 bits per transform
+			{ 13, 1, 4 },		// 54 bits per transform
+			{ 13, 2, 3 },		// 54 bits per transform
+			{ 13, 3, 2 },		// 54 bits per transform
+			{ 13, 4, 1 },		// 54 bits per transform
+			{ 13, 5, 0 },		// 54 bits per transform
+			{ 14, 0, 4 },		// 54 bits per transform
+			{ 14, 1, 3 },		// 54 bits per transform
+			{ 14, 2, 2 },		// 54 bits per transform
+			{ 14, 3, 1 },		// 54 bits per transform
+			{ 14, 4, 0 },		// 54 bits per transform
+			{ 15, 0, 3 },		// 54 bits per transform
+			{ 15, 1, 2 },		// 54 bits per transform
+			{ 15, 2, 1 },		// 54 bits per transform
+			{ 15, 3, 0 },		// 54 bits per transform
+			{ 16, 0, 2 },		// 54 bits per transform
+			{ 16, 1, 1 },		// 54 bits per transform
+			{ 16, 2, 0 },		// 54 bits per transform
+			{ 17, 0, 1 },		// 54 bits per transform
+			{ 17, 1, 0 },		// 54 bits per transform
+			{ 18, 0, 0 },		// 54 bits per transform
+			{ 0, 0, 19 },		// 57 bits per transform
+			{ 0, 1, 18 },		// 57 bits per transform
+			{ 0, 2, 17 },		// 57 bits per transform
+			{ 0, 3, 16 },		// 57 bits per transform
+			{ 0, 4, 15 },		// 57 bits per transform
+			{ 0, 5, 14 },		// 57 bits per transform
+			{ 0, 6, 13 },		// 57 bits per transform
+			{ 0, 7, 12 },		// 57 bits per transform
+			{ 0, 8, 11 },		// 57 bits per transform
+			{ 0, 9, 10 },		// 57 bits per transform
+			{ 0, 10, 9 },		// 57 bits per transform
+			{ 0, 11, 8 },		// 57 bits per transform
+			{ 0, 12, 7 },		// 57 bits per transform
+			{ 0, 13, 6 },		// 57 bits per transform
+			{ 0, 14, 5 },		// 57 bits per transform
+			{ 0, 15, 4 },		// 57 bits per transform
+			{ 0, 16, 3 },		// 57 bits per transform
+			{ 0, 17, 2 },		// 57 bits per transform
+			{ 0, 18, 1 },		// 57 bits per transform
+			{ 0, 19, 0 },		// 57 bits per transform
+			{ 1, 0, 18 },		// 57 bits per transform
+			{ 1, 1, 17 },		// 57 bits per transform
+			{ 1, 2, 16 },		// 57 bits per transform
+			{ 1, 3, 15 },		// 57 bits per transform
+			{ 1, 4, 14 },		// 57 bits per transform
+			{ 1, 5, 13 },		// 57 bits per transform
+			{ 1, 6, 12 },		// 57 bits per transform
+			{ 1, 7, 11 },		// 57 bits per transform
+			{ 1, 8, 10 },		// 57 bits per transform
+			{ 1, 9, 9 },		// 57 bits per transform
+			{ 1, 10, 8 },		// 57 bits per transform
+			{ 1, 11, 7 },		// 57 bits per transform
+			{ 1, 12, 6 },		// 57 bits per transform
+			{ 1, 13, 5 },		// 57 bits per transform
+			{ 1, 14, 4 },		// 57 bits per transform
+			{ 1, 15, 3 },		// 57 bits per transform
+			{ 1, 16, 2 },		// 57 bits per transform
+			{ 1, 17, 1 },		// 57 bits per transform
+			{ 1, 18, 0 },		// 57 bits per transform
+			{ 2, 0, 17 },		// 57 bits per transform
+			{ 2, 1, 16 },		// 57 bits per transform
+			{ 2, 2, 15 },		// 57 bits per transform
+			{ 2, 3, 14 },		// 57 bits per transform
+			{ 2, 4, 13 },		// 57 bits per transform
+			{ 2, 5, 12 },		// 57 bits per transform
+			{ 2, 6, 11 },		// 57 bits per transform
+			{ 2, 7, 10 },		// 57 bits per transform
+			{ 2, 8, 9 },		// 57 bits per transform
+			{ 2, 9, 8 },		// 57 bits per transform
+			{ 2, 10, 7 },		// 57 bits per transform
+			{ 2, 11, 6 },		// 57 bits per transform
+			{ 2, 12, 5 },		// 57 bits per transform
+			{ 2, 13, 4 },		// 57 bits per transform
+			{ 2, 14, 3 },		// 57 bits per transform
+			{ 2, 15, 2 },		// 57 bits per transform
+			{ 2, 16, 1 },		// 57 bits per transform
+			{ 2, 17, 0 },		// 57 bits per transform
+			{ 3, 0, 16 },		// 57 bits per transform
+			{ 3, 1, 15 },		// 57 bits per transform
+			{ 3, 2, 14 },		// 57 bits per transform
+			{ 3, 3, 13 },		// 57 bits per transform
+			{ 3, 4, 12 },		// 57 bits per transform
+			{ 3, 5, 11 },		// 57 bits per transform
+			{ 3, 6, 10 },		// 57 bits per transform
+			{ 3, 7, 9 },		// 57 bits per transform
+			{ 3, 8, 8 },		// 57 bits per transform
+			{ 3, 9, 7 },		// 57 bits per transform
+			{ 3, 10, 6 },		// 57 bits per transform
+			{ 3, 11, 5 },		// 57 bits per transform
+			{ 3, 12, 4 },		// 57 bits per transform
+			{ 3, 13, 3 },		// 57 bits per transform
+			{ 3, 14, 2 },		// 57 bits per transform
+			{ 3, 15, 1 },		// 57 bits per transform
+			{ 3, 16, 0 },		// 57 bits per transform
+			{ 4, 0, 15 },		// 57 bits per transform
+			{ 4, 1, 14 },		// 57 bits per transform
+			{ 4, 2, 13 },		// 57 bits per transform
+			{ 4, 3, 12 },		// 57 bits per transform
+			{ 4, 4, 11 },		// 57 bits per transform
+			{ 4, 5, 10 },		// 57 bits per transform
+			{ 4, 6, 9 },		// 57 bits per transform
+			{ 4, 7, 8 },		// 57 bits per transform
+			{ 4, 8, 7 },		// 57 bits per transform
+			{ 4, 9, 6 },		// 57 bits per transform
+			{ 4, 10, 5 },		// 57 bits per transform
+			{ 4, 11, 4 },		// 57 bits per transform
+			{ 4, 12, 3 },		// 57 bits per transform
+			{ 4, 13, 2 },		// 57 bits per transform
+			{ 4, 14, 1 },		// 57 bits per transform
+			{ 4, 15, 0 },		// 57 bits per transform
+			{ 5, 0, 14 },		// 57 bits per transform
+			{ 5, 1, 13 },		// 57 bits per transform
+			{ 5, 2, 12 },		// 57 bits per transform
+			{ 5, 3, 11 },		// 57 bits per transform
+			{ 5, 4, 10 },		// 57 bits per transform
+			{ 5, 5, 9 },		// 57 bits per transform
+			{ 5, 6, 8 },		// 57 bits per transform
+			{ 5, 7, 7 },		// 57 bits per transform
+			{ 5, 8, 6 },		// 57 bits per transform
+			{ 5, 9, 5 },		// 57 bits per transform
+			{ 5, 10, 4 },		// 57 bits per transform
+			{ 5, 11, 3 },		// 57 bits per transform
+			{ 5, 12, 2 },		// 57 bits per transform
+			{ 5, 13, 1 },		// 57 bits per transform
+			{ 5, 14, 0 },		// 57 bits per transform
+			{ 6, 0, 13 },		// 57 bits per transform
+			{ 6, 1, 12 },		// 57 bits per transform
+			{ 6, 2, 11 },		// 57 bits per transform
+			{ 6, 3, 10 },		// 57 bits per transform
+			{ 6, 4, 9 },		// 57 bits per transform
+			{ 6, 5, 8 },		// 57 bits per transform
+			{ 6, 6, 7 },		// 57 bits per transform
+			{ 6, 7, 6 },		// 57 bits per transform
+			{ 6, 8, 5 },		// 57 bits per transform
+			{ 6, 9, 4 },		// 57 bits per transform
+			{ 6, 10, 3 },		// 57 bits per transform
+			{ 6, 11, 2 },		// 57 bits per transform
+			{ 6, 12, 1 },		// 57 bits per transform
+			{ 6, 13, 0 },		// 57 bits per transform
+			{ 7, 0, 12 },		// 57 bits per transform
+			{ 7, 1, 11 },		// 57 bits per transform
+			{ 7, 2, 10 },		// 57 bits per transform
+			{ 7, 3, 9 },		// 57 bits per transform
+			{ 7, 4, 8 },		// 57 bits per transform
+			{ 7, 5, 7 },		// 57 bits per transform
+			{ 7, 6, 6 },		// 57 bits per transform
+			{ 7, 7, 5 },		// 57 bits per transform
+			{ 7, 8, 4 },		// 57 bits per transform
+			{ 7, 9, 3 },		// 57 bits per transform
+			{ 7, 10, 2 },		// 57 bits per transform
+			{ 7, 11, 1 },		// 57 bits per transform
+			{ 7, 12, 0 },		// 57 bits per transform
+			{ 8, 0, 11 },		// 57 bits per transform
+			{ 8, 1, 10 },		// 57 bits per transform
+			{ 8, 2, 9 },		// 57 bits per transform
+			{ 8, 3, 8 },		// 57 bits per transform
+			{ 8, 4, 7 },		// 57 bits per transform
+			{ 8, 5, 6 },		// 57 bits per transform
+			{ 8, 6, 5 },		// 57 bits per transform
+			{ 8, 7, 4 },		// 57 bits per transform
+			{ 8, 8, 3 },		// 57 bits per transform
+			{ 8, 9, 2 },		// 57 bits per transform
+			{ 8, 10, 1 },		// 57 bits per transform
+			{ 8, 11, 0 },		// 57 bits per transform
+			{ 9, 0, 10 },		// 57 bits per transform
+			{ 9, 1, 9 },		// 57 bits per transform
+			{ 9, 2, 8 },		// 57 bits per transform
+			{ 9, 3, 7 },		// 57 bits per transform
+			{ 9, 4, 6 },		// 57 bits per transform
+			{ 9, 5, 5 },		// 57 bits per transform
+			{ 9, 6, 4 },		// 57 bits per transform
+			{ 9, 7, 3 },		// 57 bits per transform
+			{ 9, 8, 2 },		// 57 bits per transform
+			{ 9, 9, 1 },		// 57 bits per transform
+			{ 9, 10, 0 },		// 57 bits per transform
+			{ 10, 0, 9 },		// 57 bits per transform
+			{ 10, 1, 8 },		// 57 bits per transform
+			{ 10, 2, 7 },		// 57 bits per transform
+			{ 10, 3, 6 },		// 57 bits per transform
+			{ 10, 4, 5 },		// 57 bits per transform
+			{ 10, 5, 4 },		// 57 bits per transform
+			{ 10, 6, 3 },		// 57 bits per transform
+			{ 10, 7, 2 },		// 57 bits per transform
+			{ 10, 8, 1 },		// 57 bits per transform
+			{ 10, 9, 0 },		// 57 bits per transform
+			{ 11, 0, 8 },		// 57 bits per transform
+			{ 11, 1, 7 },		// 57 bits per transform
+			{ 11, 2, 6 },		// 57 bits per transform
+			{ 11, 3, 5 },		// 57 bits per transform
+			{ 11, 4, 4 },		// 57 bits per transform
+			{ 11, 5, 3 },		// 57 bits per transform
+			{ 11, 6, 2 },		// 57 bits per transform
+			{ 11, 7, 1 },		// 57 bits per transform
+			{ 11, 8, 0 },		// 57 bits per transform
+			{ 12, 0, 7 },		// 57 bits per transform
+			{ 12, 1, 6 },		// 57 bits per transform
+			{ 12, 2, 5 },		// 57 bits per transform
+			{ 12, 3, 4 },		// 57 bits per transform
+			{ 12, 4, 3 },		// 57 bits per transform
+			{ 12, 5, 2 },		// 57 bits per transform
+			{ 12, 6, 1 },		// 57 bits per transform
+			{ 12, 7, 0 },		// 57 bits per transform
+			{ 13, 0, 6 },		// 57 bits per transform
+			{ 13, 1, 5 },		// 57 bits per transform
+			{ 13, 2, 4 },		// 57 bits per transform
+			{ 13, 3, 3 },		// 57 bits per transform
+			{ 13, 4, 2 },		// 57 bits per transform
+			{ 13, 5, 1 },		// 57 bits per transform
+			{ 13, 6, 0 },		// 57 bits per transform
+			{ 14, 0, 5 },		// 57 bits per transform
+			{ 14, 1, 4 },		// 57 bits per transform
+			{ 14, 2, 3 },		// 57 bits per transform
+			{ 14, 3, 2 },		// 57 bits per transform
+			{ 14, 4, 1 },		// 57 bits per transform
+			{ 14, 5, 0 },		// 57 bits per transform
+			{ 15, 0, 4 },		// 57 bits per transform
+			{ 15, 1, 3 },		// 57 bits per transform
+			{ 15, 2, 2 },		// 57 bits per transform
+			{ 15, 3, 1 },		// 57 bits per transform
+			{ 15, 4, 0 },		// 57 bits per transform
+			{ 16, 0, 3 },		// 57 bits per transform
+			{ 16, 1, 2 },		// 57 bits per transform
+			{ 16, 2, 1 },		// 57 bits per transform
+			{ 16, 3, 0 },		// 57 bits per transform
+			{ 17, 0, 2 },		// 57 bits per transform
+			{ 17, 1, 1 },		// 57 bits per transform
+			{ 17, 2, 0 },		// 57 bits per transform
+			{ 18, 0, 1 },		// 57 bits per transform
+			{ 18, 1, 0 },		// 57 bits per transform
+			{ 19, 0, 0 },		// 57 bits per transform
+			{ 0, 0, 20 },		// 60 bits per transform
+			{ 0, 1, 19 },		// 60 bits per transform
+			{ 0, 2, 18 },		// 60 bits per transform
+			{ 0, 3, 17 },		// 60 bits per transform
+			{ 0, 4, 16 },		// 60 bits per transform
+			{ 0, 5, 15 },		// 60 bits per transform
+			{ 0, 6, 14 },		// 60 bits per transform
+			{ 0, 7, 13 },		// 60 bits per transform
+			{ 0, 8, 12 },		// 60 bits per transform
+			{ 0, 9, 11 },		// 60 bits per transform
+			{ 0, 10, 10 },		// 60 bits per transform
+			{ 0, 11, 9 },		// 60 bits per transform
+			{ 0, 12, 8 },		// 60 bits per transform
+			{ 0, 13, 7 },		// 60 bits per transform
+			{ 0, 14, 6 },		// 60 bits per transform
+			{ 0, 15, 5 },		// 60 bits per transform
+			{ 0, 16, 4 },		// 60 bits per transform
+			{ 0, 17, 3 },		// 60 bits per transform
+			{ 0, 18, 2 },		// 60 bits per transform
+			{ 0, 19, 1 },		// 60 bits per transform
+			{ 0, 20, 0 },		// 60 bits per transform
+			{ 1, 0, 19 },		// 60 bits per transform
+			{ 1, 1, 18 },		// 60 bits per transform
+			{ 1, 2, 17 },		// 60 bits per transform
+			{ 1, 3, 16 },		// 60 bits per transform
+			{ 1, 4, 15 },		// 60 bits per transform
+			{ 1, 5, 14 },		// 60 bits per transform
+			{ 1, 6, 13 },		// 60 bits per transform
+			{ 1, 7, 12 },		// 60 bits per transform
+			{ 1, 8, 11 },		// 60 bits per transform
+			{ 1, 9, 10 },		// 60 bits per transform
+			{ 1, 10, 9 },		// 60 bits per transform
+			{ 1, 11, 8 },		// 60 bits per transform
+			{ 1, 12, 7 },		// 60 bits per transform
+			{ 1, 13, 6 },		// 60 bits per transform
+			{ 1, 14, 5 },		// 60 bits per transform
+			{ 1, 15, 4 },		// 60 bits per transform
+			{ 1, 16, 3 },		// 60 bits per transform
+			{ 1, 17, 2 },		// 60 bits per transform
+			{ 1, 18, 1 },		// 60 bits per transform
+			{ 1, 19, 0 },		// 60 bits per transform
+			{ 2, 0, 18 },		// 60 bits per transform
+			{ 2, 1, 17 },		// 60 bits per transform
+			{ 2, 2, 16 },		// 60 bits per transform
+			{ 2, 3, 15 },		// 60 bits per transform
+			{ 2, 4, 14 },		// 60 bits per transform
+			{ 2, 5, 13 },		// 60 bits per transform
+			{ 2, 6, 12 },		// 60 bits per transform
+			{ 2, 7, 11 },		// 60 bits per transform
+			{ 2, 8, 10 },		// 60 bits per transform
+			{ 2, 9, 9 },		// 60 bits per transform
+			{ 2, 10, 8 },		// 60 bits per transform
+			{ 2, 11, 7 },		// 60 bits per transform
+			{ 2, 12, 6 },		// 60 bits per transform
+			{ 2, 13, 5 },		// 60 bits per transform
+			{ 2, 14, 4 },		// 60 bits per transform
+			{ 2, 15, 3 },		// 60 bits per transform
+			{ 2, 16, 2 },		// 60 bits per transform
+			{ 2, 17, 1 },		// 60 bits per transform
+			{ 2, 18, 0 },		// 60 bits per transform
+			{ 3, 0, 17 },		// 60 bits per transform
+			{ 3, 1, 16 },		// 60 bits per transform
+			{ 3, 2, 15 },		// 60 bits per transform
+			{ 3, 3, 14 },		// 60 bits per transform
+			{ 3, 4, 13 },		// 60 bits per transform
+			{ 3, 5, 12 },		// 60 bits per transform
+			{ 3, 6, 11 },		// 60 bits per transform
+			{ 3, 7, 10 },		// 60 bits per transform
+			{ 3, 8, 9 },		// 60 bits per transform
+			{ 3, 9, 8 },		// 60 bits per transform
+			{ 3, 10, 7 },		// 60 bits per transform
+			{ 3, 11, 6 },		// 60 bits per transform
+			{ 3, 12, 5 },		// 60 bits per transform
+			{ 3, 13, 4 },		// 60 bits per transform
+			{ 3, 14, 3 },		// 60 bits per transform
+			{ 3, 15, 2 },		// 60 bits per transform
+			{ 3, 16, 1 },		// 60 bits per transform
+			{ 3, 17, 0 },		// 60 bits per transform
+			{ 4, 0, 16 },		// 60 bits per transform
+			{ 4, 1, 15 },		// 60 bits per transform
+			{ 4, 2, 14 },		// 60 bits per transform
+			{ 4, 3, 13 },		// 60 bits per transform
+			{ 4, 4, 12 },		// 60 bits per transform
+			{ 4, 5, 11 },		// 60 bits per transform
+			{ 4, 6, 10 },		// 60 bits per transform
+			{ 4, 7, 9 },		// 60 bits per transform
+			{ 4, 8, 8 },		// 60 bits per transform
+			{ 4, 9, 7 },		// 60 bits per transform
+			{ 4, 10, 6 },		// 60 bits per transform
+			{ 4, 11, 5 },		// 60 bits per transform
+			{ 4, 12, 4 },		// 60 bits per transform
+			{ 4, 13, 3 },		// 60 bits per transform
+			{ 4, 14, 2 },		// 60 bits per transform
+			{ 4, 15, 1 },		// 60 bits per transform
+			{ 4, 16, 0 },		// 60 bits per transform
+			{ 5, 0, 15 },		// 60 bits per transform
+			{ 5, 1, 14 },		// 60 bits per transform
+			{ 5, 2, 13 },		// 60 bits per transform
+			{ 5, 3, 12 },		// 60 bits per transform
+			{ 5, 4, 11 },		// 60 bits per transform
+			{ 5, 5, 10 },		// 60 bits per transform
+			{ 5, 6, 9 },		// 60 bits per transform
+			{ 5, 7, 8 },		// 60 bits per transform
+			{ 5, 8, 7 },		// 60 bits per transform
+			{ 5, 9, 6 },		// 60 bits per transform
+			{ 5, 10, 5 },		// 60 bits per transform
+			{ 5, 11, 4 },		// 60 bits per transform
+			{ 5, 12, 3 },		// 60 bits per transform
+			{ 5, 13, 2 },		// 60 bits per transform
+			{ 5, 14, 1 },		// 60 bits per transform
+			{ 5, 15, 0 },		// 60 bits per transform
+			{ 6, 0, 14 },		// 60 bits per transform
+			{ 6, 1, 13 },		// 60 bits per transform
+			{ 6, 2, 12 },		// 60 bits per transform
+			{ 6, 3, 11 },		// 60 bits per transform
+			{ 6, 4, 10 },		// 60 bits per transform
+			{ 6, 5, 9 },		// 60 bits per transform
+			{ 6, 6, 8 },		// 60 bits per transform
+			{ 6, 7, 7 },		// 60 bits per transform
+			{ 6, 8, 6 },		// 60 bits per transform
+			{ 6, 9, 5 },		// 60 bits per transform
+			{ 6, 10, 4 },		// 60 bits per transform
+			{ 6, 11, 3 },		// 60 bits per transform
+			{ 6, 12, 2 },		// 60 bits per transform
+			{ 6, 13, 1 },		// 60 bits per transform
+			{ 6, 14, 0 },		// 60 bits per transform
+			{ 7, 0, 13 },		// 60 bits per transform
+			{ 7, 1, 12 },		// 60 bits per transform
+			{ 7, 2, 11 },		// 60 bits per transform
+			{ 7, 3, 10 },		// 60 bits per transform
+			{ 7, 4, 9 },		// 60 bits per transform
+			{ 7, 5, 8 },		// 60 bits per transform
+			{ 7, 6, 7 },		// 60 bits per transform
+			{ 7, 7, 6 },		// 60 bits per transform
+			{ 7, 8, 5 },		// 60 bits per transform
+			{ 7, 9, 4 },		// 60 bits per transform
+			{ 7, 10, 3 },		// 60 bits per transform
+			{ 7, 11, 2 },		// 60 bits per transform
+			{ 7, 12, 1 },		// 60 bits per transform
+			{ 7, 13, 0 },		// 60 bits per transform
+			{ 8, 0, 12 },		// 60 bits per transform
+			{ 8, 1, 11 },		// 60 bits per transform
+			{ 8, 2, 10 },		// 60 bits per transform
+			{ 8, 3, 9 },		// 60 bits per transform
+			{ 8, 4, 8 },		// 60 bits per transform
+			{ 8, 5, 7 },		// 60 bits per transform
+			{ 8, 6, 6 },		// 60 bits per transform
+			{ 8, 7, 5 },		// 60 bits per transform
+			{ 8, 8, 4 },		// 60 bits per transform
+			{ 8, 9, 3 },		// 60 bits per transform
+			{ 8, 10, 2 },		// 60 bits per transform
+			{ 8, 11, 1 },		// 60 bits per transform
+			{ 8, 12, 0 },		// 60 bits per transform
+			{ 9, 0, 11 },		// 60 bits per transform
+			{ 9, 1, 10 },		// 60 bits per transform
+			{ 9, 2, 9 },		// 60 bits per transform
+			{ 9, 3, 8 },		// 60 bits per transform
+			{ 9, 4, 7 },		// 60 bits per transform
+			{ 9, 5, 6 },		// 60 bits per transform
+			{ 9, 6, 5 },		// 60 bits per transform
+			{ 9, 7, 4 },		// 60 bits per transform
+			{ 9, 8, 3 },		// 60 bits per transform
+			{ 9, 9, 2 },		// 60 bits per transform
+			{ 9, 10, 1 },		// 60 bits per transform
+			{ 9, 11, 0 },		// 60 bits per transform
+			{ 10, 0, 10 },		// 60 bits per transform
+			{ 10, 1, 9 },		// 60 bits per transform
+			{ 10, 2, 8 },		// 60 bits per transform
+			{ 10, 3, 7 },		// 60 bits per transform
+			{ 10, 4, 6 },		// 60 bits per transform
+			{ 10, 5, 5 },		// 60 bits per transform
+			{ 10, 6, 4 },		// 60 bits per transform
+			{ 10, 7, 3 },		// 60 bits per transform
+			{ 10, 8, 2 },		// 60 bits per transform
+			{ 10, 9, 1 },		// 60 bits per transform
+			{ 10, 10, 0 },		// 60 bits per transform
+			{ 11, 0, 9 },		// 60 bits per transform
+			{ 11, 1, 8 },		// 60 bits per transform
+			{ 11, 2, 7 },		// 60 bits per transform
+			{ 11, 3, 6 },		// 60 bits per transform
+			{ 11, 4, 5 },		// 60 bits per transform
+			{ 11, 5, 4 },		// 60 bits per transform
+			{ 11, 6, 3 },		// 60 bits per transform
+			{ 11, 7, 2 },		// 60 bits per transform
+			{ 11, 8, 1 },		// 60 bits per transform
+			{ 11, 9, 0 },		// 60 bits per transform
+			{ 12, 0, 8 },		// 60 bits per transform
+			{ 12, 1, 7 },		// 60 bits per transform
+			{ 12, 2, 6 },		// 60 bits per transform
+			{ 12, 3, 5 },		// 60 bits per transform
+			{ 12, 4, 4 },		// 60 bits per transform
+			{ 12, 5, 3 },		// 60 bits per transform
+			{ 12, 6, 2 },		// 60 bits per transform
+			{ 12, 7, 1 },		// 60 bits per transform
+			{ 12, 8, 0 },		// 60 bits per transform
+			{ 13, 0, 7 },		// 60 bits per transform
+			{ 13, 1, 6 },		// 60 bits per transform
+			{ 13, 2, 5 },		// 60 bits per transform
+			{ 13, 3, 4 },		// 60 bits per transform
+			{ 13, 4, 3 },		// 60 bits per transform
+			{ 13, 5, 2 },		// 60 bits per transform
+			{ 13, 6, 1 },		// 60 bits per transform
+			{ 13, 7, 0 },		// 60 bits per transform
+			{ 14, 0, 6 },		// 60 bits per transform
+			{ 14, 1, 5 },		// 60 bits per transform
+			{ 14, 2, 4 },		// 60 bits per transform
+			{ 14, 3, 3 },		// 60 bits per transform
+			{ 14, 4, 2 },		// 60 bits per transform
+			{ 14, 5, 1 },		// 60 bits per transform
+			{ 14, 6, 0 },		// 60 bits per transform
+			{ 15, 0, 5 },		// 60 bits per transform
+			{ 15, 1, 4 },		// 60 bits per transform
+			{ 15, 2, 3 },		// 60 bits per transform
+			{ 15, 3, 2 },		// 60 bits per transform
+			{ 15, 4, 1 },		// 60 bits per transform
+			{ 15, 5, 0 },		// 60 bits per transform
+			{ 16, 0, 4 },		// 60 bits per transform
+			{ 16, 1, 3 },		// 60 bits per transform
+			{ 16, 2, 2 },		// 60 bits per transform
+			{ 16, 3, 1 },		// 60 bits per transform
+			{ 16, 4, 0 },		// 60 bits per transform
+			{ 17, 0, 3 },		// 60 bits per transform
+			{ 17, 1, 2 },		// 60 bits per transform
+			{ 17, 2, 1 },		// 60 bits per transform
+			{ 17, 3, 0 },		// 60 bits per transform
+			{ 18, 0, 2 },		// 60 bits per transform
+			{ 18, 1, 1 },		// 60 bits per transform
+			{ 18, 2, 0 },		// 60 bits per transform
+			{ 19, 0, 1 },		// 60 bits per transform
+			{ 19, 1, 0 },		// 60 bits per transform
+			{ 20, 0, 0 },		// 60 bits per transform
+			{ 0, 0, 21 },		// 63 bits per transform
+			{ 0, 1, 20 },		// 63 bits per transform
+			{ 0, 2, 19 },		// 63 bits per transform
+			{ 0, 3, 18 },		// 63 bits per transform
+			{ 0, 4, 17 },		// 63 bits per transform
+			{ 0, 5, 16 },		// 63 bits per transform
+			{ 0, 6, 15 },		// 63 bits per transform
+			{ 0, 7, 14 },		// 63 bits per transform
+			{ 0, 8, 13 },		// 63 bits per transform
+			{ 0, 9, 12 },		// 63 bits per transform
+			{ 0, 10, 11 },		// 63 bits per transform
+			{ 0, 11, 10 },		// 63 bits per transform
+			{ 0, 12, 9 },		// 63 bits per transform
+			{ 0, 13, 8 },		// 63 bits per transform
+			{ 0, 14, 7 },		// 63 bits per transform
+			{ 0, 15, 6 },		// 63 bits per transform
+			{ 0, 16, 5 },		// 63 bits per transform
+			{ 0, 17, 4 },		// 63 bits per transform
+			{ 0, 18, 3 },		// 63 bits per transform
+			{ 0, 19, 2 },		// 63 bits per transform
+			{ 0, 20, 1 },		// 63 bits per transform
+			{ 0, 21, 0 },		// 63 bits per transform
+			{ 1, 0, 20 },		// 63 bits per transform
+			{ 1, 1, 19 },		// 63 bits per transform
+			{ 1, 2, 18 },		// 63 bits per transform
+			{ 1, 3, 17 },		// 63 bits per transform
+			{ 1, 4, 16 },		// 63 bits per transform
+			{ 1, 5, 15 },		// 63 bits per transform
+			{ 1, 6, 14 },		// 63 bits per transform
+			{ 1, 7, 13 },		// 63 bits per transform
+			{ 1, 8, 12 },		// 63 bits per transform
+			{ 1, 9, 11 },		// 63 bits per transform
+			{ 1, 10, 10 },		// 63 bits per transform
+			{ 1, 11, 9 },		// 63 bits per transform
+			{ 1, 12, 8 },		// 63 bits per transform
+			{ 1, 13, 7 },		// 63 bits per transform
+			{ 1, 14, 6 },		// 63 bits per transform
+			{ 1, 15, 5 },		// 63 bits per transform
+			{ 1, 16, 4 },		// 63 bits per transform
+			{ 1, 17, 3 },		// 63 bits per transform
+			{ 1, 18, 2 },		// 63 bits per transform
+			{ 1, 19, 1 },		// 63 bits per transform
+			{ 1, 20, 0 },		// 63 bits per transform
+			{ 2, 0, 19 },		// 63 bits per transform
+			{ 2, 1, 18 },		// 63 bits per transform
+			{ 2, 2, 17 },		// 63 bits per transform
+			{ 2, 3, 16 },		// 63 bits per transform
+			{ 2, 4, 15 },		// 63 bits per transform
+			{ 2, 5, 14 },		// 63 bits per transform
+			{ 2, 6, 13 },		// 63 bits per transform
+			{ 2, 7, 12 },		// 63 bits per transform
+			{ 2, 8, 11 },		// 63 bits per transform
+			{ 2, 9, 10 },		// 63 bits per transform
+			{ 2, 10, 9 },		// 63 bits per transform
+			{ 2, 11, 8 },		// 63 bits per transform
+			{ 2, 12, 7 },		// 63 bits per transform
+			{ 2, 13, 6 },		// 63 bits per transform
+			{ 2, 14, 5 },		// 63 bits per transform
+			{ 2, 15, 4 },		// 63 bits per transform
+			{ 2, 16, 3 },		// 63 bits per transform
+			{ 2, 17, 2 },		// 63 bits per transform
+			{ 2, 18, 1 },		// 63 bits per transform
+			{ 2, 19, 0 },		// 63 bits per transform
+			{ 3, 0, 18 },		// 63 bits per transform
+			{ 3, 1, 17 },		// 63 bits per transform
+			{ 3, 2, 16 },		// 63 bits per transform
+			{ 3, 3, 15 },		// 63 bits per transform
+			{ 3, 4, 14 },		// 63 bits per transform
+			{ 3, 5, 13 },		// 63 bits per transform
+			{ 3, 6, 12 },		// 63 bits per transform
+			{ 3, 7, 11 },		// 63 bits per transform
+			{ 3, 8, 10 },		// 63 bits per transform
+			{ 3, 9, 9 },		// 63 bits per transform
+			{ 3, 10, 8 },		// 63 bits per transform
+			{ 3, 11, 7 },		// 63 bits per transform
+			{ 3, 12, 6 },		// 63 bits per transform
+			{ 3, 13, 5 },		// 63 bits per transform
+			{ 3, 14, 4 },		// 63 bits per transform
+			{ 3, 15, 3 },		// 63 bits per transform
+			{ 3, 16, 2 },		// 63 bits per transform
+			{ 3, 17, 1 },		// 63 bits per transform
+			{ 3, 18, 0 },		// 63 bits per transform
+			{ 4, 0, 17 },		// 63 bits per transform
+			{ 4, 1, 16 },		// 63 bits per transform
+			{ 4, 2, 15 },		// 63 bits per transform
+			{ 4, 3, 14 },		// 63 bits per transform
+			{ 4, 4, 13 },		// 63 bits per transform
+			{ 4, 5, 12 },		// 63 bits per transform
+			{ 4, 6, 11 },		// 63 bits per transform
+			{ 4, 7, 10 },		// 63 bits per transform
+			{ 4, 8, 9 },		// 63 bits per transform
+			{ 4, 9, 8 },		// 63 bits per transform
+			{ 4, 10, 7 },		// 63 bits per transform
+			{ 4, 11, 6 },		// 63 bits per transform
+			{ 4, 12, 5 },		// 63 bits per transform
+			{ 4, 13, 4 },		// 63 bits per transform
+			{ 4, 14, 3 },		// 63 bits per transform
+			{ 4, 15, 2 },		// 63 bits per transform
+			{ 4, 16, 1 },		// 63 bits per transform
+			{ 4, 17, 0 },		// 63 bits per transform
+			{ 5, 0, 16 },		// 63 bits per transform
+			{ 5, 1, 15 },		// 63 bits per transform
+			{ 5, 2, 14 },		// 63 bits per transform
+			{ 5, 3, 13 },		// 63 bits per transform
+			{ 5, 4, 12 },		// 63 bits per transform
+			{ 5, 5, 11 },		// 63 bits per transform
+			{ 5, 6, 10 },		// 63 bits per transform
+			{ 5, 7, 9 },		// 63 bits per transform
+			{ 5, 8, 8 },		// 63 bits per transform
+			{ 5, 9, 7 },		// 63 bits per transform
+			{ 5, 10, 6 },		// 63 bits per transform
+			{ 5, 11, 5 },		// 63 bits per transform
+			{ 5, 12, 4 },		// 63 bits per transform
+			{ 5, 13, 3 },		// 63 bits per transform
+			{ 5, 14, 2 },		// 63 bits per transform
+			{ 5, 15, 1 },		// 63 bits per transform
+			{ 5, 16, 0 },		// 63 bits per transform
+			{ 6, 0, 15 },		// 63 bits per transform
+			{ 6, 1, 14 },		// 63 bits per transform
+			{ 6, 2, 13 },		// 63 bits per transform
+			{ 6, 3, 12 },		// 63 bits per transform
+			{ 6, 4, 11 },		// 63 bits per transform
+			{ 6, 5, 10 },		// 63 bits per transform
+			{ 6, 6, 9 },		// 63 bits per transform
+			{ 6, 7, 8 },		// 63 bits per transform
+			{ 6, 8, 7 },		// 63 bits per transform
+			{ 6, 9, 6 },		// 63 bits per transform
+			{ 6, 10, 5 },		// 63 bits per transform
+			{ 6, 11, 4 },		// 63 bits per transform
+			{ 6, 12, 3 },		// 63 bits per transform
+			{ 6, 13, 2 },		// 63 bits per transform
+			{ 6, 14, 1 },		// 63 bits per transform
+			{ 6, 15, 0 },		// 63 bits per transform
+			{ 7, 0, 14 },		// 63 bits per transform
+			{ 7, 1, 13 },		// 63 bits per transform
+			{ 7, 2, 12 },		// 63 bits per transform
+			{ 7, 3, 11 },		// 63 bits per transform
+			{ 7, 4, 10 },		// 63 bits per transform
+			{ 7, 5, 9 },		// 63 bits per transform
+			{ 7, 6, 8 },		// 63 bits per transform
+			{ 7, 7, 7 },		// 63 bits per transform
+			{ 7, 8, 6 },		// 63 bits per transform
+			{ 7, 9, 5 },		// 63 bits per transform
+			{ 7, 10, 4 },		// 63 bits per transform
+			{ 7, 11, 3 },		// 63 bits per transform
+			{ 7, 12, 2 },		// 63 bits per transform
+			{ 7, 13, 1 },		// 63 bits per transform
+			{ 7, 14, 0 },		// 63 bits per transform
+			{ 8, 0, 13 },		// 63 bits per transform
+			{ 8, 1, 12 },		// 63 bits per transform
+			{ 8, 2, 11 },		// 63 bits per transform
+			{ 8, 3, 10 },		// 63 bits per transform
+			{ 8, 4, 9 },		// 63 bits per transform
+			{ 8, 5, 8 },		// 63 bits per transform
+			{ 8, 6, 7 },		// 63 bits per transform
+			{ 8, 7, 6 },		// 63 bits per transform
+			{ 8, 8, 5 },		// 63 bits per transform
+			{ 8, 9, 4 },		// 63 bits per transform
+			{ 8, 10, 3 },		// 63 bits per transform
+			{ 8, 11, 2 },		// 63 bits per transform
+			{ 8, 12, 1 },		// 63 bits per transform
+			{ 8, 13, 0 },		// 63 bits per transform
+			{ 9, 0, 12 },		// 63 bits per transform
+			{ 9, 1, 11 },		// 63 bits per transform
+			{ 9, 2, 10 },		// 63 bits per transform
+			{ 9, 3, 9 },		// 63 bits per transform
+			{ 9, 4, 8 },		// 63 bits per transform
+			{ 9, 5, 7 },		// 63 bits per transform
+			{ 9, 6, 6 },		// 63 bits per transform
+			{ 9, 7, 5 },		// 63 bits per transform
+			{ 9, 8, 4 },		// 63 bits per transform
+			{ 9, 9, 3 },		// 63 bits per transform
+			{ 9, 10, 2 },		// 63 bits per transform
+			{ 9, 11, 1 },		// 63 bits per transform
+			{ 9, 12, 0 },		// 63 bits per transform
+			{ 10, 0, 11 },		// 63 bits per transform
+			{ 10, 1, 10 },		// 63 bits per transform
+			{ 10, 2, 9 },		// 63 bits per transform
+			{ 10, 3, 8 },		// 63 bits per transform
+			{ 10, 4, 7 },		// 63 bits per transform
+			{ 10, 5, 6 },		// 63 bits per transform
+			{ 10, 6, 5 },		// 63 bits per transform
+			{ 10, 7, 4 },		// 63 bits per transform
+			{ 10, 8, 3 },		// 63 bits per transform
+			{ 10, 9, 2 },		// 63 bits per transform
+			{ 10, 10, 1 },		// 63 bits per transform
+			{ 10, 11, 0 },		// 63 bits per transform
+			{ 11, 0, 10 },		// 63 bits per transform
+			{ 11, 1, 9 },		// 63 bits per transform
+			{ 11, 2, 8 },		// 63 bits per transform
+			{ 11, 3, 7 },		// 63 bits per transform
+			{ 11, 4, 6 },		// 63 bits per transform
+			{ 11, 5, 5 },		// 63 bits per transform
+			{ 11, 6, 4 },		// 63 bits per transform
+			{ 11, 7, 3 },		// 63 bits per transform
+			{ 11, 8, 2 },		// 63 bits per transform
+			{ 11, 9, 1 },		// 63 bits per transform
+			{ 11, 10, 0 },		// 63 bits per transform
+			{ 12, 0, 9 },		// 63 bits per transform
+			{ 12, 1, 8 },		// 63 bits per transform
+			{ 12, 2, 7 },		// 63 bits per transform
+			{ 12, 3, 6 },		// 63 bits per transform
+			{ 12, 4, 5 },		// 63 bits per transform
+			{ 12, 5, 4 },		// 63 bits per transform
+			{ 12, 6, 3 },		// 63 bits per transform
+			{ 12, 7, 2 },		// 63 bits per transform
+			{ 12, 8, 1 },		// 63 bits per transform
+			{ 12, 9, 0 },		// 63 bits per transform
+			{ 13, 0, 8 },		// 63 bits per transform
+			{ 13, 1, 7 },		// 63 bits per transform
+			{ 13, 2, 6 },		// 63 bits per transform
+			{ 13, 3, 5 },		// 63 bits per transform
+			{ 13, 4, 4 },		// 63 bits per transform
+			{ 13, 5, 3 },		// 63 bits per transform
+			{ 13, 6, 2 },		// 63 bits per transform
+			{ 13, 7, 1 },		// 63 bits per transform
+			{ 13, 8, 0 },		// 63 bits per transform
+			{ 14, 0, 7 },		// 63 bits per transform
+			{ 14, 1, 6 },		// 63 bits per transform
+			{ 14, 2, 5 },		// 63 bits per transform
+			{ 14, 3, 4 },		// 63 bits per transform
+			{ 14, 4, 3 },		// 63 bits per transform
+			{ 14, 5, 2 },		// 63 bits per transform
+			{ 14, 6, 1 },		// 63 bits per transform
+			{ 14, 7, 0 },		// 63 bits per transform
+			{ 15, 0, 6 },		// 63 bits per transform
+			{ 15, 1, 5 },		// 63 bits per transform
+			{ 15, 2, 4 },		// 63 bits per transform
+			{ 15, 3, 3 },		// 63 bits per transform
+			{ 15, 4, 2 },		// 63 bits per transform
+			{ 15, 5, 1 },		// 63 bits per transform
+			{ 15, 6, 0 },		// 63 bits per transform
+			{ 16, 0, 5 },		// 63 bits per transform
+			{ 16, 1, 4 },		// 63 bits per transform
+			{ 16, 2, 3 },		// 63 bits per transform
+			{ 16, 3, 2 },		// 63 bits per transform
+			{ 16, 4, 1 },		// 63 bits per transform
+			{ 16, 5, 0 },		// 63 bits per transform
+			{ 17, 0, 4 },		// 63 bits per transform
+			{ 17, 1, 3 },		// 63 bits per transform
+			{ 17, 2, 2 },		// 63 bits per transform
+			{ 17, 3, 1 },		// 63 bits per transform
+			{ 17, 4, 0 },		// 63 bits per transform
+			{ 18, 0, 3 },		// 63 bits per transform
+			{ 18, 1, 2 },		// 63 bits per transform
+			{ 18, 2, 1 },		// 63 bits per transform
+			{ 18, 3, 0 },		// 63 bits per transform
+			{ 19, 0, 2 },		// 63 bits per transform
+			{ 19, 1, 1 },		// 63 bits per transform
+			{ 19, 2, 0 },		// 63 bits per transform
+			{ 20, 0, 1 },		// 63 bits per transform
+			{ 20, 1, 0 },		// 63 bits per transform
+			{ 21, 0, 0 },		// 63 bits per transform
+			{ 0, 0, 22 },		// 66 bits per transform
+			{ 0, 1, 21 },		// 66 bits per transform
+			{ 0, 2, 20 },		// 66 bits per transform
+			{ 0, 3, 19 },		// 66 bits per transform
+			{ 0, 4, 18 },		// 66 bits per transform
+			{ 0, 5, 17 },		// 66 bits per transform
+			{ 0, 6, 16 },		// 66 bits per transform
+			{ 0, 7, 15 },		// 66 bits per transform
+			{ 0, 8, 14 },		// 66 bits per transform
+			{ 0, 9, 13 },		// 66 bits per transform
+			{ 0, 10, 12 },		// 66 bits per transform
+			{ 0, 11, 11 },		// 66 bits per transform
+			{ 0, 12, 10 },		// 66 bits per transform
+			{ 0, 13, 9 },		// 66 bits per transform
+			{ 0, 14, 8 },		// 66 bits per transform
+			{ 0, 15, 7 },		// 66 bits per transform
+			{ 0, 16, 6 },		// 66 bits per transform
+			{ 0, 17, 5 },		// 66 bits per transform
+			{ 0, 18, 4 },		// 66 bits per transform
+			{ 0, 19, 3 },		// 66 bits per transform
+			{ 0, 20, 2 },		// 66 bits per transform
+			{ 0, 21, 1 },		// 66 bits per transform
+			{ 0, 22, 0 },		// 66 bits per transform
+			{ 1, 0, 21 },		// 66 bits per transform
+			{ 1, 1, 20 },		// 66 bits per transform
+			{ 1, 2, 19 },		// 66 bits per transform
+			{ 1, 3, 18 },		// 66 bits per transform
+			{ 1, 4, 17 },		// 66 bits per transform
+			{ 1, 5, 16 },		// 66 bits per transform
+			{ 1, 6, 15 },		// 66 bits per transform
+			{ 1, 7, 14 },		// 66 bits per transform
+			{ 1, 8, 13 },		// 66 bits per transform
+			{ 1, 9, 12 },		// 66 bits per transform
+			{ 1, 10, 11 },		// 66 bits per transform
+			{ 1, 11, 10 },		// 66 bits per transform
+			{ 1, 12, 9 },		// 66 bits per transform
+			{ 1, 13, 8 },		// 66 bits per transform
+			{ 1, 14, 7 },		// 66 bits per transform
+			{ 1, 15, 6 },		// 66 bits per transform
+			{ 1, 16, 5 },		// 66 bits per transform
+			{ 1, 17, 4 },		// 66 bits per transform
+			{ 1, 18, 3 },		// 66 bits per transform
+			{ 1, 19, 2 },		// 66 bits per transform
+			{ 1, 20, 1 },		// 66 bits per transform
+			{ 1, 21, 0 },		// 66 bits per transform
+			{ 2, 0, 20 },		// 66 bits per transform
+			{ 2, 1, 19 },		// 66 bits per transform
+			{ 2, 2, 18 },		// 66 bits per transform
+			{ 2, 3, 17 },		// 66 bits per transform
+			{ 2, 4, 16 },		// 66 bits per transform
+			{ 2, 5, 15 },		// 66 bits per transform
+			{ 2, 6, 14 },		// 66 bits per transform
+			{ 2, 7, 13 },		// 66 bits per transform
+			{ 2, 8, 12 },		// 66 bits per transform
+			{ 2, 9, 11 },		// 66 bits per transform
+			{ 2, 10, 10 },		// 66 bits per transform
+			{ 2, 11, 9 },		// 66 bits per transform
+			{ 2, 12, 8 },		// 66 bits per transform
+			{ 2, 13, 7 },		// 66 bits per transform
+			{ 2, 14, 6 },		// 66 bits per transform
+			{ 2, 15, 5 },		// 66 bits per transform
+			{ 2, 16, 4 },		// 66 bits per transform
+			{ 2, 17, 3 },		// 66 bits per transform
+			{ 2, 18, 2 },		// 66 bits per transform
+			{ 2, 19, 1 },		// 66 bits per transform
+			{ 2, 20, 0 },		// 66 bits per transform
+			{ 3, 0, 19 },		// 66 bits per transform
+			{ 3, 1, 18 },		// 66 bits per transform
+			{ 3, 2, 17 },		// 66 bits per transform
+			{ 3, 3, 16 },		// 66 bits per transform
+			{ 3, 4, 15 },		// 66 bits per transform
+			{ 3, 5, 14 },		// 66 bits per transform
+			{ 3, 6, 13 },		// 66 bits per transform
+			{ 3, 7, 12 },		// 66 bits per transform
+			{ 3, 8, 11 },		// 66 bits per transform
+			{ 3, 9, 10 },		// 66 bits per transform
+			{ 3, 10, 9 },		// 66 bits per transform
+			{ 3, 11, 8 },		// 66 bits per transform
+			{ 3, 12, 7 },		// 66 bits per transform
+			{ 3, 13, 6 },		// 66 bits per transform
+			{ 3, 14, 5 },		// 66 bits per transform
+			{ 3, 15, 4 },		// 66 bits per transform
+			{ 3, 16, 3 },		// 66 bits per transform
+			{ 3, 17, 2 },		// 66 bits per transform
+			{ 3, 18, 1 },		// 66 bits per transform
+			{ 3, 19, 0 },		// 66 bits per transform
+			{ 4, 0, 18 },		// 66 bits per transform
+			{ 4, 1, 17 },		// 66 bits per transform
+			{ 4, 2, 16 },		// 66 bits per transform
+			{ 4, 3, 15 },		// 66 bits per transform
+			{ 4, 4, 14 },		// 66 bits per transform
+			{ 4, 5, 13 },		// 66 bits per transform
+			{ 4, 6, 12 },		// 66 bits per transform
+			{ 4, 7, 11 },		// 66 bits per transform
+			{ 4, 8, 10 },		// 66 bits per transform
+			{ 4, 9, 9 },		// 66 bits per transform
+			{ 4, 10, 8 },		// 66 bits per transform
+			{ 4, 11, 7 },		// 66 bits per transform
+			{ 4, 12, 6 },		// 66 bits per transform
+			{ 4, 13, 5 },		// 66 bits per transform
+			{ 4, 14, 4 },		// 66 bits per transform
+			{ 4, 15, 3 },		// 66 bits per transform
+			{ 4, 16, 2 },		// 66 bits per transform
+			{ 4, 17, 1 },		// 66 bits per transform
+			{ 4, 18, 0 },		// 66 bits per transform
+			{ 5, 0, 17 },		// 66 bits per transform
+			{ 5, 1, 16 },		// 66 bits per transform
+			{ 5, 2, 15 },		// 66 bits per transform
+			{ 5, 3, 14 },		// 66 bits per transform
+			{ 5, 4, 13 },		// 66 bits per transform
+			{ 5, 5, 12 },		// 66 bits per transform
+			{ 5, 6, 11 },		// 66 bits per transform
+			{ 5, 7, 10 },		// 66 bits per transform
+			{ 5, 8, 9 },		// 66 bits per transform
+			{ 5, 9, 8 },		// 66 bits per transform
+			{ 5, 10, 7 },		// 66 bits per transform
+			{ 5, 11, 6 },		// 66 bits per transform
+			{ 5, 12, 5 },		// 66 bits per transform
+			{ 5, 13, 4 },		// 66 bits per transform
+			{ 5, 14, 3 },		// 66 bits per transform
+			{ 5, 15, 2 },		// 66 bits per transform
+			{ 5, 16, 1 },		// 66 bits per transform
+			{ 5, 17, 0 },		// 66 bits per transform
+			{ 6, 0, 16 },		// 66 bits per transform
+			{ 6, 1, 15 },		// 66 bits per transform
+			{ 6, 2, 14 },		// 66 bits per transform
+			{ 6, 3, 13 },		// 66 bits per transform
+			{ 6, 4, 12 },		// 66 bits per transform
+			{ 6, 5, 11 },		// 66 bits per transform
+			{ 6, 6, 10 },		// 66 bits per transform
+			{ 6, 7, 9 },		// 66 bits per transform
+			{ 6, 8, 8 },		// 66 bits per transform
+			{ 6, 9, 7 },		// 66 bits per transform
+			{ 6, 10, 6 },		// 66 bits per transform
+			{ 6, 11, 5 },		// 66 bits per transform
+			{ 6, 12, 4 },		// 66 bits per transform
+			{ 6, 13, 3 },		// 66 bits per transform
+			{ 6, 14, 2 },		// 66 bits per transform
+			{ 6, 15, 1 },		// 66 bits per transform
+			{ 6, 16, 0 },		// 66 bits per transform
+			{ 7, 0, 15 },		// 66 bits per transform
+			{ 7, 1, 14 },		// 66 bits per transform
+			{ 7, 2, 13 },		// 66 bits per transform
+			{ 7, 3, 12 },		// 66 bits per transform
+			{ 7, 4, 11 },		// 66 bits per transform
+			{ 7, 5, 10 },		// 66 bits per transform
+			{ 7, 6, 9 },		// 66 bits per transform
+			{ 7, 7, 8 },		// 66 bits per transform
+			{ 7, 8, 7 },		// 66 bits per transform
+			{ 7, 9, 6 },		// 66 bits per transform
+			{ 7, 10, 5 },		// 66 bits per transform
+			{ 7, 11, 4 },		// 66 bits per transform
+			{ 7, 12, 3 },		// 66 bits per transform
+			{ 7, 13, 2 },		// 66 bits per transform
+			{ 7, 14, 1 },		// 66 bits per transform
+			{ 7, 15, 0 },		// 66 bits per transform
+			{ 8, 0, 14 },		// 66 bits per transform
+			{ 8, 1, 13 },		// 66 bits per transform
+			{ 8, 2, 12 },		// 66 bits per transform
+			{ 8, 3, 11 },		// 66 bits per transform
+			{ 8, 4, 10 },		// 66 bits per transform
+			{ 8, 5, 9 },		// 66 bits per transform
+			{ 8, 6, 8 },		// 66 bits per transform
+			{ 8, 7, 7 },		// 66 bits per transform
+			{ 8, 8, 6 },		// 66 bits per transform
+			{ 8, 9, 5 },		// 66 bits per transform
+			{ 8, 10, 4 },		// 66 bits per transform
+			{ 8, 11, 3 },		// 66 bits per transform
+			{ 8, 12, 2 },		// 66 bits per transform
+			{ 8, 13, 1 },		// 66 bits per transform
+			{ 8, 14, 0 },		// 66 bits per transform
+			{ 9, 0, 13 },		// 66 bits per transform
+			{ 9, 1, 12 },		// 66 bits per transform
+			{ 9, 2, 11 },		// 66 bits per transform
+			{ 9, 3, 10 },		// 66 bits per transform
+			{ 9, 4, 9 },		// 66 bits per transform
+			{ 9, 5, 8 },		// 66 bits per transform
+			{ 9, 6, 7 },		// 66 bits per transform
+			{ 9, 7, 6 },		// 66 bits per transform
+			{ 9, 8, 5 },		// 66 bits per transform
+			{ 9, 9, 4 },		// 66 bits per transform
+			{ 9, 10, 3 },		// 66 bits per transform
+			{ 9, 11, 2 },		// 66 bits per transform
+			{ 9, 12, 1 },		// 66 bits per transform
+			{ 9, 13, 0 },		// 66 bits per transform
+			{ 10, 0, 12 },		// 66 bits per transform
+			{ 10, 1, 11 },		// 66 bits per transform
+			{ 10, 2, 10 },		// 66 bits per transform
+			{ 10, 3, 9 },		// 66 bits per transform
+			{ 10, 4, 8 },		// 66 bits per transform
+			{ 10, 5, 7 },		// 66 bits per transform
+			{ 10, 6, 6 },		// 66 bits per transform
+			{ 10, 7, 5 },		// 66 bits per transform
+			{ 10, 8, 4 },		// 66 bits per transform
+			{ 10, 9, 3 },		// 66 bits per transform
+			{ 10, 10, 2 },		// 66 bits per transform
+			{ 10, 11, 1 },		// 66 bits per transform
+			{ 10, 12, 0 },		// 66 bits per transform
+			{ 11, 0, 11 },		// 66 bits per transform
+			{ 11, 1, 10 },		// 66 bits per transform
+			{ 11, 2, 9 },		// 66 bits per transform
+			{ 11, 3, 8 },		// 66 bits per transform
+			{ 11, 4, 7 },		// 66 bits per transform
+			{ 11, 5, 6 },		// 66 bits per transform
+			{ 11, 6, 5 },		// 66 bits per transform
+			{ 11, 7, 4 },		// 66 bits per transform
+			{ 11, 8, 3 },		// 66 bits per transform
+			{ 11, 9, 2 },		// 66 bits per transform
+			{ 11, 10, 1 },		// 66 bits per transform
+			{ 11, 11, 0 },		// 66 bits per transform
+			{ 12, 0, 10 },		// 66 bits per transform
+			{ 12, 1, 9 },		// 66 bits per transform
+			{ 12, 2, 8 },		// 66 bits per transform
+			{ 12, 3, 7 },		// 66 bits per transform
+			{ 12, 4, 6 },		// 66 bits per transform
+			{ 12, 5, 5 },		// 66 bits per transform
+			{ 12, 6, 4 },		// 66 bits per transform
+			{ 12, 7, 3 },		// 66 bits per transform
+			{ 12, 8, 2 },		// 66 bits per transform
+			{ 12, 9, 1 },		// 66 bits per transform
+			{ 12, 10, 0 },		// 66 bits per transform
+			{ 13, 0, 9 },		// 66 bits per transform
+			{ 13, 1, 8 },		// 66 bits per transform
+			{ 13, 2, 7 },		// 66 bits per transform
+			{ 13, 3, 6 },		// 66 bits per transform
+			{ 13, 4, 5 },		// 66 bits per transform
+			{ 13, 5, 4 },		// 66 bits per transform
+			{ 13, 6, 3 },		// 66 bits per transform
+			{ 13, 7, 2 },		// 66 bits per transform
+			{ 13, 8, 1 },		// 66 bits per transform
+			{ 13, 9, 0 },		// 66 bits per transform
+			{ 14, 0, 8 },		// 66 bits per transform
+			{ 14, 1, 7 },		// 66 bits per transform
+			{ 14, 2, 6 },		// 66 bits per transform
+			{ 14, 3, 5 },		// 66 bits per transform
+			{ 14, 4, 4 },		// 66 bits per transform
+			{ 14, 5, 3 },		// 66 bits per transform
+			{ 14, 6, 2 },		// 66 bits per transform
+			{ 14, 7, 1 },		// 66 bits per transform
+			{ 14, 8, 0 },		// 66 bits per transform
+			{ 15, 0, 7 },		// 66 bits per transform
+			{ 15, 1, 6 },		// 66 bits per transform
+			{ 15, 2, 5 },		// 66 bits per transform
+			{ 15, 3, 4 },		// 66 bits per transform
+			{ 15, 4, 3 },		// 66 bits per transform
+			{ 15, 5, 2 },		// 66 bits per transform
+			{ 15, 6, 1 },		// 66 bits per transform
+			{ 15, 7, 0 },		// 66 bits per transform
+			{ 16, 0, 6 },		// 66 bits per transform
+			{ 16, 1, 5 },		// 66 bits per transform
+			{ 16, 2, 4 },		// 66 bits per transform
+			{ 16, 3, 3 },		// 66 bits per transform
+			{ 16, 4, 2 },		// 66 bits per transform
+			{ 16, 5, 1 },		// 66 bits per transform
+			{ 16, 6, 0 },		// 66 bits per transform
+			{ 17, 0, 5 },		// 66 bits per transform
+			{ 17, 1, 4 },		// 66 bits per transform
+			{ 17, 2, 3 },		// 66 bits per transform
+			{ 17, 3, 2 },		// 66 bits per transform
+			{ 17, 4, 1 },		// 66 bits per transform
+			{ 17, 5, 0 },		// 66 bits per transform
+			{ 18, 0, 4 },		// 66 bits per transform
+			{ 18, 1, 3 },		// 66 bits per transform
+			{ 18, 2, 2 },		// 66 bits per transform
+			{ 18, 3, 1 },		// 66 bits per transform
+			{ 18, 4, 0 },		// 66 bits per transform
+			{ 19, 0, 3 },		// 66 bits per transform
+			{ 19, 1, 2 },		// 66 bits per transform
+			{ 19, 2, 1 },		// 66 bits per transform
+			{ 19, 3, 0 },		// 66 bits per transform
+			{ 20, 0, 2 },		// 66 bits per transform
+			{ 20, 1, 1 },		// 66 bits per transform
+			{ 20, 2, 0 },		// 66 bits per transform
+			{ 21, 0, 1 },		// 66 bits per transform
+			{ 21, 1, 0 },		// 66 bits per transform
+			{ 22, 0, 0 },		// 66 bits per transform
+			{ 0, 0, 23 },		// 69 bits per transform
+			{ 0, 1, 22 },		// 69 bits per transform
+			{ 0, 2, 21 },		// 69 bits per transform
+			{ 0, 3, 20 },		// 69 bits per transform
+			{ 0, 4, 19 },		// 69 bits per transform
+			{ 0, 5, 18 },		// 69 bits per transform
+			{ 0, 6, 17 },		// 69 bits per transform
+			{ 0, 7, 16 },		// 69 bits per transform
+			{ 0, 8, 15 },		// 69 bits per transform
+			{ 0, 9, 14 },		// 69 bits per transform
+			{ 0, 10, 13 },		// 69 bits per transform
+			{ 0, 11, 12 },		// 69 bits per transform
+			{ 0, 12, 11 },		// 69 bits per transform
+			{ 0, 13, 10 },		// 69 bits per transform
+			{ 0, 14, 9 },		// 69 bits per transform
+			{ 0, 15, 8 },		// 69 bits per transform
+			{ 0, 16, 7 },		// 69 bits per transform
+			{ 0, 17, 6 },		// 69 bits per transform
+			{ 0, 18, 5 },		// 69 bits per transform
+			{ 0, 19, 4 },		// 69 bits per transform
+			{ 0, 20, 3 },		// 69 bits per transform
+			{ 0, 21, 2 },		// 69 bits per transform
+			{ 0, 22, 1 },		// 69 bits per transform
+			{ 0, 23, 0 },		// 69 bits per transform
+			{ 1, 0, 22 },		// 69 bits per transform
+			{ 1, 1, 21 },		// 69 bits per transform
+			{ 1, 2, 20 },		// 69 bits per transform
+			{ 1, 3, 19 },		// 69 bits per transform
+			{ 1, 4, 18 },		// 69 bits per transform
+			{ 1, 5, 17 },		// 69 bits per transform
+			{ 1, 6, 16 },		// 69 bits per transform
+			{ 1, 7, 15 },		// 69 bits per transform
+			{ 1, 8, 14 },		// 69 bits per transform
+			{ 1, 9, 13 },		// 69 bits per transform
+			{ 1, 10, 12 },		// 69 bits per transform
+			{ 1, 11, 11 },		// 69 bits per transform
+			{ 1, 12, 10 },		// 69 bits per transform
+			{ 1, 13, 9 },		// 69 bits per transform
+			{ 1, 14, 8 },		// 69 bits per transform
+			{ 1, 15, 7 },		// 69 bits per transform
+			{ 1, 16, 6 },		// 69 bits per transform
+			{ 1, 17, 5 },		// 69 bits per transform
+			{ 1, 18, 4 },		// 69 bits per transform
+			{ 1, 19, 3 },		// 69 bits per transform
+			{ 1, 20, 2 },		// 69 bits per transform
+			{ 1, 21, 1 },		// 69 bits per transform
+			{ 1, 22, 0 },		// 69 bits per transform
+			{ 2, 0, 21 },		// 69 bits per transform
+			{ 2, 1, 20 },		// 69 bits per transform
+			{ 2, 2, 19 },		// 69 bits per transform
+			{ 2, 3, 18 },		// 69 bits per transform
+			{ 2, 4, 17 },		// 69 bits per transform
+			{ 2, 5, 16 },		// 69 bits per transform
+			{ 2, 6, 15 },		// 69 bits per transform
+			{ 2, 7, 14 },		// 69 bits per transform
+			{ 2, 8, 13 },		// 69 bits per transform
+			{ 2, 9, 12 },		// 69 bits per transform
+			{ 2, 10, 11 },		// 69 bits per transform
+			{ 2, 11, 10 },		// 69 bits per transform
+			{ 2, 12, 9 },		// 69 bits per transform
+			{ 2, 13, 8 },		// 69 bits per transform
+			{ 2, 14, 7 },		// 69 bits per transform
+			{ 2, 15, 6 },		// 69 bits per transform
+			{ 2, 16, 5 },		// 69 bits per transform
+			{ 2, 17, 4 },		// 69 bits per transform
+			{ 2, 18, 3 },		// 69 bits per transform
+			{ 2, 19, 2 },		// 69 bits per transform
+			{ 2, 20, 1 },		// 69 bits per transform
+			{ 2, 21, 0 },		// 69 bits per transform
+			{ 3, 0, 20 },		// 69 bits per transform
+			{ 3, 1, 19 },		// 69 bits per transform
+			{ 3, 2, 18 },		// 69 bits per transform
+			{ 3, 3, 17 },		// 69 bits per transform
+			{ 3, 4, 16 },		// 69 bits per transform
+			{ 3, 5, 15 },		// 69 bits per transform
+			{ 3, 6, 14 },		// 69 bits per transform
+			{ 3, 7, 13 },		// 69 bits per transform
+			{ 3, 8, 12 },		// 69 bits per transform
+			{ 3, 9, 11 },		// 69 bits per transform
+			{ 3, 10, 10 },		// 69 bits per transform
+			{ 3, 11, 9 },		// 69 bits per transform
+			{ 3, 12, 8 },		// 69 bits per transform
+			{ 3, 13, 7 },		// 69 bits per transform
+			{ 3, 14, 6 },		// 69 bits per transform
+			{ 3, 15, 5 },		// 69 bits per transform
+			{ 3, 16, 4 },		// 69 bits per transform
+			{ 3, 17, 3 },		// 69 bits per transform
+			{ 3, 18, 2 },		// 69 bits per transform
+			{ 3, 19, 1 },		// 69 bits per transform
+			{ 3, 20, 0 },		// 69 bits per transform
+			{ 4, 0, 19 },		// 69 bits per transform
+			{ 4, 1, 18 },		// 69 bits per transform
+			{ 4, 2, 17 },		// 69 bits per transform
+			{ 4, 3, 16 },		// 69 bits per transform
+			{ 4, 4, 15 },		// 69 bits per transform
+			{ 4, 5, 14 },		// 69 bits per transform
+			{ 4, 6, 13 },		// 69 bits per transform
+			{ 4, 7, 12 },		// 69 bits per transform
+			{ 4, 8, 11 },		// 69 bits per transform
+			{ 4, 9, 10 },		// 69 bits per transform
+			{ 4, 10, 9 },		// 69 bits per transform
+			{ 4, 11, 8 },		// 69 bits per transform
+			{ 4, 12, 7 },		// 69 bits per transform
+			{ 4, 13, 6 },		// 69 bits per transform
+			{ 4, 14, 5 },		// 69 bits per transform
+			{ 4, 15, 4 },		// 69 bits per transform
+			{ 4, 16, 3 },		// 69 bits per transform
+			{ 4, 17, 2 },		// 69 bits per transform
+			{ 4, 18, 1 },		// 69 bits per transform
+			{ 4, 19, 0 },		// 69 bits per transform
+			{ 5, 0, 18 },		// 69 bits per transform
+			{ 5, 1, 17 },		// 69 bits per transform
+			{ 5, 2, 16 },		// 69 bits per transform
+			{ 5, 3, 15 },		// 69 bits per transform
+			{ 5, 4, 14 },		// 69 bits per transform
+			{ 5, 5, 13 },		// 69 bits per transform
+			{ 5, 6, 12 },		// 69 bits per transform
+			{ 5, 7, 11 },		// 69 bits per transform
+			{ 5, 8, 10 },		// 69 bits per transform
+			{ 5, 9, 9 },		// 69 bits per transform
+			{ 5, 10, 8 },		// 69 bits per transform
+			{ 5, 11, 7 },		// 69 bits per transform
+			{ 5, 12, 6 },		// 69 bits per transform
+			{ 5, 13, 5 },		// 69 bits per transform
+			{ 5, 14, 4 },		// 69 bits per transform
+			{ 5, 15, 3 },		// 69 bits per transform
+			{ 5, 16, 2 },		// 69 bits per transform
+			{ 5, 17, 1 },		// 69 bits per transform
+			{ 5, 18, 0 },		// 69 bits per transform
+			{ 6, 0, 17 },		// 69 bits per transform
+			{ 6, 1, 16 },		// 69 bits per transform
+			{ 6, 2, 15 },		// 69 bits per transform
+			{ 6, 3, 14 },		// 69 bits per transform
+			{ 6, 4, 13 },		// 69 bits per transform
+			{ 6, 5, 12 },		// 69 bits per transform
+			{ 6, 6, 11 },		// 69 bits per transform
+			{ 6, 7, 10 },		// 69 bits per transform
+			{ 6, 8, 9 },		// 69 bits per transform
+			{ 6, 9, 8 },		// 69 bits per transform
+			{ 6, 10, 7 },		// 69 bits per transform
+			{ 6, 11, 6 },		// 69 bits per transform
+			{ 6, 12, 5 },		// 69 bits per transform
+			{ 6, 13, 4 },		// 69 bits per transform
+			{ 6, 14, 3 },		// 69 bits per transform
+			{ 6, 15, 2 },		// 69 bits per transform
+			{ 6, 16, 1 },		// 69 bits per transform
+			{ 6, 17, 0 },		// 69 bits per transform
+			{ 7, 0, 16 },		// 69 bits per transform
+			{ 7, 1, 15 },		// 69 bits per transform
+			{ 7, 2, 14 },		// 69 bits per transform
+			{ 7, 3, 13 },		// 69 bits per transform
+			{ 7, 4, 12 },		// 69 bits per transform
+			{ 7, 5, 11 },		// 69 bits per transform
+			{ 7, 6, 10 },		// 69 bits per transform
+			{ 7, 7, 9 },		// 69 bits per transform
+			{ 7, 8, 8 },		// 69 bits per transform
+			{ 7, 9, 7 },		// 69 bits per transform
+			{ 7, 10, 6 },		// 69 bits per transform
+			{ 7, 11, 5 },		// 69 bits per transform
+			{ 7, 12, 4 },		// 69 bits per transform
+			{ 7, 13, 3 },		// 69 bits per transform
+			{ 7, 14, 2 },		// 69 bits per transform
+			{ 7, 15, 1 },		// 69 bits per transform
+			{ 7, 16, 0 },		// 69 bits per transform
+			{ 8, 0, 15 },		// 69 bits per transform
+			{ 8, 1, 14 },		// 69 bits per transform
+			{ 8, 2, 13 },		// 69 bits per transform
+			{ 8, 3, 12 },		// 69 bits per transform
+			{ 8, 4, 11 },		// 69 bits per transform
+			{ 8, 5, 10 },		// 69 bits per transform
+			{ 8, 6, 9 },		// 69 bits per transform
+			{ 8, 7, 8 },		// 69 bits per transform
+			{ 8, 8, 7 },		// 69 bits per transform
+			{ 8, 9, 6 },		// 69 bits per transform
+			{ 8, 10, 5 },		// 69 bits per transform
+			{ 8, 11, 4 },		// 69 bits per transform
+			{ 8, 12, 3 },		// 69 bits per transform
+			{ 8, 13, 2 },		// 69 bits per transform
+			{ 8, 14, 1 },		// 69 bits per transform
+			{ 8, 15, 0 },		// 69 bits per transform
+			{ 9, 0, 14 },		// 69 bits per transform
+			{ 9, 1, 13 },		// 69 bits per transform
+			{ 9, 2, 12 },		// 69 bits per transform
+			{ 9, 3, 11 },		// 69 bits per transform
+			{ 9, 4, 10 },		// 69 bits per transform
+			{ 9, 5, 9 },		// 69 bits per transform
+			{ 9, 6, 8 },		// 69 bits per transform
+			{ 9, 7, 7 },		// 69 bits per transform
+			{ 9, 8, 6 },		// 69 bits per transform
+			{ 9, 9, 5 },		// 69 bits per transform
+			{ 9, 10, 4 },		// 69 bits per transform
+			{ 9, 11, 3 },		// 69 bits per transform
+			{ 9, 12, 2 },		// 69 bits per transform
+			{ 9, 13, 1 },		// 69 bits per transform
+			{ 9, 14, 0 },		// 69 bits per transform
+			{ 10, 0, 13 },		// 69 bits per transform
+			{ 10, 1, 12 },		// 69 bits per transform
+			{ 10, 2, 11 },		// 69 bits per transform
+			{ 10, 3, 10 },		// 69 bits per transform
+			{ 10, 4, 9 },		// 69 bits per transform
+			{ 10, 5, 8 },		// 69 bits per transform
+			{ 10, 6, 7 },		// 69 bits per transform
+			{ 10, 7, 6 },		// 69 bits per transform
+			{ 10, 8, 5 },		// 69 bits per transform
+			{ 10, 9, 4 },		// 69 bits per transform
+			{ 10, 10, 3 },		// 69 bits per transform
+			{ 10, 11, 2 },		// 69 bits per transform
+			{ 10, 12, 1 },		// 69 bits per transform
+			{ 10, 13, 0 },		// 69 bits per transform
+			{ 11, 0, 12 },		// 69 bits per transform
+			{ 11, 1, 11 },		// 69 bits per transform
+			{ 11, 2, 10 },		// 69 bits per transform
+			{ 11, 3, 9 },		// 69 bits per transform
+			{ 11, 4, 8 },		// 69 bits per transform
+			{ 11, 5, 7 },		// 69 bits per transform
+			{ 11, 6, 6 },		// 69 bits per transform
+			{ 11, 7, 5 },		// 69 bits per transform
+			{ 11, 8, 4 },		// 69 bits per transform
+			{ 11, 9, 3 },		// 69 bits per transform
+			{ 11, 10, 2 },		// 69 bits per transform
+			{ 11, 11, 1 },		// 69 bits per transform
+			{ 11, 12, 0 },		// 69 bits per transform
+			{ 12, 0, 11 },		// 69 bits per transform
+			{ 12, 1, 10 },		// 69 bits per transform
+			{ 12, 2, 9 },		// 69 bits per transform
+			{ 12, 3, 8 },		// 69 bits per transform
+			{ 12, 4, 7 },		// 69 bits per transform
+			{ 12, 5, 6 },		// 69 bits per transform
+			{ 12, 6, 5 },		// 69 bits per transform
+			{ 12, 7, 4 },		// 69 bits per transform
+			{ 12, 8, 3 },		// 69 bits per transform
+			{ 12, 9, 2 },		// 69 bits per transform
+			{ 12, 10, 1 },		// 69 bits per transform
+			{ 12, 11, 0 },		// 69 bits per transform
+			{ 13, 0, 10 },		// 69 bits per transform
+			{ 13, 1, 9 },		// 69 bits per transform
+			{ 13, 2, 8 },		// 69 bits per transform
+			{ 13, 3, 7 },		// 69 bits per transform
+			{ 13, 4, 6 },		// 69 bits per transform
+			{ 13, 5, 5 },		// 69 bits per transform
+			{ 13, 6, 4 },		// 69 bits per transform
+			{ 13, 7, 3 },		// 69 bits per transform
+			{ 13, 8, 2 },		// 69 bits per transform
+			{ 13, 9, 1 },		// 69 bits per transform
+			{ 13, 10, 0 },		// 69 bits per transform
+			{ 14, 0, 9 },		// 69 bits per transform
+			{ 14, 1, 8 },		// 69 bits per transform
+			{ 14, 2, 7 },		// 69 bits per transform
+			{ 14, 3, 6 },		// 69 bits per transform
+			{ 14, 4, 5 },		// 69 bits per transform
+			{ 14, 5, 4 },		// 69 bits per transform
+			{ 14, 6, 3 },		// 69 bits per transform
+			{ 14, 7, 2 },		// 69 bits per transform
+			{ 14, 8, 1 },		// 69 bits per transform
+			{ 14, 9, 0 },		// 69 bits per transform
+			{ 15, 0, 8 },		// 69 bits per transform
+			{ 15, 1, 7 },		// 69 bits per transform
+			{ 15, 2, 6 },		// 69 bits per transform
+			{ 15, 3, 5 },		// 69 bits per transform
+			{ 15, 4, 4 },		// 69 bits per transform
+			{ 15, 5, 3 },		// 69 bits per transform
+			{ 15, 6, 2 },		// 69 bits per transform
+			{ 15, 7, 1 },		// 69 bits per transform
+			{ 15, 8, 0 },		// 69 bits per transform
+			{ 16, 0, 7 },		// 69 bits per transform
+			{ 16, 1, 6 },		// 69 bits per transform
+			{ 16, 2, 5 },		// 69 bits per transform
+			{ 16, 3, 4 },		// 69 bits per transform
+			{ 16, 4, 3 },		// 69 bits per transform
+			{ 16, 5, 2 },		// 69 bits per transform
+			{ 16, 6, 1 },		// 69 bits per transform
+			{ 16, 7, 0 },		// 69 bits per transform
+			{ 17, 0, 6 },		// 69 bits per transform
+			{ 17, 1, 5 },		// 69 bits per transform
+			{ 17, 2, 4 },		// 69 bits per transform
+			{ 17, 3, 3 },		// 69 bits per transform
+			{ 17, 4, 2 },		// 69 bits per transform
+			{ 17, 5, 1 },		// 69 bits per transform
+			{ 17, 6, 0 },		// 69 bits per transform
+			{ 18, 0, 5 },		// 69 bits per transform
+			{ 18, 1, 4 },		// 69 bits per transform
+			{ 18, 2, 3 },		// 69 bits per transform
+			{ 18, 3, 2 },		// 69 bits per transform
+			{ 18, 4, 1 },		// 69 bits per transform
+			{ 18, 5, 0 },		// 69 bits per transform
+			{ 19, 0, 4 },		// 69 bits per transform
+			{ 19, 1, 3 },		// 69 bits per transform
+			{ 19, 2, 2 },		// 69 bits per transform
+			{ 19, 3, 1 },		// 69 bits per transform
+			{ 19, 4, 0 },		// 69 bits per transform
+			{ 20, 0, 3 },		// 69 bits per transform
+			{ 20, 1, 2 },		// 69 bits per transform
+			{ 20, 2, 1 },		// 69 bits per transform
+			{ 20, 3, 0 },		// 69 bits per transform
+			{ 21, 0, 2 },		// 69 bits per transform
+			{ 21, 1, 1 },		// 69 bits per transform
+			{ 21, 2, 0 },		// 69 bits per transform
+			{ 22, 0, 1 },		// 69 bits per transform
+			{ 22, 1, 0 },		// 69 bits per transform
+			{ 23, 0, 0 },		// 69 bits per transform
+			{ 0, 1, 23 },		// 72 bits per transform
+			{ 0, 2, 22 },		// 72 bits per transform
+			{ 0, 3, 21 },		// 72 bits per transform
+			{ 0, 4, 20 },		// 72 bits per transform
+			{ 0, 5, 19 },		// 72 bits per transform
+			{ 0, 6, 18 },		// 72 bits per transform
+			{ 0, 7, 17 },		// 72 bits per transform
+			{ 0, 8, 16 },		// 72 bits per transform
+			{ 0, 9, 15 },		// 72 bits per transform
+			{ 0, 10, 14 },		// 72 bits per transform
+			{ 0, 11, 13 },		// 72 bits per transform
+			{ 0, 12, 12 },		// 72 bits per transform
+			{ 0, 13, 11 },		// 72 bits per transform
+			{ 0, 14, 10 },		// 72 bits per transform
+			{ 0, 15, 9 },		// 72 bits per transform
+			{ 0, 16, 8 },		// 72 bits per transform
+			{ 0, 17, 7 },		// 72 bits per transform
+			{ 0, 18, 6 },		// 72 bits per transform
+			{ 0, 19, 5 },		// 72 bits per transform
+			{ 0, 20, 4 },		// 72 bits per transform
+			{ 0, 21, 3 },		// 72 bits per transform
+			{ 0, 22, 2 },		// 72 bits per transform
+			{ 0, 23, 1 },		// 72 bits per transform
+			{ 1, 0, 23 },		// 72 bits per transform
+			{ 1, 1, 22 },		// 72 bits per transform
+			{ 1, 2, 21 },		// 72 bits per transform
+			{ 1, 3, 20 },		// 72 bits per transform
+			{ 1, 4, 19 },		// 72 bits per transform
+			{ 1, 5, 18 },		// 72 bits per transform
+			{ 1, 6, 17 },		// 72 bits per transform
+			{ 1, 7, 16 },		// 72 bits per transform
+			{ 1, 8, 15 },		// 72 bits per transform
+			{ 1, 9, 14 },		// 72 bits per transform
+			{ 1, 10, 13 },		// 72 bits per transform
+			{ 1, 11, 12 },		// 72 bits per transform
+			{ 1, 12, 11 },		// 72 bits per transform
+			{ 1, 13, 10 },		// 72 bits per transform
+			{ 1, 14, 9 },		// 72 bits per transform
+			{ 1, 15, 8 },		// 72 bits per transform
+			{ 1, 16, 7 },		// 72 bits per transform
+			{ 1, 17, 6 },		// 72 bits per transform
+			{ 1, 18, 5 },		// 72 bits per transform
+			{ 1, 19, 4 },		// 72 bits per transform
+			{ 1, 20, 3 },		// 72 bits per transform
+			{ 1, 21, 2 },		// 72 bits per transform
+			{ 1, 22, 1 },		// 72 bits per transform
+			{ 1, 23, 0 },		// 72 bits per transform
+			{ 2, 0, 22 },		// 72 bits per transform
+			{ 2, 1, 21 },		// 72 bits per transform
+			{ 2, 2, 20 },		// 72 bits per transform
+			{ 2, 3, 19 },		// 72 bits per transform
+			{ 2, 4, 18 },		// 72 bits per transform
+			{ 2, 5, 17 },		// 72 bits per transform
+			{ 2, 6, 16 },		// 72 bits per transform
+			{ 2, 7, 15 },		// 72 bits per transform
+			{ 2, 8, 14 },		// 72 bits per transform
+			{ 2, 9, 13 },		// 72 bits per transform
+			{ 2, 10, 12 },		// 72 bits per transform
+			{ 2, 11, 11 },		// 72 bits per transform
+			{ 2, 12, 10 },		// 72 bits per transform
+			{ 2, 13, 9 },		// 72 bits per transform
+			{ 2, 14, 8 },		// 72 bits per transform
+			{ 2, 15, 7 },		// 72 bits per transform
+			{ 2, 16, 6 },		// 72 bits per transform
+			{ 2, 17, 5 },		// 72 bits per transform
+			{ 2, 18, 4 },		// 72 bits per transform
+			{ 2, 19, 3 },		// 72 bits per transform
+			{ 2, 20, 2 },		// 72 bits per transform
+			{ 2, 21, 1 },		// 72 bits per transform
+			{ 2, 22, 0 },		// 72 bits per transform
+			{ 3, 0, 21 },		// 72 bits per transform
+			{ 3, 1, 20 },		// 72 bits per transform
+			{ 3, 2, 19 },		// 72 bits per transform
+			{ 3, 3, 18 },		// 72 bits per transform
+			{ 3, 4, 17 },		// 72 bits per transform
+			{ 3, 5, 16 },		// 72 bits per transform
+			{ 3, 6, 15 },		// 72 bits per transform
+			{ 3, 7, 14 },		// 72 bits per transform
+			{ 3, 8, 13 },		// 72 bits per transform
+			{ 3, 9, 12 },		// 72 bits per transform
+			{ 3, 10, 11 },		// 72 bits per transform
+			{ 3, 11, 10 },		// 72 bits per transform
+			{ 3, 12, 9 },		// 72 bits per transform
+			{ 3, 13, 8 },		// 72 bits per transform
+			{ 3, 14, 7 },		// 72 bits per transform
+			{ 3, 15, 6 },		// 72 bits per transform
+			{ 3, 16, 5 },		// 72 bits per transform
+			{ 3, 17, 4 },		// 72 bits per transform
+			{ 3, 18, 3 },		// 72 bits per transform
+			{ 3, 19, 2 },		// 72 bits per transform
+			{ 3, 20, 1 },		// 72 bits per transform
+			{ 3, 21, 0 },		// 72 bits per transform
+			{ 4, 0, 20 },		// 72 bits per transform
+			{ 4, 1, 19 },		// 72 bits per transform
+			{ 4, 2, 18 },		// 72 bits per transform
+			{ 4, 3, 17 },		// 72 bits per transform
+			{ 4, 4, 16 },		// 72 bits per transform
+			{ 4, 5, 15 },		// 72 bits per transform
+			{ 4, 6, 14 },		// 72 bits per transform
+			{ 4, 7, 13 },		// 72 bits per transform
+			{ 4, 8, 12 },		// 72 bits per transform
+			{ 4, 9, 11 },		// 72 bits per transform
+			{ 4, 10, 10 },		// 72 bits per transform
+			{ 4, 11, 9 },		// 72 bits per transform
+			{ 4, 12, 8 },		// 72 bits per transform
+			{ 4, 13, 7 },		// 72 bits per transform
+			{ 4, 14, 6 },		// 72 bits per transform
+			{ 4, 15, 5 },		// 72 bits per transform
+			{ 4, 16, 4 },		// 72 bits per transform
+			{ 4, 17, 3 },		// 72 bits per transform
+			{ 4, 18, 2 },		// 72 bits per transform
+			{ 4, 19, 1 },		// 72 bits per transform
+			{ 4, 20, 0 },		// 72 bits per transform
+			{ 5, 0, 19 },		// 72 bits per transform
+			{ 5, 1, 18 },		// 72 bits per transform
+			{ 5, 2, 17 },		// 72 bits per transform
+			{ 5, 3, 16 },		// 72 bits per transform
+			{ 5, 4, 15 },		// 72 bits per transform
+			{ 5, 5, 14 },		// 72 bits per transform
+			{ 5, 6, 13 },		// 72 bits per transform
+			{ 5, 7, 12 },		// 72 bits per transform
+			{ 5, 8, 11 },		// 72 bits per transform
+			{ 5, 9, 10 },		// 72 bits per transform
+			{ 5, 10, 9 },		// 72 bits per transform
+			{ 5, 11, 8 },		// 72 bits per transform
+			{ 5, 12, 7 },		// 72 bits per transform
+			{ 5, 13, 6 },		// 72 bits per transform
+			{ 5, 14, 5 },		// 72 bits per transform
+			{ 5, 15, 4 },		// 72 bits per transform
+			{ 5, 16, 3 },		// 72 bits per transform
+			{ 5, 17, 2 },		// 72 bits per transform
+			{ 5, 18, 1 },		// 72 bits per transform
+			{ 5, 19, 0 },		// 72 bits per transform
+			{ 6, 0, 18 },		// 72 bits per transform
+			{ 6, 1, 17 },		// 72 bits per transform
+			{ 6, 2, 16 },		// 72 bits per transform
+			{ 6, 3, 15 },		// 72 bits per transform
+			{ 6, 4, 14 },		// 72 bits per transform
+			{ 6, 5, 13 },		// 72 bits per transform
+			{ 6, 6, 12 },		// 72 bits per transform
+			{ 6, 7, 11 },		// 72 bits per transform
+			{ 6, 8, 10 },		// 72 bits per transform
+			{ 6, 9, 9 },		// 72 bits per transform
+			{ 6, 10, 8 },		// 72 bits per transform
+			{ 6, 11, 7 },		// 72 bits per transform
+			{ 6, 12, 6 },		// 72 bits per transform
+			{ 6, 13, 5 },		// 72 bits per transform
+			{ 6, 14, 4 },		// 72 bits per transform
+			{ 6, 15, 3 },		// 72 bits per transform
+			{ 6, 16, 2 },		// 72 bits per transform
+			{ 6, 17, 1 },		// 72 bits per transform
+			{ 6, 18, 0 },		// 72 bits per transform
+			{ 7, 0, 17 },		// 72 bits per transform
+			{ 7, 1, 16 },		// 72 bits per transform
+			{ 7, 2, 15 },		// 72 bits per transform
+			{ 7, 3, 14 },		// 72 bits per transform
+			{ 7, 4, 13 },		// 72 bits per transform
+			{ 7, 5, 12 },		// 72 bits per transform
+			{ 7, 6, 11 },		// 72 bits per transform
+			{ 7, 7, 10 },		// 72 bits per transform
+			{ 7, 8, 9 },		// 72 bits per transform
+			{ 7, 9, 8 },		// 72 bits per transform
+			{ 7, 10, 7 },		// 72 bits per transform
+			{ 7, 11, 6 },		// 72 bits per transform
+			{ 7, 12, 5 },		// 72 bits per transform
+			{ 7, 13, 4 },		// 72 bits per transform
+			{ 7, 14, 3 },		// 72 bits per transform
+			{ 7, 15, 2 },		// 72 bits per transform
+			{ 7, 16, 1 },		// 72 bits per transform
+			{ 7, 17, 0 },		// 72 bits per transform
+			{ 8, 0, 16 },		// 72 bits per transform
+			{ 8, 1, 15 },		// 72 bits per transform
+			{ 8, 2, 14 },		// 72 bits per transform
+			{ 8, 3, 13 },		// 72 bits per transform
+			{ 8, 4, 12 },		// 72 bits per transform
+			{ 8, 5, 11 },		// 72 bits per transform
+			{ 8, 6, 10 },		// 72 bits per transform
+			{ 8, 7, 9 },		// 72 bits per transform
+			{ 8, 8, 8 },		// 72 bits per transform
+			{ 8, 9, 7 },		// 72 bits per transform
+			{ 8, 10, 6 },		// 72 bits per transform
+			{ 8, 11, 5 },		// 72 bits per transform
+			{ 8, 12, 4 },		// 72 bits per transform
+			{ 8, 13, 3 },		// 72 bits per transform
+			{ 8, 14, 2 },		// 72 bits per transform
+			{ 8, 15, 1 },		// 72 bits per transform
+			{ 8, 16, 0 },		// 72 bits per transform
+			{ 9, 0, 15 },		// 72 bits per transform
+			{ 9, 1, 14 },		// 72 bits per transform
+			{ 9, 2, 13 },		// 72 bits per transform
+			{ 9, 3, 12 },		// 72 bits per transform
+			{ 9, 4, 11 },		// 72 bits per transform
+			{ 9, 5, 10 },		// 72 bits per transform
+			{ 9, 6, 9 },		// 72 bits per transform
+			{ 9, 7, 8 },		// 72 bits per transform
+			{ 9, 8, 7 },		// 72 bits per transform
+			{ 9, 9, 6 },		// 72 bits per transform
+			{ 9, 10, 5 },		// 72 bits per transform
+			{ 9, 11, 4 },		// 72 bits per transform
+			{ 9, 12, 3 },		// 72 bits per transform
+			{ 9, 13, 2 },		// 72 bits per transform
+			{ 9, 14, 1 },		// 72 bits per transform
+			{ 9, 15, 0 },		// 72 bits per transform
+			{ 10, 0, 14 },		// 72 bits per transform
+			{ 10, 1, 13 },		// 72 bits per transform
+			{ 10, 2, 12 },		// 72 bits per transform
+			{ 10, 3, 11 },		// 72 bits per transform
+			{ 10, 4, 10 },		// 72 bits per transform
+			{ 10, 5, 9 },		// 72 bits per transform
+			{ 10, 6, 8 },		// 72 bits per transform
+			{ 10, 7, 7 },		// 72 bits per transform
+			{ 10, 8, 6 },		// 72 bits per transform
+			{ 10, 9, 5 },		// 72 bits per transform
+			{ 10, 10, 4 },		// 72 bits per transform
+			{ 10, 11, 3 },		// 72 bits per transform
+			{ 10, 12, 2 },		// 72 bits per transform
+			{ 10, 13, 1 },		// 72 bits per transform
+			{ 10, 14, 0 },		// 72 bits per transform
+			{ 11, 0, 13 },		// 72 bits per transform
+			{ 11, 1, 12 },		// 72 bits per transform
+			{ 11, 2, 11 },		// 72 bits per transform
+			{ 11, 3, 10 },		// 72 bits per transform
+			{ 11, 4, 9 },		// 72 bits per transform
+			{ 11, 5, 8 },		// 72 bits per transform
+			{ 11, 6, 7 },		// 72 bits per transform
+			{ 11, 7, 6 },		// 72 bits per transform
+			{ 11, 8, 5 },		// 72 bits per transform
+			{ 11, 9, 4 },		// 72 bits per transform
+			{ 11, 10, 3 },		// 72 bits per transform
+			{ 11, 11, 2 },		// 72 bits per transform
+			{ 11, 12, 1 },		// 72 bits per transform
+			{ 11, 13, 0 },		// 72 bits per transform
+			{ 12, 0, 12 },		// 72 bits per transform
+			{ 12, 1, 11 },		// 72 bits per transform
+			{ 12, 2, 10 },		// 72 bits per transform
+			{ 12, 3, 9 },		// 72 bits per transform
+			{ 12, 4, 8 },		// 72 bits per transform
+			{ 12, 5, 7 },		// 72 bits per transform
+			{ 12, 6, 6 },		// 72 bits per transform
+			{ 12, 7, 5 },		// 72 bits per transform
+			{ 12, 8, 4 },		// 72 bits per transform
+			{ 12, 9, 3 },		// 72 bits per transform
+			{ 12, 10, 2 },		// 72 bits per transform
+			{ 12, 11, 1 },		// 72 bits per transform
+			{ 12, 12, 0 },		// 72 bits per transform
+			{ 13, 0, 11 },		// 72 bits per transform
+			{ 13, 1, 10 },		// 72 bits per transform
+			{ 13, 2, 9 },		// 72 bits per transform
+			{ 13, 3, 8 },		// 72 bits per transform
+			{ 13, 4, 7 },		// 72 bits per transform
+			{ 13, 5, 6 },		// 72 bits per transform
+			{ 13, 6, 5 },		// 72 bits per transform
+			{ 13, 7, 4 },		// 72 bits per transform
+			{ 13, 8, 3 },		// 72 bits per transform
+			{ 13, 9, 2 },		// 72 bits per transform
+			{ 13, 10, 1 },		// 72 bits per transform
+			{ 13, 11, 0 },		// 72 bits per transform
+			{ 14, 0, 10 },		// 72 bits per transform
+			{ 14, 1, 9 },		// 72 bits per transform
+			{ 14, 2, 8 },		// 72 bits per transform
+			{ 14, 3, 7 },		// 72 bits per transform
+			{ 14, 4, 6 },		// 72 bits per transform
+			{ 14, 5, 5 },		// 72 bits per transform
+			{ 14, 6, 4 },		// 72 bits per transform
+			{ 14, 7, 3 },		// 72 bits per transform
+			{ 14, 8, 2 },		// 72 bits per transform
+			{ 14, 9, 1 },		// 72 bits per transform
+			{ 14, 10, 0 },		// 72 bits per transform
+			{ 15, 0, 9 },		// 72 bits per transform
+			{ 15, 1, 8 },		// 72 bits per transform
+			{ 15, 2, 7 },		// 72 bits per transform
+			{ 15, 3, 6 },		// 72 bits per transform
+			{ 15, 4, 5 },		// 72 bits per transform
+			{ 15, 5, 4 },		// 72 bits per transform
+			{ 15, 6, 3 },		// 72 bits per transform
+			{ 15, 7, 2 },		// 72 bits per transform
+			{ 15, 8, 1 },		// 72 bits per transform
+			{ 15, 9, 0 },		// 72 bits per transform
+			{ 16, 0, 8 },		// 72 bits per transform
+			{ 16, 1, 7 },		// 72 bits per transform
+			{ 16, 2, 6 },		// 72 bits per transform
+			{ 16, 3, 5 },		// 72 bits per transform
+			{ 16, 4, 4 },		// 72 bits per transform
+			{ 16, 5, 3 },		// 72 bits per transform
+			{ 16, 6, 2 },		// 72 bits per transform
+			{ 16, 7, 1 },		// 72 bits per transform
+			{ 16, 8, 0 },		// 72 bits per transform
+			{ 17, 0, 7 },		// 72 bits per transform
+			{ 17, 1, 6 },		// 72 bits per transform
+			{ 17, 2, 5 },		// 72 bits per transform
+			{ 17, 3, 4 },		// 72 bits per transform
+			{ 17, 4, 3 },		// 72 bits per transform
+			{ 17, 5, 2 },		// 72 bits per transform
+			{ 17, 6, 1 },		// 72 bits per transform
+			{ 17, 7, 0 },		// 72 bits per transform
+			{ 18, 0, 6 },		// 72 bits per transform
+			{ 18, 1, 5 },		// 72 bits per transform
+			{ 18, 2, 4 },		// 72 bits per transform
+			{ 18, 3, 3 },		// 72 bits per transform
+			{ 18, 4, 2 },		// 72 bits per transform
+			{ 18, 5, 1 },		// 72 bits per transform
+			{ 18, 6, 0 },		// 72 bits per transform
+			{ 19, 0, 5 },		// 72 bits per transform
+			{ 19, 1, 4 },		// 72 bits per transform
+			{ 19, 2, 3 },		// 72 bits per transform
+			{ 19, 3, 2 },		// 72 bits per transform
+			{ 19, 4, 1 },		// 72 bits per transform
+			{ 19, 5, 0 },		// 72 bits per transform
+			{ 20, 0, 4 },		// 72 bits per transform
+			{ 20, 1, 3 },		// 72 bits per transform
+			{ 20, 2, 2 },		// 72 bits per transform
+			{ 20, 3, 1 },		// 72 bits per transform
+			{ 20, 4, 0 },		// 72 bits per transform
+			{ 21, 0, 3 },		// 72 bits per transform
+			{ 21, 1, 2 },		// 72 bits per transform
+			{ 21, 2, 1 },		// 72 bits per transform
+			{ 21, 3, 0 },		// 72 bits per transform
+			{ 22, 0, 2 },		// 72 bits per transform
+			{ 22, 1, 1 },		// 72 bits per transform
+			{ 22, 2, 0 },		// 72 bits per transform
+			{ 23, 0, 1 },		// 72 bits per transform
+			{ 23, 1, 0 },		// 72 bits per transform
+			{ 0, 2, 23 },		// 75 bits per transform
+			{ 0, 3, 22 },		// 75 bits per transform
+			{ 0, 4, 21 },		// 75 bits per transform
+			{ 0, 5, 20 },		// 75 bits per transform
+			{ 0, 6, 19 },		// 75 bits per transform
+			{ 0, 7, 18 },		// 75 bits per transform
+			{ 0, 8, 17 },		// 75 bits per transform
+			{ 0, 9, 16 },		// 75 bits per transform
+			{ 0, 10, 15 },		// 75 bits per transform
+			{ 0, 11, 14 },		// 75 bits per transform
+			{ 0, 12, 13 },		// 75 bits per transform
+			{ 0, 13, 12 },		// 75 bits per transform
+			{ 0, 14, 11 },		// 75 bits per transform
+			{ 0, 15, 10 },		// 75 bits per transform
+			{ 0, 16, 9 },		// 75 bits per transform
+			{ 0, 17, 8 },		// 75 bits per transform
+			{ 0, 18, 7 },		// 75 bits per transform
+			{ 0, 19, 6 },		// 75 bits per transform
+			{ 0, 20, 5 },		// 75 bits per transform
+			{ 0, 21, 4 },		// 75 bits per transform
+			{ 0, 22, 3 },		// 75 bits per transform
+			{ 0, 23, 2 },		// 75 bits per transform
+			{ 1, 1, 23 },		// 75 bits per transform
+			{ 1, 2, 22 },		// 75 bits per transform
+			{ 1, 3, 21 },		// 75 bits per transform
+			{ 1, 4, 20 },		// 75 bits per transform
+			{ 1, 5, 19 },		// 75 bits per transform
+			{ 1, 6, 18 },		// 75 bits per transform
+			{ 1, 7, 17 },		// 75 bits per transform
+			{ 1, 8, 16 },		// 75 bits per transform
+			{ 1, 9, 15 },		// 75 bits per transform
+			{ 1, 10, 14 },		// 75 bits per transform
+			{ 1, 11, 13 },		// 75 bits per transform
+			{ 1, 12, 12 },		// 75 bits per transform
+			{ 1, 13, 11 },		// 75 bits per transform
+			{ 1, 14, 10 },		// 75 bits per transform
+			{ 1, 15, 9 },		// 75 bits per transform
+			{ 1, 16, 8 },		// 75 bits per transform
+			{ 1, 17, 7 },		// 75 bits per transform
+			{ 1, 18, 6 },		// 75 bits per transform
+			{ 1, 19, 5 },		// 75 bits per transform
+			{ 1, 20, 4 },		// 75 bits per transform
+			{ 1, 21, 3 },		// 75 bits per transform
+			{ 1, 22, 2 },		// 75 bits per transform
+			{ 1, 23, 1 },		// 75 bits per transform
+			{ 2, 0, 23 },		// 75 bits per transform
+			{ 2, 1, 22 },		// 75 bits per transform
+			{ 2, 2, 21 },		// 75 bits per transform
+			{ 2, 3, 20 },		// 75 bits per transform
+			{ 2, 4, 19 },		// 75 bits per transform
+			{ 2, 5, 18 },		// 75 bits per transform
+			{ 2, 6, 17 },		// 75 bits per transform
+			{ 2, 7, 16 },		// 75 bits per transform
+			{ 2, 8, 15 },		// 75 bits per transform
+			{ 2, 9, 14 },		// 75 bits per transform
+			{ 2, 10, 13 },		// 75 bits per transform
+			{ 2, 11, 12 },		// 75 bits per transform
+			{ 2, 12, 11 },		// 75 bits per transform
+			{ 2, 13, 10 },		// 75 bits per transform
+			{ 2, 14, 9 },		// 75 bits per transform
+			{ 2, 15, 8 },		// 75 bits per transform
+			{ 2, 16, 7 },		// 75 bits per transform
+			{ 2, 17, 6 },		// 75 bits per transform
+			{ 2, 18, 5 },		// 75 bits per transform
+			{ 2, 19, 4 },		// 75 bits per transform
+			{ 2, 20, 3 },		// 75 bits per transform
+			{ 2, 21, 2 },		// 75 bits per transform
+			{ 2, 22, 1 },		// 75 bits per transform
+			{ 2, 23, 0 },		// 75 bits per transform
+			{ 3, 0, 22 },		// 75 bits per transform
+			{ 3, 1, 21 },		// 75 bits per transform
+			{ 3, 2, 20 },		// 75 bits per transform
+			{ 3, 3, 19 },		// 75 bits per transform
+			{ 3, 4, 18 },		// 75 bits per transform
+			{ 3, 5, 17 },		// 75 bits per transform
+			{ 3, 6, 16 },		// 75 bits per transform
+			{ 3, 7, 15 },		// 75 bits per transform
+			{ 3, 8, 14 },		// 75 bits per transform
+			{ 3, 9, 13 },		// 75 bits per transform
+			{ 3, 10, 12 },		// 75 bits per transform
+			{ 3, 11, 11 },		// 75 bits per transform
+			{ 3, 12, 10 },		// 75 bits per transform
+			{ 3, 13, 9 },		// 75 bits per transform
+			{ 3, 14, 8 },		// 75 bits per transform
+			{ 3, 15, 7 },		// 75 bits per transform
+			{ 3, 16, 6 },		// 75 bits per transform
+			{ 3, 17, 5 },		// 75 bits per transform
+			{ 3, 18, 4 },		// 75 bits per transform
+			{ 3, 19, 3 },		// 75 bits per transform
+			{ 3, 20, 2 },		// 75 bits per transform
+			{ 3, 21, 1 },		// 75 bits per transform
+			{ 3, 22, 0 },		// 75 bits per transform
+			{ 4, 0, 21 },		// 75 bits per transform
+			{ 4, 1, 20 },		// 75 bits per transform
+			{ 4, 2, 19 },		// 75 bits per transform
+			{ 4, 3, 18 },		// 75 bits per transform
+			{ 4, 4, 17 },		// 75 bits per transform
+			{ 4, 5, 16 },		// 75 bits per transform
+			{ 4, 6, 15 },		// 75 bits per transform
+			{ 4, 7, 14 },		// 75 bits per transform
+			{ 4, 8, 13 },		// 75 bits per transform
+			{ 4, 9, 12 },		// 75 bits per transform
+			{ 4, 10, 11 },		// 75 bits per transform
+			{ 4, 11, 10 },		// 75 bits per transform
+			{ 4, 12, 9 },		// 75 bits per transform
+			{ 4, 13, 8 },		// 75 bits per transform
+			{ 4, 14, 7 },		// 75 bits per transform
+			{ 4, 15, 6 },		// 75 bits per transform
+			{ 4, 16, 5 },		// 75 bits per transform
+			{ 4, 17, 4 },		// 75 bits per transform
+			{ 4, 18, 3 },		// 75 bits per transform
+			{ 4, 19, 2 },		// 75 bits per transform
+			{ 4, 20, 1 },		// 75 bits per transform
+			{ 4, 21, 0 },		// 75 bits per transform
+			{ 5, 0, 20 },		// 75 bits per transform
+			{ 5, 1, 19 },		// 75 bits per transform
+			{ 5, 2, 18 },		// 75 bits per transform
+			{ 5, 3, 17 },		// 75 bits per transform
+			{ 5, 4, 16 },		// 75 bits per transform
+			{ 5, 5, 15 },		// 75 bits per transform
+			{ 5, 6, 14 },		// 75 bits per transform
+			{ 5, 7, 13 },		// 75 bits per transform
+			{ 5, 8, 12 },		// 75 bits per transform
+			{ 5, 9, 11 },		// 75 bits per transform
+			{ 5, 10, 10 },		// 75 bits per transform
+			{ 5, 11, 9 },		// 75 bits per transform
+			{ 5, 12, 8 },		// 75 bits per transform
+			{ 5, 13, 7 },		// 75 bits per transform
+			{ 5, 14, 6 },		// 75 bits per transform
+			{ 5, 15, 5 },		// 75 bits per transform
+			{ 5, 16, 4 },		// 75 bits per transform
+			{ 5, 17, 3 },		// 75 bits per transform
+			{ 5, 18, 2 },		// 75 bits per transform
+			{ 5, 19, 1 },		// 75 bits per transform
+			{ 5, 20, 0 },		// 75 bits per transform
+			{ 6, 0, 19 },		// 75 bits per transform
+			{ 6, 1, 18 },		// 75 bits per transform
+			{ 6, 2, 17 },		// 75 bits per transform
+			{ 6, 3, 16 },		// 75 bits per transform
+			{ 6, 4, 15 },		// 75 bits per transform
+			{ 6, 5, 14 },		// 75 bits per transform
+			{ 6, 6, 13 },		// 75 bits per transform
+			{ 6, 7, 12 },		// 75 bits per transform
+			{ 6, 8, 11 },		// 75 bits per transform
+			{ 6, 9, 10 },		// 75 bits per transform
+			{ 6, 10, 9 },		// 75 bits per transform
+			{ 6, 11, 8 },		// 75 bits per transform
+			{ 6, 12, 7 },		// 75 bits per transform
+			{ 6, 13, 6 },		// 75 bits per transform
+			{ 6, 14, 5 },		// 75 bits per transform
+			{ 6, 15, 4 },		// 75 bits per transform
+			{ 6, 16, 3 },		// 75 bits per transform
+			{ 6, 17, 2 },		// 75 bits per transform
+			{ 6, 18, 1 },		// 75 bits per transform
+			{ 6, 19, 0 },		// 75 bits per transform
+			{ 7, 0, 18 },		// 75 bits per transform
+			{ 7, 1, 17 },		// 75 bits per transform
+			{ 7, 2, 16 },		// 75 bits per transform
+			{ 7, 3, 15 },		// 75 bits per transform
+			{ 7, 4, 14 },		// 75 bits per transform
+			{ 7, 5, 13 },		// 75 bits per transform
+			{ 7, 6, 12 },		// 75 bits per transform
+			{ 7, 7, 11 },		// 75 bits per transform
+			{ 7, 8, 10 },		// 75 bits per transform
+			{ 7, 9, 9 },		// 75 bits per transform
+			{ 7, 10, 8 },		// 75 bits per transform
+			{ 7, 11, 7 },		// 75 bits per transform
+			{ 7, 12, 6 },		// 75 bits per transform
+			{ 7, 13, 5 },		// 75 bits per transform
+			{ 7, 14, 4 },		// 75 bits per transform
+			{ 7, 15, 3 },		// 75 bits per transform
+			{ 7, 16, 2 },		// 75 bits per transform
+			{ 7, 17, 1 },		// 75 bits per transform
+			{ 7, 18, 0 },		// 75 bits per transform
+			{ 8, 0, 17 },		// 75 bits per transform
+			{ 8, 1, 16 },		// 75 bits per transform
+			{ 8, 2, 15 },		// 75 bits per transform
+			{ 8, 3, 14 },		// 75 bits per transform
+			{ 8, 4, 13 },		// 75 bits per transform
+			{ 8, 5, 12 },		// 75 bits per transform
+			{ 8, 6, 11 },		// 75 bits per transform
+			{ 8, 7, 10 },		// 75 bits per transform
+			{ 8, 8, 9 },		// 75 bits per transform
+			{ 8, 9, 8 },		// 75 bits per transform
+			{ 8, 10, 7 },		// 75 bits per transform
+			{ 8, 11, 6 },		// 75 bits per transform
+			{ 8, 12, 5 },		// 75 bits per transform
+			{ 8, 13, 4 },		// 75 bits per transform
+			{ 8, 14, 3 },		// 75 bits per transform
+			{ 8, 15, 2 },		// 75 bits per transform
+			{ 8, 16, 1 },		// 75 bits per transform
+			{ 8, 17, 0 },		// 75 bits per transform
+			{ 9, 0, 16 },		// 75 bits per transform
+			{ 9, 1, 15 },		// 75 bits per transform
+			{ 9, 2, 14 },		// 75 bits per transform
+			{ 9, 3, 13 },		// 75 bits per transform
+			{ 9, 4, 12 },		// 75 bits per transform
+			{ 9, 5, 11 },		// 75 bits per transform
+			{ 9, 6, 10 },		// 75 bits per transform
+			{ 9, 7, 9 },		// 75 bits per transform
+			{ 9, 8, 8 },		// 75 bits per transform
+			{ 9, 9, 7 },		// 75 bits per transform
+			{ 9, 10, 6 },		// 75 bits per transform
+			{ 9, 11, 5 },		// 75 bits per transform
+			{ 9, 12, 4 },		// 75 bits per transform
+			{ 9, 13, 3 },		// 75 bits per transform
+			{ 9, 14, 2 },		// 75 bits per transform
+			{ 9, 15, 1 },		// 75 bits per transform
+			{ 9, 16, 0 },		// 75 bits per transform
+			{ 10, 0, 15 },		// 75 bits per transform
+			{ 10, 1, 14 },		// 75 bits per transform
+			{ 10, 2, 13 },		// 75 bits per transform
+			{ 10, 3, 12 },		// 75 bits per transform
+			{ 10, 4, 11 },		// 75 bits per transform
+			{ 10, 5, 10 },		// 75 bits per transform
+			{ 10, 6, 9 },		// 75 bits per transform
+			{ 10, 7, 8 },		// 75 bits per transform
+			{ 10, 8, 7 },		// 75 bits per transform
+			{ 10, 9, 6 },		// 75 bits per transform
+			{ 10, 10, 5 },		// 75 bits per transform
+			{ 10, 11, 4 },		// 75 bits per transform
+			{ 10, 12, 3 },		// 75 bits per transform
+			{ 10, 13, 2 },		// 75 bits per transform
+			{ 10, 14, 1 },		// 75 bits per transform
+			{ 10, 15, 0 },		// 75 bits per transform
+			{ 11, 0, 14 },		// 75 bits per transform
+			{ 11, 1, 13 },		// 75 bits per transform
+			{ 11, 2, 12 },		// 75 bits per transform
+			{ 11, 3, 11 },		// 75 bits per transform
+			{ 11, 4, 10 },		// 75 bits per transform
+			{ 11, 5, 9 },		// 75 bits per transform
+			{ 11, 6, 8 },		// 75 bits per transform
+			{ 11, 7, 7 },		// 75 bits per transform
+			{ 11, 8, 6 },		// 75 bits per transform
+			{ 11, 9, 5 },		// 75 bits per transform
+			{ 11, 10, 4 },		// 75 bits per transform
+			{ 11, 11, 3 },		// 75 bits per transform
+			{ 11, 12, 2 },		// 75 bits per transform
+			{ 11, 13, 1 },		// 75 bits per transform
+			{ 11, 14, 0 },		// 75 bits per transform
+			{ 12, 0, 13 },		// 75 bits per transform
+			{ 12, 1, 12 },		// 75 bits per transform
+			{ 12, 2, 11 },		// 75 bits per transform
+			{ 12, 3, 10 },		// 75 bits per transform
+			{ 12, 4, 9 },		// 75 bits per transform
+			{ 12, 5, 8 },		// 75 bits per transform
+			{ 12, 6, 7 },		// 75 bits per transform
+			{ 12, 7, 6 },		// 75 bits per transform
+			{ 12, 8, 5 },		// 75 bits per transform
+			{ 12, 9, 4 },		// 75 bits per transform
+			{ 12, 10, 3 },		// 75 bits per transform
+			{ 12, 11, 2 },		// 75 bits per transform
+			{ 12, 12, 1 },		// 75 bits per transform
+			{ 12, 13, 0 },		// 75 bits per transform
+			{ 13, 0, 12 },		// 75 bits per transform
+			{ 13, 1, 11 },		// 75 bits per transform
+			{ 13, 2, 10 },		// 75 bits per transform
+			{ 13, 3, 9 },		// 75 bits per transform
+			{ 13, 4, 8 },		// 75 bits per transform
+			{ 13, 5, 7 },		// 75 bits per transform
+			{ 13, 6, 6 },		// 75 bits per transform
+			{ 13, 7, 5 },		// 75 bits per transform
+			{ 13, 8, 4 },		// 75 bits per transform
+			{ 13, 9, 3 },		// 75 bits per transform
+			{ 13, 10, 2 },		// 75 bits per transform
+			{ 13, 11, 1 },		// 75 bits per transform
+			{ 13, 12, 0 },		// 75 bits per transform
+			{ 14, 0, 11 },		// 75 bits per transform
+			{ 14, 1, 10 },		// 75 bits per transform
+			{ 14, 2, 9 },		// 75 bits per transform
+			{ 14, 3, 8 },		// 75 bits per transform
+			{ 14, 4, 7 },		// 75 bits per transform
+			{ 14, 5, 6 },		// 75 bits per transform
+			{ 14, 6, 5 },		// 75 bits per transform
+			{ 14, 7, 4 },		// 75 bits per transform
+			{ 14, 8, 3 },		// 75 bits per transform
+			{ 14, 9, 2 },		// 75 bits per transform
+			{ 14, 10, 1 },		// 75 bits per transform
+			{ 14, 11, 0 },		// 75 bits per transform
+			{ 15, 0, 10 },		// 75 bits per transform
+			{ 15, 1, 9 },		// 75 bits per transform
+			{ 15, 2, 8 },		// 75 bits per transform
+			{ 15, 3, 7 },		// 75 bits per transform
+			{ 15, 4, 6 },		// 75 bits per transform
+			{ 15, 5, 5 },		// 75 bits per transform
+			{ 15, 6, 4 },		// 75 bits per transform
+			{ 15, 7, 3 },		// 75 bits per transform
+			{ 15, 8, 2 },		// 75 bits per transform
+			{ 15, 9, 1 },		// 75 bits per transform
+			{ 15, 10, 0 },		// 75 bits per transform
+			{ 16, 0, 9 },		// 75 bits per transform
+			{ 16, 1, 8 },		// 75 bits per transform
+			{ 16, 2, 7 },		// 75 bits per transform
+			{ 16, 3, 6 },		// 75 bits per transform
+			{ 16, 4, 5 },		// 75 bits per transform
+			{ 16, 5, 4 },		// 75 bits per transform
+			{ 16, 6, 3 },		// 75 bits per transform
+			{ 16, 7, 2 },		// 75 bits per transform
+			{ 16, 8, 1 },		// 75 bits per transform
+			{ 16, 9, 0 },		// 75 bits per transform
+			{ 17, 0, 8 },		// 75 bits per transform
+			{ 17, 1, 7 },		// 75 bits per transform
+			{ 17, 2, 6 },		// 75 bits per transform
+			{ 17, 3, 5 },		// 75 bits per transform
+			{ 17, 4, 4 },		// 75 bits per transform
+			{ 17, 5, 3 },		// 75 bits per transform
+			{ 17, 6, 2 },		// 75 bits per transform
+			{ 17, 7, 1 },		// 75 bits per transform
+			{ 17, 8, 0 },		// 75 bits per transform
+			{ 18, 0, 7 },		// 75 bits per transform
+			{ 18, 1, 6 },		// 75 bits per transform
+			{ 18, 2, 5 },		// 75 bits per transform
+			{ 18, 3, 4 },		// 75 bits per transform
+			{ 18, 4, 3 },		// 75 bits per transform
+			{ 18, 5, 2 },		// 75 bits per transform
+			{ 18, 6, 1 },		// 75 bits per transform
+			{ 18, 7, 0 },		// 75 bits per transform
+			{ 19, 0, 6 },		// 75 bits per transform
+			{ 19, 1, 5 },		// 75 bits per transform
+			{ 19, 2, 4 },		// 75 bits per transform
+			{ 19, 3, 3 },		// 75 bits per transform
+			{ 19, 4, 2 },		// 75 bits per transform
+			{ 19, 5, 1 },		// 75 bits per transform
+			{ 19, 6, 0 },		// 75 bits per transform
+			{ 20, 0, 5 },		// 75 bits per transform
+			{ 20, 1, 4 },		// 75 bits per transform
+			{ 20, 2, 3 },		// 75 bits per transform
+			{ 20, 3, 2 },		// 75 bits per transform
+			{ 20, 4, 1 },		// 75 bits per transform
+			{ 20, 5, 0 },		// 75 bits per transform
+			{ 21, 0, 4 },		// 75 bits per transform
+			{ 21, 1, 3 },		// 75 bits per transform
+			{ 21, 2, 2 },		// 75 bits per transform
+			{ 21, 3, 1 },		// 75 bits per transform
+			{ 21, 4, 0 },		// 75 bits per transform
+			{ 22, 0, 3 },		// 75 bits per transform
+			{ 22, 1, 2 },		// 75 bits per transform
+			{ 22, 2, 1 },		// 75 bits per transform
+			{ 22, 3, 0 },		// 75 bits per transform
+			{ 23, 0, 2 },		// 75 bits per transform
+			{ 23, 1, 1 },		// 75 bits per transform
+			{ 23, 2, 0 },		// 75 bits per transform
+			{ 0, 3, 23 },		// 78 bits per transform
+			{ 0, 4, 22 },		// 78 bits per transform
+			{ 0, 5, 21 },		// 78 bits per transform
+			{ 0, 6, 20 },		// 78 bits per transform
+			{ 0, 7, 19 },		// 78 bits per transform
+			{ 0, 8, 18 },		// 78 bits per transform
+			{ 0, 9, 17 },		// 78 bits per transform
+			{ 0, 10, 16 },		// 78 bits per transform
+			{ 0, 11, 15 },		// 78 bits per transform
+			{ 0, 12, 14 },		// 78 bits per transform
+			{ 0, 13, 13 },		// 78 bits per transform
+			{ 0, 14, 12 },		// 78 bits per transform
+			{ 0, 15, 11 },		// 78 bits per transform
+			{ 0, 16, 10 },		// 78 bits per transform
+			{ 0, 17, 9 },		// 78 bits per transform
+			{ 0, 18, 8 },		// 78 bits per transform
+			{ 0, 19, 7 },		// 78 bits per transform
+			{ 0, 20, 6 },		// 78 bits per transform
+			{ 0, 21, 5 },		// 78 bits per transform
+			{ 0, 22, 4 },		// 78 bits per transform
+			{ 0, 23, 3 },		// 78 bits per transform
+			{ 1, 2, 23 },		// 78 bits per transform
+			{ 1, 3, 22 },		// 78 bits per transform
+			{ 1, 4, 21 },		// 78 bits per transform
+			{ 1, 5, 20 },		// 78 bits per transform
+			{ 1, 6, 19 },		// 78 bits per transform
+			{ 1, 7, 18 },		// 78 bits per transform
+			{ 1, 8, 17 },		// 78 bits per transform
+			{ 1, 9, 16 },		// 78 bits per transform
+			{ 1, 10, 15 },		// 78 bits per transform
+			{ 1, 11, 14 },		// 78 bits per transform
+			{ 1, 12, 13 },		// 78 bits per transform
+			{ 1, 13, 12 },		// 78 bits per transform
+			{ 1, 14, 11 },		// 78 bits per transform
+			{ 1, 15, 10 },		// 78 bits per transform
+			{ 1, 16, 9 },		// 78 bits per transform
+			{ 1, 17, 8 },		// 78 bits per transform
+			{ 1, 18, 7 },		// 78 bits per transform
+			{ 1, 19, 6 },		// 78 bits per transform
+			{ 1, 20, 5 },		// 78 bits per transform
+			{ 1, 21, 4 },		// 78 bits per transform
+			{ 1, 22, 3 },		// 78 bits per transform
+			{ 1, 23, 2 },		// 78 bits per transform
+			{ 2, 1, 23 },		// 78 bits per transform
+			{ 2, 2, 22 },		// 78 bits per transform
+			{ 2, 3, 21 },		// 78 bits per transform
+			{ 2, 4, 20 },		// 78 bits per transform
+			{ 2, 5, 19 },		// 78 bits per transform
+			{ 2, 6, 18 },		// 78 bits per transform
+			{ 2, 7, 17 },		// 78 bits per transform
+			{ 2, 8, 16 },		// 78 bits per transform
+			{ 2, 9, 15 },		// 78 bits per transform
+			{ 2, 10, 14 },		// 78 bits per transform
+			{ 2, 11, 13 },		// 78 bits per transform
+			{ 2, 12, 12 },		// 78 bits per transform
+			{ 2, 13, 11 },		// 78 bits per transform
+			{ 2, 14, 10 },		// 78 bits per transform
+			{ 2, 15, 9 },		// 78 bits per transform
+			{ 2, 16, 8 },		// 78 bits per transform
+			{ 2, 17, 7 },		// 78 bits per transform
+			{ 2, 18, 6 },		// 78 bits per transform
+			{ 2, 19, 5 },		// 78 bits per transform
+			{ 2, 20, 4 },		// 78 bits per transform
+			{ 2, 21, 3 },		// 78 bits per transform
+			{ 2, 22, 2 },		// 78 bits per transform
+			{ 2, 23, 1 },		// 78 bits per transform
+			{ 3, 0, 23 },		// 78 bits per transform
+			{ 3, 1, 22 },		// 78 bits per transform
+			{ 3, 2, 21 },		// 78 bits per transform
+			{ 3, 3, 20 },		// 78 bits per transform
+			{ 3, 4, 19 },		// 78 bits per transform
+			{ 3, 5, 18 },		// 78 bits per transform
+			{ 3, 6, 17 },		// 78 bits per transform
+			{ 3, 7, 16 },		// 78 bits per transform
+			{ 3, 8, 15 },		// 78 bits per transform
+			{ 3, 9, 14 },		// 78 bits per transform
+			{ 3, 10, 13 },		// 78 bits per transform
+			{ 3, 11, 12 },		// 78 bits per transform
+			{ 3, 12, 11 },		// 78 bits per transform
+			{ 3, 13, 10 },		// 78 bits per transform
+			{ 3, 14, 9 },		// 78 bits per transform
+			{ 3, 15, 8 },		// 78 bits per transform
+			{ 3, 16, 7 },		// 78 bits per transform
+			{ 3, 17, 6 },		// 78 bits per transform
+			{ 3, 18, 5 },		// 78 bits per transform
+			{ 3, 19, 4 },		// 78 bits per transform
+			{ 3, 20, 3 },		// 78 bits per transform
+			{ 3, 21, 2 },		// 78 bits per transform
+			{ 3, 22, 1 },		// 78 bits per transform
+			{ 3, 23, 0 },		// 78 bits per transform
+			{ 4, 0, 22 },		// 78 bits per transform
+			{ 4, 1, 21 },		// 78 bits per transform
+			{ 4, 2, 20 },		// 78 bits per transform
+			{ 4, 3, 19 },		// 78 bits per transform
+			{ 4, 4, 18 },		// 78 bits per transform
+			{ 4, 5, 17 },		// 78 bits per transform
+			{ 4, 6, 16 },		// 78 bits per transform
+			{ 4, 7, 15 },		// 78 bits per transform
+			{ 4, 8, 14 },		// 78 bits per transform
+			{ 4, 9, 13 },		// 78 bits per transform
+			{ 4, 10, 12 },		// 78 bits per transform
+			{ 4, 11, 11 },		// 78 bits per transform
+			{ 4, 12, 10 },		// 78 bits per transform
+			{ 4, 13, 9 },		// 78 bits per transform
+			{ 4, 14, 8 },		// 78 bits per transform
+			{ 4, 15, 7 },		// 78 bits per transform
+			{ 4, 16, 6 },		// 78 bits per transform
+			{ 4, 17, 5 },		// 78 bits per transform
+			{ 4, 18, 4 },		// 78 bits per transform
+			{ 4, 19, 3 },		// 78 bits per transform
+			{ 4, 20, 2 },		// 78 bits per transform
+			{ 4, 21, 1 },		// 78 bits per transform
+			{ 4, 22, 0 },		// 78 bits per transform
+			{ 5, 0, 21 },		// 78 bits per transform
+			{ 5, 1, 20 },		// 78 bits per transform
+			{ 5, 2, 19 },		// 78 bits per transform
+			{ 5, 3, 18 },		// 78 bits per transform
+			{ 5, 4, 17 },		// 78 bits per transform
+			{ 5, 5, 16 },		// 78 bits per transform
+			{ 5, 6, 15 },		// 78 bits per transform
+			{ 5, 7, 14 },		// 78 bits per transform
+			{ 5, 8, 13 },		// 78 bits per transform
+			{ 5, 9, 12 },		// 78 bits per transform
+			{ 5, 10, 11 },		// 78 bits per transform
+			{ 5, 11, 10 },		// 78 bits per transform
+			{ 5, 12, 9 },		// 78 bits per transform
+			{ 5, 13, 8 },		// 78 bits per transform
+			{ 5, 14, 7 },		// 78 bits per transform
+			{ 5, 15, 6 },		// 78 bits per transform
+			{ 5, 16, 5 },		// 78 bits per transform
+			{ 5, 17, 4 },		// 78 bits per transform
+			{ 5, 18, 3 },		// 78 bits per transform
+			{ 5, 19, 2 },		// 78 bits per transform
+			{ 5, 20, 1 },		// 78 bits per transform
+			{ 5, 21, 0 },		// 78 bits per transform
+			{ 6, 0, 20 },		// 78 bits per transform
+			{ 6, 1, 19 },		// 78 bits per transform
+			{ 6, 2, 18 },		// 78 bits per transform
+			{ 6, 3, 17 },		// 78 bits per transform
+			{ 6, 4, 16 },		// 78 bits per transform
+			{ 6, 5, 15 },		// 78 bits per transform
+			{ 6, 6, 14 },		// 78 bits per transform
+			{ 6, 7, 13 },		// 78 bits per transform
+			{ 6, 8, 12 },		// 78 bits per transform
+			{ 6, 9, 11 },		// 78 bits per transform
+			{ 6, 10, 10 },		// 78 bits per transform
+			{ 6, 11, 9 },		// 78 bits per transform
+			{ 6, 12, 8 },		// 78 bits per transform
+			{ 6, 13, 7 },		// 78 bits per transform
+			{ 6, 14, 6 },		// 78 bits per transform
+			{ 6, 15, 5 },		// 78 bits per transform
+			{ 6, 16, 4 },		// 78 bits per transform
+			{ 6, 17, 3 },		// 78 bits per transform
+			{ 6, 18, 2 },		// 78 bits per transform
+			{ 6, 19, 1 },		// 78 bits per transform
+			{ 6, 20, 0 },		// 78 bits per transform
+			{ 7, 0, 19 },		// 78 bits per transform
+			{ 7, 1, 18 },		// 78 bits per transform
+			{ 7, 2, 17 },		// 78 bits per transform
+			{ 7, 3, 16 },		// 78 bits per transform
+			{ 7, 4, 15 },		// 78 bits per transform
+			{ 7, 5, 14 },		// 78 bits per transform
+			{ 7, 6, 13 },		// 78 bits per transform
+			{ 7, 7, 12 },		// 78 bits per transform
+			{ 7, 8, 11 },		// 78 bits per transform
+			{ 7, 9, 10 },		// 78 bits per transform
+			{ 7, 10, 9 },		// 78 bits per transform
+			{ 7, 11, 8 },		// 78 bits per transform
+			{ 7, 12, 7 },		// 78 bits per transform
+			{ 7, 13, 6 },		// 78 bits per transform
+			{ 7, 14, 5 },		// 78 bits per transform
+			{ 7, 15, 4 },		// 78 bits per transform
+			{ 7, 16, 3 },		// 78 bits per transform
+			{ 7, 17, 2 },		// 78 bits per transform
+			{ 7, 18, 1 },		// 78 bits per transform
+			{ 7, 19, 0 },		// 78 bits per transform
+			{ 8, 0, 18 },		// 78 bits per transform
+			{ 8, 1, 17 },		// 78 bits per transform
+			{ 8, 2, 16 },		// 78 bits per transform
+			{ 8, 3, 15 },		// 78 bits per transform
+			{ 8, 4, 14 },		// 78 bits per transform
+			{ 8, 5, 13 },		// 78 bits per transform
+			{ 8, 6, 12 },		// 78 bits per transform
+			{ 8, 7, 11 },		// 78 bits per transform
+			{ 8, 8, 10 },		// 78 bits per transform
+			{ 8, 9, 9 },		// 78 bits per transform
+			{ 8, 10, 8 },		// 78 bits per transform
+			{ 8, 11, 7 },		// 78 bits per transform
+			{ 8, 12, 6 },		// 78 bits per transform
+			{ 8, 13, 5 },		// 78 bits per transform
+			{ 8, 14, 4 },		// 78 bits per transform
+			{ 8, 15, 3 },		// 78 bits per transform
+			{ 8, 16, 2 },		// 78 bits per transform
+			{ 8, 17, 1 },		// 78 bits per transform
+			{ 8, 18, 0 },		// 78 bits per transform
+			{ 9, 0, 17 },		// 78 bits per transform
+			{ 9, 1, 16 },		// 78 bits per transform
+			{ 9, 2, 15 },		// 78 bits per transform
+			{ 9, 3, 14 },		// 78 bits per transform
+			{ 9, 4, 13 },		// 78 bits per transform
+			{ 9, 5, 12 },		// 78 bits per transform
+			{ 9, 6, 11 },		// 78 bits per transform
+			{ 9, 7, 10 },		// 78 bits per transform
+			{ 9, 8, 9 },		// 78 bits per transform
+			{ 9, 9, 8 },		// 78 bits per transform
+			{ 9, 10, 7 },		// 78 bits per transform
+			{ 9, 11, 6 },		// 78 bits per transform
+			{ 9, 12, 5 },		// 78 bits per transform
+			{ 9, 13, 4 },		// 78 bits per transform
+			{ 9, 14, 3 },		// 78 bits per transform
+			{ 9, 15, 2 },		// 78 bits per transform
+			{ 9, 16, 1 },		// 78 bits per transform
+			{ 9, 17, 0 },		// 78 bits per transform
+			{ 10, 0, 16 },		// 78 bits per transform
+			{ 10, 1, 15 },		// 78 bits per transform
+			{ 10, 2, 14 },		// 78 bits per transform
+			{ 10, 3, 13 },		// 78 bits per transform
+			{ 10, 4, 12 },		// 78 bits per transform
+			{ 10, 5, 11 },		// 78 bits per transform
+			{ 10, 6, 10 },		// 78 bits per transform
+			{ 10, 7, 9 },		// 78 bits per transform
+			{ 10, 8, 8 },		// 78 bits per transform
+			{ 10, 9, 7 },		// 78 bits per transform
+			{ 10, 10, 6 },		// 78 bits per transform
+			{ 10, 11, 5 },		// 78 bits per transform
+			{ 10, 12, 4 },		// 78 bits per transform
+			{ 10, 13, 3 },		// 78 bits per transform
+			{ 10, 14, 2 },		// 78 bits per transform
+			{ 10, 15, 1 },		// 78 bits per transform
+			{ 10, 16, 0 },		// 78 bits per transform
+			{ 11, 0, 15 },		// 78 bits per transform
+			{ 11, 1, 14 },		// 78 bits per transform
+			{ 11, 2, 13 },		// 78 bits per transform
+			{ 11, 3, 12 },		// 78 bits per transform
+			{ 11, 4, 11 },		// 78 bits per transform
+			{ 11, 5, 10 },		// 78 bits per transform
+			{ 11, 6, 9 },		// 78 bits per transform
+			{ 11, 7, 8 },		// 78 bits per transform
+			{ 11, 8, 7 },		// 78 bits per transform
+			{ 11, 9, 6 },		// 78 bits per transform
+			{ 11, 10, 5 },		// 78 bits per transform
+			{ 11, 11, 4 },		// 78 bits per transform
+			{ 11, 12, 3 },		// 78 bits per transform
+			{ 11, 13, 2 },		// 78 bits per transform
+			{ 11, 14, 1 },		// 78 bits per transform
+			{ 11, 15, 0 },		// 78 bits per transform
+			{ 12, 0, 14 },		// 78 bits per transform
+			{ 12, 1, 13 },		// 78 bits per transform
+			{ 12, 2, 12 },		// 78 bits per transform
+			{ 12, 3, 11 },		// 78 bits per transform
+			{ 12, 4, 10 },		// 78 bits per transform
+			{ 12, 5, 9 },		// 78 bits per transform
+			{ 12, 6, 8 },		// 78 bits per transform
+			{ 12, 7, 7 },		// 78 bits per transform
+			{ 12, 8, 6 },		// 78 bits per transform
+			{ 12, 9, 5 },		// 78 bits per transform
+			{ 12, 10, 4 },		// 78 bits per transform
+			{ 12, 11, 3 },		// 78 bits per transform
+			{ 12, 12, 2 },		// 78 bits per transform
+			{ 12, 13, 1 },		// 78 bits per transform
+			{ 12, 14, 0 },		// 78 bits per transform
+			{ 13, 0, 13 },		// 78 bits per transform
+			{ 13, 1, 12 },		// 78 bits per transform
+			{ 13, 2, 11 },		// 78 bits per transform
+			{ 13, 3, 10 },		// 78 bits per transform
+			{ 13, 4, 9 },		// 78 bits per transform
+			{ 13, 5, 8 },		// 78 bits per transform
+			{ 13, 6, 7 },		// 78 bits per transform
+			{ 13, 7, 6 },		// 78 bits per transform
+			{ 13, 8, 5 },		// 78 bits per transform
+			{ 13, 9, 4 },		// 78 bits per transform
+			{ 13, 10, 3 },		// 78 bits per transform
+			{ 13, 11, 2 },		// 78 bits per transform
+			{ 13, 12, 1 },		// 78 bits per transform
+			{ 13, 13, 0 },		// 78 bits per transform
+			{ 14, 0, 12 },		// 78 bits per transform
+			{ 14, 1, 11 },		// 78 bits per transform
+			{ 14, 2, 10 },		// 78 bits per transform
+			{ 14, 3, 9 },		// 78 bits per transform
+			{ 14, 4, 8 },		// 78 bits per transform
+			{ 14, 5, 7 },		// 78 bits per transform
+			{ 14, 6, 6 },		// 78 bits per transform
+			{ 14, 7, 5 },		// 78 bits per transform
+			{ 14, 8, 4 },		// 78 bits per transform
+			{ 14, 9, 3 },		// 78 bits per transform
+			{ 14, 10, 2 },		// 78 bits per transform
+			{ 14, 11, 1 },		// 78 bits per transform
+			{ 14, 12, 0 },		// 78 bits per transform
+			{ 15, 0, 11 },		// 78 bits per transform
+			{ 15, 1, 10 },		// 78 bits per transform
+			{ 15, 2, 9 },		// 78 bits per transform
+			{ 15, 3, 8 },		// 78 bits per transform
+			{ 15, 4, 7 },		// 78 bits per transform
+			{ 15, 5, 6 },		// 78 bits per transform
+			{ 15, 6, 5 },		// 78 bits per transform
+			{ 15, 7, 4 },		// 78 bits per transform
+			{ 15, 8, 3 },		// 78 bits per transform
+			{ 15, 9, 2 },		// 78 bits per transform
+			{ 15, 10, 1 },		// 78 bits per transform
+			{ 15, 11, 0 },		// 78 bits per transform
+			{ 16, 0, 10 },		// 78 bits per transform
+			{ 16, 1, 9 },		// 78 bits per transform
+			{ 16, 2, 8 },		// 78 bits per transform
+			{ 16, 3, 7 },		// 78 bits per transform
+			{ 16, 4, 6 },		// 78 bits per transform
+			{ 16, 5, 5 },		// 78 bits per transform
+			{ 16, 6, 4 },		// 78 bits per transform
+			{ 16, 7, 3 },		// 78 bits per transform
+			{ 16, 8, 2 },		// 78 bits per transform
+			{ 16, 9, 1 },		// 78 bits per transform
+			{ 16, 10, 0 },		// 78 bits per transform
+			{ 17, 0, 9 },		// 78 bits per transform
+			{ 17, 1, 8 },		// 78 bits per transform
+			{ 17, 2, 7 },		// 78 bits per transform
+			{ 17, 3, 6 },		// 78 bits per transform
+			{ 17, 4, 5 },		// 78 bits per transform
+			{ 17, 5, 4 },		// 78 bits per transform
+			{ 17, 6, 3 },		// 78 bits per transform
+			{ 17, 7, 2 },		// 78 bits per transform
+			{ 17, 8, 1 },		// 78 bits per transform
+			{ 17, 9, 0 },		// 78 bits per transform
+			{ 18, 0, 8 },		// 78 bits per transform
+			{ 18, 1, 7 },		// 78 bits per transform
+			{ 18, 2, 6 },		// 78 bits per transform
+			{ 18, 3, 5 },		// 78 bits per transform
+			{ 18, 4, 4 },		// 78 bits per transform
+			{ 18, 5, 3 },		// 78 bits per transform
+			{ 18, 6, 2 },		// 78 bits per transform
+			{ 18, 7, 1 },		// 78 bits per transform
+			{ 18, 8, 0 },		// 78 bits per transform
+			{ 19, 0, 7 },		// 78 bits per transform
+			{ 19, 1, 6 },		// 78 bits per transform
+			{ 19, 2, 5 },		// 78 bits per transform
+			{ 19, 3, 4 },		// 78 bits per transform
+			{ 19, 4, 3 },		// 78 bits per transform
+			{ 19, 5, 2 },		// 78 bits per transform
+			{ 19, 6, 1 },		// 78 bits per transform
+			{ 19, 7, 0 },		// 78 bits per transform
+			{ 20, 0, 6 },		// 78 bits per transform
+			{ 20, 1, 5 },		// 78 bits per transform
+			{ 20, 2, 4 },		// 78 bits per transform
+			{ 20, 3, 3 },		// 78 bits per transform
+			{ 20, 4, 2 },		// 78 bits per transform
+			{ 20, 5, 1 },		// 78 bits per transform
+			{ 20, 6, 0 },		// 78 bits per transform
+			{ 21, 0, 5 },		// 78 bits per transform
+			{ 21, 1, 4 },		// 78 bits per transform
+			{ 21, 2, 3 },		// 78 bits per transform
+			{ 21, 3, 2 },		// 78 bits per transform
+			{ 21, 4, 1 },		// 78 bits per transform
+			{ 21, 5, 0 },		// 78 bits per transform
+			{ 22, 0, 4 },		// 78 bits per transform
+			{ 22, 1, 3 },		// 78 bits per transform
+			{ 22, 2, 2 },		// 78 bits per transform
+			{ 22, 3, 1 },		// 78 bits per transform
+			{ 22, 4, 0 },		// 78 bits per transform
+			{ 23, 0, 3 },		// 78 bits per transform
+			{ 23, 1, 2 },		// 78 bits per transform
+			{ 23, 2, 1 },		// 78 bits per transform
+			{ 23, 3, 0 },		// 78 bits per transform
+			{ 0, 4, 23 },		// 81 bits per transform
+			{ 0, 5, 22 },		// 81 bits per transform
+			{ 0, 6, 21 },		// 81 bits per transform
+			{ 0, 7, 20 },		// 81 bits per transform
+			{ 0, 8, 19 },		// 81 bits per transform
+			{ 0, 9, 18 },		// 81 bits per transform
+			{ 0, 10, 17 },		// 81 bits per transform
+			{ 0, 11, 16 },		// 81 bits per transform
+			{ 0, 12, 15 },		// 81 bits per transform
+			{ 0, 13, 14 },		// 81 bits per transform
+			{ 0, 14, 13 },		// 81 bits per transform
+			{ 0, 15, 12 },		// 81 bits per transform
+			{ 0, 16, 11 },		// 81 bits per transform
+			{ 0, 17, 10 },		// 81 bits per transform
+			{ 0, 18, 9 },		// 81 bits per transform
+			{ 0, 19, 8 },		// 81 bits per transform
+			{ 0, 20, 7 },		// 81 bits per transform
+			{ 0, 21, 6 },		// 81 bits per transform
+			{ 0, 22, 5 },		// 81 bits per transform
+			{ 0, 23, 4 },		// 81 bits per transform
+			{ 1, 3, 23 },		// 81 bits per transform
+			{ 1, 4, 22 },		// 81 bits per transform
+			{ 1, 5, 21 },		// 81 bits per transform
+			{ 1, 6, 20 },		// 81 bits per transform
+			{ 1, 7, 19 },		// 81 bits per transform
+			{ 1, 8, 18 },		// 81 bits per transform
+			{ 1, 9, 17 },		// 81 bits per transform
+			{ 1, 10, 16 },		// 81 bits per transform
+			{ 1, 11, 15 },		// 81 bits per transform
+			{ 1, 12, 14 },		// 81 bits per transform
+			{ 1, 13, 13 },		// 81 bits per transform
+			{ 1, 14, 12 },		// 81 bits per transform
+			{ 1, 15, 11 },		// 81 bits per transform
+			{ 1, 16, 10 },		// 81 bits per transform
+			{ 1, 17, 9 },		// 81 bits per transform
+			{ 1, 18, 8 },		// 81 bits per transform
+			{ 1, 19, 7 },		// 81 bits per transform
+			{ 1, 20, 6 },		// 81 bits per transform
+			{ 1, 21, 5 },		// 81 bits per transform
+			{ 1, 22, 4 },		// 81 bits per transform
+			{ 1, 23, 3 },		// 81 bits per transform
+			{ 2, 2, 23 },		// 81 bits per transform
+			{ 2, 3, 22 },		// 81 bits per transform
+			{ 2, 4, 21 },		// 81 bits per transform
+			{ 2, 5, 20 },		// 81 bits per transform
+			{ 2, 6, 19 },		// 81 bits per transform
+			{ 2, 7, 18 },		// 81 bits per transform
+			{ 2, 8, 17 },		// 81 bits per transform
+			{ 2, 9, 16 },		// 81 bits per transform
+			{ 2, 10, 15 },		// 81 bits per transform
+			{ 2, 11, 14 },		// 81 bits per transform
+			{ 2, 12, 13 },		// 81 bits per transform
+			{ 2, 13, 12 },		// 81 bits per transform
+			{ 2, 14, 11 },		// 81 bits per transform
+			{ 2, 15, 10 },		// 81 bits per transform
+			{ 2, 16, 9 },		// 81 bits per transform
+			{ 2, 17, 8 },		// 81 bits per transform
+			{ 2, 18, 7 },		// 81 bits per transform
+			{ 2, 19, 6 },		// 81 bits per transform
+			{ 2, 20, 5 },		// 81 bits per transform
+			{ 2, 21, 4 },		// 81 bits per transform
+			{ 2, 22, 3 },		// 81 bits per transform
+			{ 2, 23, 2 },		// 81 bits per transform
+			{ 3, 1, 23 },		// 81 bits per transform
+			{ 3, 2, 22 },		// 81 bits per transform
+			{ 3, 3, 21 },		// 81 bits per transform
+			{ 3, 4, 20 },		// 81 bits per transform
+			{ 3, 5, 19 },		// 81 bits per transform
+			{ 3, 6, 18 },		// 81 bits per transform
+			{ 3, 7, 17 },		// 81 bits per transform
+			{ 3, 8, 16 },		// 81 bits per transform
+			{ 3, 9, 15 },		// 81 bits per transform
+			{ 3, 10, 14 },		// 81 bits per transform
+			{ 3, 11, 13 },		// 81 bits per transform
+			{ 3, 12, 12 },		// 81 bits per transform
+			{ 3, 13, 11 },		// 81 bits per transform
+			{ 3, 14, 10 },		// 81 bits per transform
+			{ 3, 15, 9 },		// 81 bits per transform
+			{ 3, 16, 8 },		// 81 bits per transform
+			{ 3, 17, 7 },		// 81 bits per transform
+			{ 3, 18, 6 },		// 81 bits per transform
+			{ 3, 19, 5 },		// 81 bits per transform
+			{ 3, 20, 4 },		// 81 bits per transform
+			{ 3, 21, 3 },		// 81 bits per transform
+			{ 3, 22, 2 },		// 81 bits per transform
+			{ 3, 23, 1 },		// 81 bits per transform
+			{ 4, 0, 23 },		// 81 bits per transform
+			{ 4, 1, 22 },		// 81 bits per transform
+			{ 4, 2, 21 },		// 81 bits per transform
+			{ 4, 3, 20 },		// 81 bits per transform
+			{ 4, 4, 19 },		// 81 bits per transform
+			{ 4, 5, 18 },		// 81 bits per transform
+			{ 4, 6, 17 },		// 81 bits per transform
+			{ 4, 7, 16 },		// 81 bits per transform
+			{ 4, 8, 15 },		// 81 bits per transform
+			{ 4, 9, 14 },		// 81 bits per transform
+			{ 4, 10, 13 },		// 81 bits per transform
+			{ 4, 11, 12 },		// 81 bits per transform
+			{ 4, 12, 11 },		// 81 bits per transform
+			{ 4, 13, 10 },		// 81 bits per transform
+			{ 4, 14, 9 },		// 81 bits per transform
+			{ 4, 15, 8 },		// 81 bits per transform
+			{ 4, 16, 7 },		// 81 bits per transform
+			{ 4, 17, 6 },		// 81 bits per transform
+			{ 4, 18, 5 },		// 81 bits per transform
+			{ 4, 19, 4 },		// 81 bits per transform
+			{ 4, 20, 3 },		// 81 bits per transform
+			{ 4, 21, 2 },		// 81 bits per transform
+			{ 4, 22, 1 },		// 81 bits per transform
+			{ 4, 23, 0 },		// 81 bits per transform
+			{ 5, 0, 22 },		// 81 bits per transform
+			{ 5, 1, 21 },		// 81 bits per transform
+			{ 5, 2, 20 },		// 81 bits per transform
+			{ 5, 3, 19 },		// 81 bits per transform
+			{ 5, 4, 18 },		// 81 bits per transform
+			{ 5, 5, 17 },		// 81 bits per transform
+			{ 5, 6, 16 },		// 81 bits per transform
+			{ 5, 7, 15 },		// 81 bits per transform
+			{ 5, 8, 14 },		// 81 bits per transform
+			{ 5, 9, 13 },		// 81 bits per transform
+			{ 5, 10, 12 },		// 81 bits per transform
+			{ 5, 11, 11 },		// 81 bits per transform
+			{ 5, 12, 10 },		// 81 bits per transform
+			{ 5, 13, 9 },		// 81 bits per transform
+			{ 5, 14, 8 },		// 81 bits per transform
+			{ 5, 15, 7 },		// 81 bits per transform
+			{ 5, 16, 6 },		// 81 bits per transform
+			{ 5, 17, 5 },		// 81 bits per transform
+			{ 5, 18, 4 },		// 81 bits per transform
+			{ 5, 19, 3 },		// 81 bits per transform
+			{ 5, 20, 2 },		// 81 bits per transform
+			{ 5, 21, 1 },		// 81 bits per transform
+			{ 5, 22, 0 },		// 81 bits per transform
+			{ 6, 0, 21 },		// 81 bits per transform
+			{ 6, 1, 20 },		// 81 bits per transform
+			{ 6, 2, 19 },		// 81 bits per transform
+			{ 6, 3, 18 },		// 81 bits per transform
+			{ 6, 4, 17 },		// 81 bits per transform
+			{ 6, 5, 16 },		// 81 bits per transform
+			{ 6, 6, 15 },		// 81 bits per transform
+			{ 6, 7, 14 },		// 81 bits per transform
+			{ 6, 8, 13 },		// 81 bits per transform
+			{ 6, 9, 12 },		// 81 bits per transform
+			{ 6, 10, 11 },		// 81 bits per transform
+			{ 6, 11, 10 },		// 81 bits per transform
+			{ 6, 12, 9 },		// 81 bits per transform
+			{ 6, 13, 8 },		// 81 bits per transform
+			{ 6, 14, 7 },		// 81 bits per transform
+			{ 6, 15, 6 },		// 81 bits per transform
+			{ 6, 16, 5 },		// 81 bits per transform
+			{ 6, 17, 4 },		// 81 bits per transform
+			{ 6, 18, 3 },		// 81 bits per transform
+			{ 6, 19, 2 },		// 81 bits per transform
+			{ 6, 20, 1 },		// 81 bits per transform
+			{ 6, 21, 0 },		// 81 bits per transform
+			{ 7, 0, 20 },		// 81 bits per transform
+			{ 7, 1, 19 },		// 81 bits per transform
+			{ 7, 2, 18 },		// 81 bits per transform
+			{ 7, 3, 17 },		// 81 bits per transform
+			{ 7, 4, 16 },		// 81 bits per transform
+			{ 7, 5, 15 },		// 81 bits per transform
+			{ 7, 6, 14 },		// 81 bits per transform
+			{ 7, 7, 13 },		// 81 bits per transform
+			{ 7, 8, 12 },		// 81 bits per transform
+			{ 7, 9, 11 },		// 81 bits per transform
+			{ 7, 10, 10 },		// 81 bits per transform
+			{ 7, 11, 9 },		// 81 bits per transform
+			{ 7, 12, 8 },		// 81 bits per transform
+			{ 7, 13, 7 },		// 81 bits per transform
+			{ 7, 14, 6 },		// 81 bits per transform
+			{ 7, 15, 5 },		// 81 bits per transform
+			{ 7, 16, 4 },		// 81 bits per transform
+			{ 7, 17, 3 },		// 81 bits per transform
+			{ 7, 18, 2 },		// 81 bits per transform
+			{ 7, 19, 1 },		// 81 bits per transform
+			{ 7, 20, 0 },		// 81 bits per transform
+			{ 8, 0, 19 },		// 81 bits per transform
+			{ 8, 1, 18 },		// 81 bits per transform
+			{ 8, 2, 17 },		// 81 bits per transform
+			{ 8, 3, 16 },		// 81 bits per transform
+			{ 8, 4, 15 },		// 81 bits per transform
+			{ 8, 5, 14 },		// 81 bits per transform
+			{ 8, 6, 13 },		// 81 bits per transform
+			{ 8, 7, 12 },		// 81 bits per transform
+			{ 8, 8, 11 },		// 81 bits per transform
+			{ 8, 9, 10 },		// 81 bits per transform
+			{ 8, 10, 9 },		// 81 bits per transform
+			{ 8, 11, 8 },		// 81 bits per transform
+			{ 8, 12, 7 },		// 81 bits per transform
+			{ 8, 13, 6 },		// 81 bits per transform
+			{ 8, 14, 5 },		// 81 bits per transform
+			{ 8, 15, 4 },		// 81 bits per transform
+			{ 8, 16, 3 },		// 81 bits per transform
+			{ 8, 17, 2 },		// 81 bits per transform
+			{ 8, 18, 1 },		// 81 bits per transform
+			{ 8, 19, 0 },		// 81 bits per transform
+			{ 9, 0, 18 },		// 81 bits per transform
+			{ 9, 1, 17 },		// 81 bits per transform
+			{ 9, 2, 16 },		// 81 bits per transform
+			{ 9, 3, 15 },		// 81 bits per transform
+			{ 9, 4, 14 },		// 81 bits per transform
+			{ 9, 5, 13 },		// 81 bits per transform
+			{ 9, 6, 12 },		// 81 bits per transform
+			{ 9, 7, 11 },		// 81 bits per transform
+			{ 9, 8, 10 },		// 81 bits per transform
+			{ 9, 9, 9 },		// 81 bits per transform
+			{ 9, 10, 8 },		// 81 bits per transform
+			{ 9, 11, 7 },		// 81 bits per transform
+			{ 9, 12, 6 },		// 81 bits per transform
+			{ 9, 13, 5 },		// 81 bits per transform
+			{ 9, 14, 4 },		// 81 bits per transform
+			{ 9, 15, 3 },		// 81 bits per transform
+			{ 9, 16, 2 },		// 81 bits per transform
+			{ 9, 17, 1 },		// 81 bits per transform
+			{ 9, 18, 0 },		// 81 bits per transform
+			{ 10, 0, 17 },		// 81 bits per transform
+			{ 10, 1, 16 },		// 81 bits per transform
+			{ 10, 2, 15 },		// 81 bits per transform
+			{ 10, 3, 14 },		// 81 bits per transform
+			{ 10, 4, 13 },		// 81 bits per transform
+			{ 10, 5, 12 },		// 81 bits per transform
+			{ 10, 6, 11 },		// 81 bits per transform
+			{ 10, 7, 10 },		// 81 bits per transform
+			{ 10, 8, 9 },		// 81 bits per transform
+			{ 10, 9, 8 },		// 81 bits per transform
+			{ 10, 10, 7 },		// 81 bits per transform
+			{ 10, 11, 6 },		// 81 bits per transform
+			{ 10, 12, 5 },		// 81 bits per transform
+			{ 10, 13, 4 },		// 81 bits per transform
+			{ 10, 14, 3 },		// 81 bits per transform
+			{ 10, 15, 2 },		// 81 bits per transform
+			{ 10, 16, 1 },		// 81 bits per transform
+			{ 10, 17, 0 },		// 81 bits per transform
+			{ 11, 0, 16 },		// 81 bits per transform
+			{ 11, 1, 15 },		// 81 bits per transform
+			{ 11, 2, 14 },		// 81 bits per transform
+			{ 11, 3, 13 },		// 81 bits per transform
+			{ 11, 4, 12 },		// 81 bits per transform
+			{ 11, 5, 11 },		// 81 bits per transform
+			{ 11, 6, 10 },		// 81 bits per transform
+			{ 11, 7, 9 },		// 81 bits per transform
+			{ 11, 8, 8 },		// 81 bits per transform
+			{ 11, 9, 7 },		// 81 bits per transform
+			{ 11, 10, 6 },		// 81 bits per transform
+			{ 11, 11, 5 },		// 81 bits per transform
+			{ 11, 12, 4 },		// 81 bits per transform
+			{ 11, 13, 3 },		// 81 bits per transform
+			{ 11, 14, 2 },		// 81 bits per transform
+			{ 11, 15, 1 },		// 81 bits per transform
+			{ 11, 16, 0 },		// 81 bits per transform
+			{ 12, 0, 15 },		// 81 bits per transform
+			{ 12, 1, 14 },		// 81 bits per transform
+			{ 12, 2, 13 },		// 81 bits per transform
+			{ 12, 3, 12 },		// 81 bits per transform
+			{ 12, 4, 11 },		// 81 bits per transform
+			{ 12, 5, 10 },		// 81 bits per transform
+			{ 12, 6, 9 },		// 81 bits per transform
+			{ 12, 7, 8 },		// 81 bits per transform
+			{ 12, 8, 7 },		// 81 bits per transform
+			{ 12, 9, 6 },		// 81 bits per transform
+			{ 12, 10, 5 },		// 81 bits per transform
+			{ 12, 11, 4 },		// 81 bits per transform
+			{ 12, 12, 3 },		// 81 bits per transform
+			{ 12, 13, 2 },		// 81 bits per transform
+			{ 12, 14, 1 },		// 81 bits per transform
+			{ 12, 15, 0 },		// 81 bits per transform
+			{ 13, 0, 14 },		// 81 bits per transform
+			{ 13, 1, 13 },		// 81 bits per transform
+			{ 13, 2, 12 },		// 81 bits per transform
+			{ 13, 3, 11 },		// 81 bits per transform
+			{ 13, 4, 10 },		// 81 bits per transform
+			{ 13, 5, 9 },		// 81 bits per transform
+			{ 13, 6, 8 },		// 81 bits per transform
+			{ 13, 7, 7 },		// 81 bits per transform
+			{ 13, 8, 6 },		// 81 bits per transform
+			{ 13, 9, 5 },		// 81 bits per transform
+			{ 13, 10, 4 },		// 81 bits per transform
+			{ 13, 11, 3 },		// 81 bits per transform
+			{ 13, 12, 2 },		// 81 bits per transform
+			{ 13, 13, 1 },		// 81 bits per transform
+			{ 13, 14, 0 },		// 81 bits per transform
+			{ 14, 0, 13 },		// 81 bits per transform
+			{ 14, 1, 12 },		// 81 bits per transform
+			{ 14, 2, 11 },		// 81 bits per transform
+			{ 14, 3, 10 },		// 81 bits per transform
+			{ 14, 4, 9 },		// 81 bits per transform
+			{ 14, 5, 8 },		// 81 bits per transform
+			{ 14, 6, 7 },		// 81 bits per transform
+			{ 14, 7, 6 },		// 81 bits per transform
+			{ 14, 8, 5 },		// 81 bits per transform
+			{ 14, 9, 4 },		// 81 bits per transform
+			{ 14, 10, 3 },		// 81 bits per transform
+			{ 14, 11, 2 },		// 81 bits per transform
+			{ 14, 12, 1 },		// 81 bits per transform
+			{ 14, 13, 0 },		// 81 bits per transform
+			{ 15, 0, 12 },		// 81 bits per transform
+			{ 15, 1, 11 },		// 81 bits per transform
+			{ 15, 2, 10 },		// 81 bits per transform
+			{ 15, 3, 9 },		// 81 bits per transform
+			{ 15, 4, 8 },		// 81 bits per transform
+			{ 15, 5, 7 },		// 81 bits per transform
+			{ 15, 6, 6 },		// 81 bits per transform
+			{ 15, 7, 5 },		// 81 bits per transform
+			{ 15, 8, 4 },		// 81 bits per transform
+			{ 15, 9, 3 },		// 81 bits per transform
+			{ 15, 10, 2 },		// 81 bits per transform
+			{ 15, 11, 1 },		// 81 bits per transform
+			{ 15, 12, 0 },		// 81 bits per transform
+			{ 16, 0, 11 },		// 81 bits per transform
+			{ 16, 1, 10 },		// 81 bits per transform
+			{ 16, 2, 9 },		// 81 bits per transform
+			{ 16, 3, 8 },		// 81 bits per transform
+			{ 16, 4, 7 },		// 81 bits per transform
+			{ 16, 5, 6 },		// 81 bits per transform
+			{ 16, 6, 5 },		// 81 bits per transform
+			{ 16, 7, 4 },		// 81 bits per transform
+			{ 16, 8, 3 },		// 81 bits per transform
+			{ 16, 9, 2 },		// 81 bits per transform
+			{ 16, 10, 1 },		// 81 bits per transform
+			{ 16, 11, 0 },		// 81 bits per transform
+			{ 17, 0, 10 },		// 81 bits per transform
+			{ 17, 1, 9 },		// 81 bits per transform
+			{ 17, 2, 8 },		// 81 bits per transform
+			{ 17, 3, 7 },		// 81 bits per transform
+			{ 17, 4, 6 },		// 81 bits per transform
+			{ 17, 5, 5 },		// 81 bits per transform
+			{ 17, 6, 4 },		// 81 bits per transform
+			{ 17, 7, 3 },		// 81 bits per transform
+			{ 17, 8, 2 },		// 81 bits per transform
+			{ 17, 9, 1 },		// 81 bits per transform
+			{ 17, 10, 0 },		// 81 bits per transform
+			{ 18, 0, 9 },		// 81 bits per transform
+			{ 18, 1, 8 },		// 81 bits per transform
+			{ 18, 2, 7 },		// 81 bits per transform
+			{ 18, 3, 6 },		// 81 bits per transform
+			{ 18, 4, 5 },		// 81 bits per transform
+			{ 18, 5, 4 },		// 81 bits per transform
+			{ 18, 6, 3 },		// 81 bits per transform
+			{ 18, 7, 2 },		// 81 bits per transform
+			{ 18, 8, 1 },		// 81 bits per transform
+			{ 18, 9, 0 },		// 81 bits per transform
+			{ 19, 0, 8 },		// 81 bits per transform
+			{ 19, 1, 7 },		// 81 bits per transform
+			{ 19, 2, 6 },		// 81 bits per transform
+			{ 19, 3, 5 },		// 81 bits per transform
+			{ 19, 4, 4 },		// 81 bits per transform
+			{ 19, 5, 3 },		// 81 bits per transform
+			{ 19, 6, 2 },		// 81 bits per transform
+			{ 19, 7, 1 },		// 81 bits per transform
+			{ 19, 8, 0 },		// 81 bits per transform
+			{ 20, 0, 7 },		// 81 bits per transform
+			{ 20, 1, 6 },		// 81 bits per transform
+			{ 20, 2, 5 },		// 81 bits per transform
+			{ 20, 3, 4 },		// 81 bits per transform
+			{ 20, 4, 3 },		// 81 bits per transform
+			{ 20, 5, 2 },		// 81 bits per transform
+			{ 20, 6, 1 },		// 81 bits per transform
+			{ 20, 7, 0 },		// 81 bits per transform
+			{ 21, 0, 6 },		// 81 bits per transform
+			{ 21, 1, 5 },		// 81 bits per transform
+			{ 21, 2, 4 },		// 81 bits per transform
+			{ 21, 3, 3 },		// 81 bits per transform
+			{ 21, 4, 2 },		// 81 bits per transform
+			{ 21, 5, 1 },		// 81 bits per transform
+			{ 21, 6, 0 },		// 81 bits per transform
+			{ 22, 0, 5 },		// 81 bits per transform
+			{ 22, 1, 4 },		// 81 bits per transform
+			{ 22, 2, 3 },		// 81 bits per transform
+			{ 22, 3, 2 },		// 81 bits per transform
+			{ 22, 4, 1 },		// 81 bits per transform
+			{ 22, 5, 0 },		// 81 bits per transform
+			{ 23, 0, 4 },		// 81 bits per transform
+			{ 23, 1, 3 },		// 81 bits per transform
+			{ 23, 2, 2 },		// 81 bits per transform
+			{ 23, 3, 1 },		// 81 bits per transform
+			{ 23, 4, 0 },		// 81 bits per transform
+			{ 0, 5, 23 },		// 84 bits per transform
+			{ 0, 6, 22 },		// 84 bits per transform
+			{ 0, 7, 21 },		// 84 bits per transform
+			{ 0, 8, 20 },		// 84 bits per transform
+			{ 0, 9, 19 },		// 84 bits per transform
+			{ 0, 10, 18 },		// 84 bits per transform
+			{ 0, 11, 17 },		// 84 bits per transform
+			{ 0, 12, 16 },		// 84 bits per transform
+			{ 0, 13, 15 },		// 84 bits per transform
+			{ 0, 14, 14 },		// 84 bits per transform
+			{ 0, 15, 13 },		// 84 bits per transform
+			{ 0, 16, 12 },		// 84 bits per transform
+			{ 0, 17, 11 },		// 84 bits per transform
+			{ 0, 18, 10 },		// 84 bits per transform
+			{ 0, 19, 9 },		// 84 bits per transform
+			{ 0, 20, 8 },		// 84 bits per transform
+			{ 0, 21, 7 },		// 84 bits per transform
+			{ 0, 22, 6 },		// 84 bits per transform
+			{ 0, 23, 5 },		// 84 bits per transform
+			{ 1, 4, 23 },		// 84 bits per transform
+			{ 1, 5, 22 },		// 84 bits per transform
+			{ 1, 6, 21 },		// 84 bits per transform
+			{ 1, 7, 20 },		// 84 bits per transform
+			{ 1, 8, 19 },		// 84 bits per transform
+			{ 1, 9, 18 },		// 84 bits per transform
+			{ 1, 10, 17 },		// 84 bits per transform
+			{ 1, 11, 16 },		// 84 bits per transform
+			{ 1, 12, 15 },		// 84 bits per transform
+			{ 1, 13, 14 },		// 84 bits per transform
+			{ 1, 14, 13 },		// 84 bits per transform
+			{ 1, 15, 12 },		// 84 bits per transform
+			{ 1, 16, 11 },		// 84 bits per transform
+			{ 1, 17, 10 },		// 84 bits per transform
+			{ 1, 18, 9 },		// 84 bits per transform
+			{ 1, 19, 8 },		// 84 bits per transform
+			{ 1, 20, 7 },		// 84 bits per transform
+			{ 1, 21, 6 },		// 84 bits per transform
+			{ 1, 22, 5 },		// 84 bits per transform
+			{ 1, 23, 4 },		// 84 bits per transform
+			{ 2, 3, 23 },		// 84 bits per transform
+			{ 2, 4, 22 },		// 84 bits per transform
+			{ 2, 5, 21 },		// 84 bits per transform
+			{ 2, 6, 20 },		// 84 bits per transform
+			{ 2, 7, 19 },		// 84 bits per transform
+			{ 2, 8, 18 },		// 84 bits per transform
+			{ 2, 9, 17 },		// 84 bits per transform
+			{ 2, 10, 16 },		// 84 bits per transform
+			{ 2, 11, 15 },		// 84 bits per transform
+			{ 2, 12, 14 },		// 84 bits per transform
+			{ 2, 13, 13 },		// 84 bits per transform
+			{ 2, 14, 12 },		// 84 bits per transform
+			{ 2, 15, 11 },		// 84 bits per transform
+			{ 2, 16, 10 },		// 84 bits per transform
+			{ 2, 17, 9 },		// 84 bits per transform
+			{ 2, 18, 8 },		// 84 bits per transform
+			{ 2, 19, 7 },		// 84 bits per transform
+			{ 2, 20, 6 },		// 84 bits per transform
+			{ 2, 21, 5 },		// 84 bits per transform
+			{ 2, 22, 4 },		// 84 bits per transform
+			{ 2, 23, 3 },		// 84 bits per transform
+			{ 3, 2, 23 },		// 84 bits per transform
+			{ 3, 3, 22 },		// 84 bits per transform
+			{ 3, 4, 21 },		// 84 bits per transform
+			{ 3, 5, 20 },		// 84 bits per transform
+			{ 3, 6, 19 },		// 84 bits per transform
+			{ 3, 7, 18 },		// 84 bits per transform
+			{ 3, 8, 17 },		// 84 bits per transform
+			{ 3, 9, 16 },		// 84 bits per transform
+			{ 3, 10, 15 },		// 84 bits per transform
+			{ 3, 11, 14 },		// 84 bits per transform
+			{ 3, 12, 13 },		// 84 bits per transform
+			{ 3, 13, 12 },		// 84 bits per transform
+			{ 3, 14, 11 },		// 84 bits per transform
+			{ 3, 15, 10 },		// 84 bits per transform
+			{ 3, 16, 9 },		// 84 bits per transform
+			{ 3, 17, 8 },		// 84 bits per transform
+			{ 3, 18, 7 },		// 84 bits per transform
+			{ 3, 19, 6 },		// 84 bits per transform
+			{ 3, 20, 5 },		// 84 bits per transform
+			{ 3, 21, 4 },		// 84 bits per transform
+			{ 3, 22, 3 },		// 84 bits per transform
+			{ 3, 23, 2 },		// 84 bits per transform
+			{ 4, 1, 23 },		// 84 bits per transform
+			{ 4, 2, 22 },		// 84 bits per transform
+			{ 4, 3, 21 },		// 84 bits per transform
+			{ 4, 4, 20 },		// 84 bits per transform
+			{ 4, 5, 19 },		// 84 bits per transform
+			{ 4, 6, 18 },		// 84 bits per transform
+			{ 4, 7, 17 },		// 84 bits per transform
+			{ 4, 8, 16 },		// 84 bits per transform
+			{ 4, 9, 15 },		// 84 bits per transform
+			{ 4, 10, 14 },		// 84 bits per transform
+			{ 4, 11, 13 },		// 84 bits per transform
+			{ 4, 12, 12 },		// 84 bits per transform
+			{ 4, 13, 11 },		// 84 bits per transform
+			{ 4, 14, 10 },		// 84 bits per transform
+			{ 4, 15, 9 },		// 84 bits per transform
+			{ 4, 16, 8 },		// 84 bits per transform
+			{ 4, 17, 7 },		// 84 bits per transform
+			{ 4, 18, 6 },		// 84 bits per transform
+			{ 4, 19, 5 },		// 84 bits per transform
+			{ 4, 20, 4 },		// 84 bits per transform
+			{ 4, 21, 3 },		// 84 bits per transform
+			{ 4, 22, 2 },		// 84 bits per transform
+			{ 4, 23, 1 },		// 84 bits per transform
+			{ 5, 0, 23 },		// 84 bits per transform
+			{ 5, 1, 22 },		// 84 bits per transform
+			{ 5, 2, 21 },		// 84 bits per transform
+			{ 5, 3, 20 },		// 84 bits per transform
+			{ 5, 4, 19 },		// 84 bits per transform
+			{ 5, 5, 18 },		// 84 bits per transform
+			{ 5, 6, 17 },		// 84 bits per transform
+			{ 5, 7, 16 },		// 84 bits per transform
+			{ 5, 8, 15 },		// 84 bits per transform
+			{ 5, 9, 14 },		// 84 bits per transform
+			{ 5, 10, 13 },		// 84 bits per transform
+			{ 5, 11, 12 },		// 84 bits per transform
+			{ 5, 12, 11 },		// 84 bits per transform
+			{ 5, 13, 10 },		// 84 bits per transform
+			{ 5, 14, 9 },		// 84 bits per transform
+			{ 5, 15, 8 },		// 84 bits per transform
+			{ 5, 16, 7 },		// 84 bits per transform
+			{ 5, 17, 6 },		// 84 bits per transform
+			{ 5, 18, 5 },		// 84 bits per transform
+			{ 5, 19, 4 },		// 84 bits per transform
+			{ 5, 20, 3 },		// 84 bits per transform
+			{ 5, 21, 2 },		// 84 bits per transform
+			{ 5, 22, 1 },		// 84 bits per transform
+			{ 5, 23, 0 },		// 84 bits per transform
+			{ 6, 0, 22 },		// 84 bits per transform
+			{ 6, 1, 21 },		// 84 bits per transform
+			{ 6, 2, 20 },		// 84 bits per transform
+			{ 6, 3, 19 },		// 84 bits per transform
+			{ 6, 4, 18 },		// 84 bits per transform
+			{ 6, 5, 17 },		// 84 bits per transform
+			{ 6, 6, 16 },		// 84 bits per transform
+			{ 6, 7, 15 },		// 84 bits per transform
+			{ 6, 8, 14 },		// 84 bits per transform
+			{ 6, 9, 13 },		// 84 bits per transform
+			{ 6, 10, 12 },		// 84 bits per transform
+			{ 6, 11, 11 },		// 84 bits per transform
+			{ 6, 12, 10 },		// 84 bits per transform
+			{ 6, 13, 9 },		// 84 bits per transform
+			{ 6, 14, 8 },		// 84 bits per transform
+			{ 6, 15, 7 },		// 84 bits per transform
+			{ 6, 16, 6 },		// 84 bits per transform
+			{ 6, 17, 5 },		// 84 bits per transform
+			{ 6, 18, 4 },		// 84 bits per transform
+			{ 6, 19, 3 },		// 84 bits per transform
+			{ 6, 20, 2 },		// 84 bits per transform
+			{ 6, 21, 1 },		// 84 bits per transform
+			{ 6, 22, 0 },		// 84 bits per transform
+			{ 7, 0, 21 },		// 84 bits per transform
+			{ 7, 1, 20 },		// 84 bits per transform
+			{ 7, 2, 19 },		// 84 bits per transform
+			{ 7, 3, 18 },		// 84 bits per transform
+			{ 7, 4, 17 },		// 84 bits per transform
+			{ 7, 5, 16 },		// 84 bits per transform
+			{ 7, 6, 15 },		// 84 bits per transform
+			{ 7, 7, 14 },		// 84 bits per transform
+			{ 7, 8, 13 },		// 84 bits per transform
+			{ 7, 9, 12 },		// 84 bits per transform
+			{ 7, 10, 11 },		// 84 bits per transform
+			{ 7, 11, 10 },		// 84 bits per transform
+			{ 7, 12, 9 },		// 84 bits per transform
+			{ 7, 13, 8 },		// 84 bits per transform
+			{ 7, 14, 7 },		// 84 bits per transform
+			{ 7, 15, 6 },		// 84 bits per transform
+			{ 7, 16, 5 },		// 84 bits per transform
+			{ 7, 17, 4 },		// 84 bits per transform
+			{ 7, 18, 3 },		// 84 bits per transform
+			{ 7, 19, 2 },		// 84 bits per transform
+			{ 7, 20, 1 },		// 84 bits per transform
+			{ 7, 21, 0 },		// 84 bits per transform
+			{ 8, 0, 20 },		// 84 bits per transform
+			{ 8, 1, 19 },		// 84 bits per transform
+			{ 8, 2, 18 },		// 84 bits per transform
+			{ 8, 3, 17 },		// 84 bits per transform
+			{ 8, 4, 16 },		// 84 bits per transform
+			{ 8, 5, 15 },		// 84 bits per transform
+			{ 8, 6, 14 },		// 84 bits per transform
+			{ 8, 7, 13 },		// 84 bits per transform
+			{ 8, 8, 12 },		// 84 bits per transform
+			{ 8, 9, 11 },		// 84 bits per transform
+			{ 8, 10, 10 },		// 84 bits per transform
+			{ 8, 11, 9 },		// 84 bits per transform
+			{ 8, 12, 8 },		// 84 bits per transform
+			{ 8, 13, 7 },		// 84 bits per transform
+			{ 8, 14, 6 },		// 84 bits per transform
+			{ 8, 15, 5 },		// 84 bits per transform
+			{ 8, 16, 4 },		// 84 bits per transform
+			{ 8, 17, 3 },		// 84 bits per transform
+			{ 8, 18, 2 },		// 84 bits per transform
+			{ 8, 19, 1 },		// 84 bits per transform
+			{ 8, 20, 0 },		// 84 bits per transform
+			{ 9, 0, 19 },		// 84 bits per transform
+			{ 9, 1, 18 },		// 84 bits per transform
+			{ 9, 2, 17 },		// 84 bits per transform
+			{ 9, 3, 16 },		// 84 bits per transform
+			{ 9, 4, 15 },		// 84 bits per transform
+			{ 9, 5, 14 },		// 84 bits per transform
+			{ 9, 6, 13 },		// 84 bits per transform
+			{ 9, 7, 12 },		// 84 bits per transform
+			{ 9, 8, 11 },		// 84 bits per transform
+			{ 9, 9, 10 },		// 84 bits per transform
+			{ 9, 10, 9 },		// 84 bits per transform
+			{ 9, 11, 8 },		// 84 bits per transform
+			{ 9, 12, 7 },		// 84 bits per transform
+			{ 9, 13, 6 },		// 84 bits per transform
+			{ 9, 14, 5 },		// 84 bits per transform
+			{ 9, 15, 4 },		// 84 bits per transform
+			{ 9, 16, 3 },		// 84 bits per transform
+			{ 9, 17, 2 },		// 84 bits per transform
+			{ 9, 18, 1 },		// 84 bits per transform
+			{ 9, 19, 0 },		// 84 bits per transform
+			{ 10, 0, 18 },		// 84 bits per transform
+			{ 10, 1, 17 },		// 84 bits per transform
+			{ 10, 2, 16 },		// 84 bits per transform
+			{ 10, 3, 15 },		// 84 bits per transform
+			{ 10, 4, 14 },		// 84 bits per transform
+			{ 10, 5, 13 },		// 84 bits per transform
+			{ 10, 6, 12 },		// 84 bits per transform
+			{ 10, 7, 11 },		// 84 bits per transform
+			{ 10, 8, 10 },		// 84 bits per transform
+			{ 10, 9, 9 },		// 84 bits per transform
+			{ 10, 10, 8 },		// 84 bits per transform
+			{ 10, 11, 7 },		// 84 bits per transform
+			{ 10, 12, 6 },		// 84 bits per transform
+			{ 10, 13, 5 },		// 84 bits per transform
+			{ 10, 14, 4 },		// 84 bits per transform
+			{ 10, 15, 3 },		// 84 bits per transform
+			{ 10, 16, 2 },		// 84 bits per transform
+			{ 10, 17, 1 },		// 84 bits per transform
+			{ 10, 18, 0 },		// 84 bits per transform
+			{ 11, 0, 17 },		// 84 bits per transform
+			{ 11, 1, 16 },		// 84 bits per transform
+			{ 11, 2, 15 },		// 84 bits per transform
+			{ 11, 3, 14 },		// 84 bits per transform
+			{ 11, 4, 13 },		// 84 bits per transform
+			{ 11, 5, 12 },		// 84 bits per transform
+			{ 11, 6, 11 },		// 84 bits per transform
+			{ 11, 7, 10 },		// 84 bits per transform
+			{ 11, 8, 9 },		// 84 bits per transform
+			{ 11, 9, 8 },		// 84 bits per transform
+			{ 11, 10, 7 },		// 84 bits per transform
+			{ 11, 11, 6 },		// 84 bits per transform
+			{ 11, 12, 5 },		// 84 bits per transform
+			{ 11, 13, 4 },		// 84 bits per transform
+			{ 11, 14, 3 },		// 84 bits per transform
+			{ 11, 15, 2 },		// 84 bits per transform
+			{ 11, 16, 1 },		// 84 bits per transform
+			{ 11, 17, 0 },		// 84 bits per transform
+			{ 12, 0, 16 },		// 84 bits per transform
+			{ 12, 1, 15 },		// 84 bits per transform
+			{ 12, 2, 14 },		// 84 bits per transform
+			{ 12, 3, 13 },		// 84 bits per transform
+			{ 12, 4, 12 },		// 84 bits per transform
+			{ 12, 5, 11 },		// 84 bits per transform
+			{ 12, 6, 10 },		// 84 bits per transform
+			{ 12, 7, 9 },		// 84 bits per transform
+			{ 12, 8, 8 },		// 84 bits per transform
+			{ 12, 9, 7 },		// 84 bits per transform
+			{ 12, 10, 6 },		// 84 bits per transform
+			{ 12, 11, 5 },		// 84 bits per transform
+			{ 12, 12, 4 },		// 84 bits per transform
+			{ 12, 13, 3 },		// 84 bits per transform
+			{ 12, 14, 2 },		// 84 bits per transform
+			{ 12, 15, 1 },		// 84 bits per transform
+			{ 12, 16, 0 },		// 84 bits per transform
+			{ 13, 0, 15 },		// 84 bits per transform
+			{ 13, 1, 14 },		// 84 bits per transform
+			{ 13, 2, 13 },		// 84 bits per transform
+			{ 13, 3, 12 },		// 84 bits per transform
+			{ 13, 4, 11 },		// 84 bits per transform
+			{ 13, 5, 10 },		// 84 bits per transform
+			{ 13, 6, 9 },		// 84 bits per transform
+			{ 13, 7, 8 },		// 84 bits per transform
+			{ 13, 8, 7 },		// 84 bits per transform
+			{ 13, 9, 6 },		// 84 bits per transform
+			{ 13, 10, 5 },		// 84 bits per transform
+			{ 13, 11, 4 },		// 84 bits per transform
+			{ 13, 12, 3 },		// 84 bits per transform
+			{ 13, 13, 2 },		// 84 bits per transform
+			{ 13, 14, 1 },		// 84 bits per transform
+			{ 13, 15, 0 },		// 84 bits per transform
+			{ 14, 0, 14 },		// 84 bits per transform
+			{ 14, 1, 13 },		// 84 bits per transform
+			{ 14, 2, 12 },		// 84 bits per transform
+			{ 14, 3, 11 },		// 84 bits per transform
+			{ 14, 4, 10 },		// 84 bits per transform
+			{ 14, 5, 9 },		// 84 bits per transform
+			{ 14, 6, 8 },		// 84 bits per transform
+			{ 14, 7, 7 },		// 84 bits per transform
+			{ 14, 8, 6 },		// 84 bits per transform
+			{ 14, 9, 5 },		// 84 bits per transform
+			{ 14, 10, 4 },		// 84 bits per transform
+			{ 14, 11, 3 },		// 84 bits per transform
+			{ 14, 12, 2 },		// 84 bits per transform
+			{ 14, 13, 1 },		// 84 bits per transform
+			{ 14, 14, 0 },		// 84 bits per transform
+			{ 15, 0, 13 },		// 84 bits per transform
+			{ 15, 1, 12 },		// 84 bits per transform
+			{ 15, 2, 11 },		// 84 bits per transform
+			{ 15, 3, 10 },		// 84 bits per transform
+			{ 15, 4, 9 },		// 84 bits per transform
+			{ 15, 5, 8 },		// 84 bits per transform
+			{ 15, 6, 7 },		// 84 bits per transform
+			{ 15, 7, 6 },		// 84 bits per transform
+			{ 15, 8, 5 },		// 84 bits per transform
+			{ 15, 9, 4 },		// 84 bits per transform
+			{ 15, 10, 3 },		// 84 bits per transform
+			{ 15, 11, 2 },		// 84 bits per transform
+			{ 15, 12, 1 },		// 84 bits per transform
+			{ 15, 13, 0 },		// 84 bits per transform
+			{ 16, 0, 12 },		// 84 bits per transform
+			{ 16, 1, 11 },		// 84 bits per transform
+			{ 16, 2, 10 },		// 84 bits per transform
+			{ 16, 3, 9 },		// 84 bits per transform
+			{ 16, 4, 8 },		// 84 bits per transform
+			{ 16, 5, 7 },		// 84 bits per transform
+			{ 16, 6, 6 },		// 84 bits per transform
+			{ 16, 7, 5 },		// 84 bits per transform
+			{ 16, 8, 4 },		// 84 bits per transform
+			{ 16, 9, 3 },		// 84 bits per transform
+			{ 16, 10, 2 },		// 84 bits per transform
+			{ 16, 11, 1 },		// 84 bits per transform
+			{ 16, 12, 0 },		// 84 bits per transform
+			{ 17, 0, 11 },		// 84 bits per transform
+			{ 17, 1, 10 },		// 84 bits per transform
+			{ 17, 2, 9 },		// 84 bits per transform
+			{ 17, 3, 8 },		// 84 bits per transform
+			{ 17, 4, 7 },		// 84 bits per transform
+			{ 17, 5, 6 },		// 84 bits per transform
+			{ 17, 6, 5 },		// 84 bits per transform
+			{ 17, 7, 4 },		// 84 bits per transform
+			{ 17, 8, 3 },		// 84 bits per transform
+			{ 17, 9, 2 },		// 84 bits per transform
+			{ 17, 10, 1 },		// 84 bits per transform
+			{ 17, 11, 0 },		// 84 bits per transform
+			{ 18, 0, 10 },		// 84 bits per transform
+			{ 18, 1, 9 },		// 84 bits per transform
+			{ 18, 2, 8 },		// 84 bits per transform
+			{ 18, 3, 7 },		// 84 bits per transform
+			{ 18, 4, 6 },		// 84 bits per transform
+			{ 18, 5, 5 },		// 84 bits per transform
+			{ 18, 6, 4 },		// 84 bits per transform
+			{ 18, 7, 3 },		// 84 bits per transform
+			{ 18, 8, 2 },		// 84 bits per transform
+			{ 18, 9, 1 },		// 84 bits per transform
+			{ 18, 10, 0 },		// 84 bits per transform
+			{ 19, 0, 9 },		// 84 bits per transform
+			{ 19, 1, 8 },		// 84 bits per transform
+			{ 19, 2, 7 },		// 84 bits per transform
+			{ 19, 3, 6 },		// 84 bits per transform
+			{ 19, 4, 5 },		// 84 bits per transform
+			{ 19, 5, 4 },		// 84 bits per transform
+			{ 19, 6, 3 },		// 84 bits per transform
+			{ 19, 7, 2 },		// 84 bits per transform
+			{ 19, 8, 1 },		// 84 bits per transform
+			{ 19, 9, 0 },		// 84 bits per transform
+			{ 20, 0, 8 },		// 84 bits per transform
+			{ 20, 1, 7 },		// 84 bits per transform
+			{ 20, 2, 6 },		// 84 bits per transform
+			{ 20, 3, 5 },		// 84 bits per transform
+			{ 20, 4, 4 },		// 84 bits per transform
+			{ 20, 5, 3 },		// 84 bits per transform
+			{ 20, 6, 2 },		// 84 bits per transform
+			{ 20, 7, 1 },		// 84 bits per transform
+			{ 20, 8, 0 },		// 84 bits per transform
+			{ 21, 0, 7 },		// 84 bits per transform
+			{ 21, 1, 6 },		// 84 bits per transform
+			{ 21, 2, 5 },		// 84 bits per transform
+			{ 21, 3, 4 },		// 84 bits per transform
+			{ 21, 4, 3 },		// 84 bits per transform
+			{ 21, 5, 2 },		// 84 bits per transform
+			{ 21, 6, 1 },		// 84 bits per transform
+			{ 21, 7, 0 },		// 84 bits per transform
+			{ 22, 0, 6 },		// 84 bits per transform
+			{ 22, 1, 5 },		// 84 bits per transform
+			{ 22, 2, 4 },		// 84 bits per transform
+			{ 22, 3, 3 },		// 84 bits per transform
+			{ 22, 4, 2 },		// 84 bits per transform
+			{ 22, 5, 1 },		// 84 bits per transform
+			{ 22, 6, 0 },		// 84 bits per transform
+			{ 23, 0, 5 },		// 84 bits per transform
+			{ 23, 1, 4 },		// 84 bits per transform
+			{ 23, 2, 3 },		// 84 bits per transform
+			{ 23, 3, 2 },		// 84 bits per transform
+			{ 23, 4, 1 },		// 84 bits per transform
+			{ 23, 5, 0 },		// 84 bits per transform
+			{ 0, 6, 23 },		// 87 bits per transform
+			{ 0, 7, 22 },		// 87 bits per transform
+			{ 0, 8, 21 },		// 87 bits per transform
+			{ 0, 9, 20 },		// 87 bits per transform
+			{ 0, 10, 19 },		// 87 bits per transform
+			{ 0, 11, 18 },		// 87 bits per transform
+			{ 0, 12, 17 },		// 87 bits per transform
+			{ 0, 13, 16 },		// 87 bits per transform
+			{ 0, 14, 15 },		// 87 bits per transform
+			{ 0, 15, 14 },		// 87 bits per transform
+			{ 0, 16, 13 },		// 87 bits per transform
+			{ 0, 17, 12 },		// 87 bits per transform
+			{ 0, 18, 11 },		// 87 bits per transform
+			{ 0, 19, 10 },		// 87 bits per transform
+			{ 0, 20, 9 },		// 87 bits per transform
+			{ 0, 21, 8 },		// 87 bits per transform
+			{ 0, 22, 7 },		// 87 bits per transform
+			{ 0, 23, 6 },		// 87 bits per transform
+			{ 1, 5, 23 },		// 87 bits per transform
+			{ 1, 6, 22 },		// 87 bits per transform
+			{ 1, 7, 21 },		// 87 bits per transform
+			{ 1, 8, 20 },		// 87 bits per transform
+			{ 1, 9, 19 },		// 87 bits per transform
+			{ 1, 10, 18 },		// 87 bits per transform
+			{ 1, 11, 17 },		// 87 bits per transform
+			{ 1, 12, 16 },		// 87 bits per transform
+			{ 1, 13, 15 },		// 87 bits per transform
+			{ 1, 14, 14 },		// 87 bits per transform
+			{ 1, 15, 13 },		// 87 bits per transform
+			{ 1, 16, 12 },		// 87 bits per transform
+			{ 1, 17, 11 },		// 87 bits per transform
+			{ 1, 18, 10 },		// 87 bits per transform
+			{ 1, 19, 9 },		// 87 bits per transform
+			{ 1, 20, 8 },		// 87 bits per transform
+			{ 1, 21, 7 },		// 87 bits per transform
+			{ 1, 22, 6 },		// 87 bits per transform
+			{ 1, 23, 5 },		// 87 bits per transform
+			{ 2, 4, 23 },		// 87 bits per transform
+			{ 2, 5, 22 },		// 87 bits per transform
+			{ 2, 6, 21 },		// 87 bits per transform
+			{ 2, 7, 20 },		// 87 bits per transform
+			{ 2, 8, 19 },		// 87 bits per transform
+			{ 2, 9, 18 },		// 87 bits per transform
+			{ 2, 10, 17 },		// 87 bits per transform
+			{ 2, 11, 16 },		// 87 bits per transform
+			{ 2, 12, 15 },		// 87 bits per transform
+			{ 2, 13, 14 },		// 87 bits per transform
+			{ 2, 14, 13 },		// 87 bits per transform
+			{ 2, 15, 12 },		// 87 bits per transform
+			{ 2, 16, 11 },		// 87 bits per transform
+			{ 2, 17, 10 },		// 87 bits per transform
+			{ 2, 18, 9 },		// 87 bits per transform
+			{ 2, 19, 8 },		// 87 bits per transform
+			{ 2, 20, 7 },		// 87 bits per transform
+			{ 2, 21, 6 },		// 87 bits per transform
+			{ 2, 22, 5 },		// 87 bits per transform
+			{ 2, 23, 4 },		// 87 bits per transform
+			{ 3, 3, 23 },		// 87 bits per transform
+			{ 3, 4, 22 },		// 87 bits per transform
+			{ 3, 5, 21 },		// 87 bits per transform
+			{ 3, 6, 20 },		// 87 bits per transform
+			{ 3, 7, 19 },		// 87 bits per transform
+			{ 3, 8, 18 },		// 87 bits per transform
+			{ 3, 9, 17 },		// 87 bits per transform
+			{ 3, 10, 16 },		// 87 bits per transform
+			{ 3, 11, 15 },		// 87 bits per transform
+			{ 3, 12, 14 },		// 87 bits per transform
+			{ 3, 13, 13 },		// 87 bits per transform
+			{ 3, 14, 12 },		// 87 bits per transform
+			{ 3, 15, 11 },		// 87 bits per transform
+			{ 3, 16, 10 },		// 87 bits per transform
+			{ 3, 17, 9 },		// 87 bits per transform
+			{ 3, 18, 8 },		// 87 bits per transform
+			{ 3, 19, 7 },		// 87 bits per transform
+			{ 3, 20, 6 },		// 87 bits per transform
+			{ 3, 21, 5 },		// 87 bits per transform
+			{ 3, 22, 4 },		// 87 bits per transform
+			{ 3, 23, 3 },		// 87 bits per transform
+			{ 4, 2, 23 },		// 87 bits per transform
+			{ 4, 3, 22 },		// 87 bits per transform
+			{ 4, 4, 21 },		// 87 bits per transform
+			{ 4, 5, 20 },		// 87 bits per transform
+			{ 4, 6, 19 },		// 87 bits per transform
+			{ 4, 7, 18 },		// 87 bits per transform
+			{ 4, 8, 17 },		// 87 bits per transform
+			{ 4, 9, 16 },		// 87 bits per transform
+			{ 4, 10, 15 },		// 87 bits per transform
+			{ 4, 11, 14 },		// 87 bits per transform
+			{ 4, 12, 13 },		// 87 bits per transform
+			{ 4, 13, 12 },		// 87 bits per transform
+			{ 4, 14, 11 },		// 87 bits per transform
+			{ 4, 15, 10 },		// 87 bits per transform
+			{ 4, 16, 9 },		// 87 bits per transform
+			{ 4, 17, 8 },		// 87 bits per transform
+			{ 4, 18, 7 },		// 87 bits per transform
+			{ 4, 19, 6 },		// 87 bits per transform
+			{ 4, 20, 5 },		// 87 bits per transform
+			{ 4, 21, 4 },		// 87 bits per transform
+			{ 4, 22, 3 },		// 87 bits per transform
+			{ 4, 23, 2 },		// 87 bits per transform
+			{ 5, 1, 23 },		// 87 bits per transform
+			{ 5, 2, 22 },		// 87 bits per transform
+			{ 5, 3, 21 },		// 87 bits per transform
+			{ 5, 4, 20 },		// 87 bits per transform
+			{ 5, 5, 19 },		// 87 bits per transform
+			{ 5, 6, 18 },		// 87 bits per transform
+			{ 5, 7, 17 },		// 87 bits per transform
+			{ 5, 8, 16 },		// 87 bits per transform
+			{ 5, 9, 15 },		// 87 bits per transform
+			{ 5, 10, 14 },		// 87 bits per transform
+			{ 5, 11, 13 },		// 87 bits per transform
+			{ 5, 12, 12 },		// 87 bits per transform
+			{ 5, 13, 11 },		// 87 bits per transform
+			{ 5, 14, 10 },		// 87 bits per transform
+			{ 5, 15, 9 },		// 87 bits per transform
+			{ 5, 16, 8 },		// 87 bits per transform
+			{ 5, 17, 7 },		// 87 bits per transform
+			{ 5, 18, 6 },		// 87 bits per transform
+			{ 5, 19, 5 },		// 87 bits per transform
+			{ 5, 20, 4 },		// 87 bits per transform
+			{ 5, 21, 3 },		// 87 bits per transform
+			{ 5, 22, 2 },		// 87 bits per transform
+			{ 5, 23, 1 },		// 87 bits per transform
+			{ 6, 0, 23 },		// 87 bits per transform
+			{ 6, 1, 22 },		// 87 bits per transform
+			{ 6, 2, 21 },		// 87 bits per transform
+			{ 6, 3, 20 },		// 87 bits per transform
+			{ 6, 4, 19 },		// 87 bits per transform
+			{ 6, 5, 18 },		// 87 bits per transform
+			{ 6, 6, 17 },		// 87 bits per transform
+			{ 6, 7, 16 },		// 87 bits per transform
+			{ 6, 8, 15 },		// 87 bits per transform
+			{ 6, 9, 14 },		// 87 bits per transform
+			{ 6, 10, 13 },		// 87 bits per transform
+			{ 6, 11, 12 },		// 87 bits per transform
+			{ 6, 12, 11 },		// 87 bits per transform
+			{ 6, 13, 10 },		// 87 bits per transform
+			{ 6, 14, 9 },		// 87 bits per transform
+			{ 6, 15, 8 },		// 87 bits per transform
+			{ 6, 16, 7 },		// 87 bits per transform
+			{ 6, 17, 6 },		// 87 bits per transform
+			{ 6, 18, 5 },		// 87 bits per transform
+			{ 6, 19, 4 },		// 87 bits per transform
+			{ 6, 20, 3 },		// 87 bits per transform
+			{ 6, 21, 2 },		// 87 bits per transform
+			{ 6, 22, 1 },		// 87 bits per transform
+			{ 6, 23, 0 },		// 87 bits per transform
+			{ 7, 0, 22 },		// 87 bits per transform
+			{ 7, 1, 21 },		// 87 bits per transform
+			{ 7, 2, 20 },		// 87 bits per transform
+			{ 7, 3, 19 },		// 87 bits per transform
+			{ 7, 4, 18 },		// 87 bits per transform
+			{ 7, 5, 17 },		// 87 bits per transform
+			{ 7, 6, 16 },		// 87 bits per transform
+			{ 7, 7, 15 },		// 87 bits per transform
+			{ 7, 8, 14 },		// 87 bits per transform
+			{ 7, 9, 13 },		// 87 bits per transform
+			{ 7, 10, 12 },		// 87 bits per transform
+			{ 7, 11, 11 },		// 87 bits per transform
+			{ 7, 12, 10 },		// 87 bits per transform
+			{ 7, 13, 9 },		// 87 bits per transform
+			{ 7, 14, 8 },		// 87 bits per transform
+			{ 7, 15, 7 },		// 87 bits per transform
+			{ 7, 16, 6 },		// 87 bits per transform
+			{ 7, 17, 5 },		// 87 bits per transform
+			{ 7, 18, 4 },		// 87 bits per transform
+			{ 7, 19, 3 },		// 87 bits per transform
+			{ 7, 20, 2 },		// 87 bits per transform
+			{ 7, 21, 1 },		// 87 bits per transform
+			{ 7, 22, 0 },		// 87 bits per transform
+			{ 8, 0, 21 },		// 87 bits per transform
+			{ 8, 1, 20 },		// 87 bits per transform
+			{ 8, 2, 19 },		// 87 bits per transform
+			{ 8, 3, 18 },		// 87 bits per transform
+			{ 8, 4, 17 },		// 87 bits per transform
+			{ 8, 5, 16 },		// 87 bits per transform
+			{ 8, 6, 15 },		// 87 bits per transform
+			{ 8, 7, 14 },		// 87 bits per transform
+			{ 8, 8, 13 },		// 87 bits per transform
+			{ 8, 9, 12 },		// 87 bits per transform
+			{ 8, 10, 11 },		// 87 bits per transform
+			{ 8, 11, 10 },		// 87 bits per transform
+			{ 8, 12, 9 },		// 87 bits per transform
+			{ 8, 13, 8 },		// 87 bits per transform
+			{ 8, 14, 7 },		// 87 bits per transform
+			{ 8, 15, 6 },		// 87 bits per transform
+			{ 8, 16, 5 },		// 87 bits per transform
+			{ 8, 17, 4 },		// 87 bits per transform
+			{ 8, 18, 3 },		// 87 bits per transform
+			{ 8, 19, 2 },		// 87 bits per transform
+			{ 8, 20, 1 },		// 87 bits per transform
+			{ 8, 21, 0 },		// 87 bits per transform
+			{ 9, 0, 20 },		// 87 bits per transform
+			{ 9, 1, 19 },		// 87 bits per transform
+			{ 9, 2, 18 },		// 87 bits per transform
+			{ 9, 3, 17 },		// 87 bits per transform
+			{ 9, 4, 16 },		// 87 bits per transform
+			{ 9, 5, 15 },		// 87 bits per transform
+			{ 9, 6, 14 },		// 87 bits per transform
+			{ 9, 7, 13 },		// 87 bits per transform
+			{ 9, 8, 12 },		// 87 bits per transform
+			{ 9, 9, 11 },		// 87 bits per transform
+			{ 9, 10, 10 },		// 87 bits per transform
+			{ 9, 11, 9 },		// 87 bits per transform
+			{ 9, 12, 8 },		// 87 bits per transform
+			{ 9, 13, 7 },		// 87 bits per transform
+			{ 9, 14, 6 },		// 87 bits per transform
+			{ 9, 15, 5 },		// 87 bits per transform
+			{ 9, 16, 4 },		// 87 bits per transform
+			{ 9, 17, 3 },		// 87 bits per transform
+			{ 9, 18, 2 },		// 87 bits per transform
+			{ 9, 19, 1 },		// 87 bits per transform
+			{ 9, 20, 0 },		// 87 bits per transform
+			{ 10, 0, 19 },		// 87 bits per transform
+			{ 10, 1, 18 },		// 87 bits per transform
+			{ 10, 2, 17 },		// 87 bits per transform
+			{ 10, 3, 16 },		// 87 bits per transform
+			{ 10, 4, 15 },		// 87 bits per transform
+			{ 10, 5, 14 },		// 87 bits per transform
+			{ 10, 6, 13 },		// 87 bits per transform
+			{ 10, 7, 12 },		// 87 bits per transform
+			{ 10, 8, 11 },		// 87 bits per transform
+			{ 10, 9, 10 },		// 87 bits per transform
+			{ 10, 10, 9 },		// 87 bits per transform
+			{ 10, 11, 8 },		// 87 bits per transform
+			{ 10, 12, 7 },		// 87 bits per transform
+			{ 10, 13, 6 },		// 87 bits per transform
+			{ 10, 14, 5 },		// 87 bits per transform
+			{ 10, 15, 4 },		// 87 bits per transform
+			{ 10, 16, 3 },		// 87 bits per transform
+			{ 10, 17, 2 },		// 87 bits per transform
+			{ 10, 18, 1 },		// 87 bits per transform
+			{ 10, 19, 0 },		// 87 bits per transform
+			{ 11, 0, 18 },		// 87 bits per transform
+			{ 11, 1, 17 },		// 87 bits per transform
+			{ 11, 2, 16 },		// 87 bits per transform
+			{ 11, 3, 15 },		// 87 bits per transform
+			{ 11, 4, 14 },		// 87 bits per transform
+			{ 11, 5, 13 },		// 87 bits per transform
+			{ 11, 6, 12 },		// 87 bits per transform
+			{ 11, 7, 11 },		// 87 bits per transform
+			{ 11, 8, 10 },		// 87 bits per transform
+			{ 11, 9, 9 },		// 87 bits per transform
+			{ 11, 10, 8 },		// 87 bits per transform
+			{ 11, 11, 7 },		// 87 bits per transform
+			{ 11, 12, 6 },		// 87 bits per transform
+			{ 11, 13, 5 },		// 87 bits per transform
+			{ 11, 14, 4 },		// 87 bits per transform
+			{ 11, 15, 3 },		// 87 bits per transform
+			{ 11, 16, 2 },		// 87 bits per transform
+			{ 11, 17, 1 },		// 87 bits per transform
+			{ 11, 18, 0 },		// 87 bits per transform
+			{ 12, 0, 17 },		// 87 bits per transform
+			{ 12, 1, 16 },		// 87 bits per transform
+			{ 12, 2, 15 },		// 87 bits per transform
+			{ 12, 3, 14 },		// 87 bits per transform
+			{ 12, 4, 13 },		// 87 bits per transform
+			{ 12, 5, 12 },		// 87 bits per transform
+			{ 12, 6, 11 },		// 87 bits per transform
+			{ 12, 7, 10 },		// 87 bits per transform
+			{ 12, 8, 9 },		// 87 bits per transform
+			{ 12, 9, 8 },		// 87 bits per transform
+			{ 12, 10, 7 },		// 87 bits per transform
+			{ 12, 11, 6 },		// 87 bits per transform
+			{ 12, 12, 5 },		// 87 bits per transform
+			{ 12, 13, 4 },		// 87 bits per transform
+			{ 12, 14, 3 },		// 87 bits per transform
+			{ 12, 15, 2 },		// 87 bits per transform
+			{ 12, 16, 1 },		// 87 bits per transform
+			{ 12, 17, 0 },		// 87 bits per transform
+			{ 13, 0, 16 },		// 87 bits per transform
+			{ 13, 1, 15 },		// 87 bits per transform
+			{ 13, 2, 14 },		// 87 bits per transform
+			{ 13, 3, 13 },		// 87 bits per transform
+			{ 13, 4, 12 },		// 87 bits per transform
+			{ 13, 5, 11 },		// 87 bits per transform
+			{ 13, 6, 10 },		// 87 bits per transform
+			{ 13, 7, 9 },		// 87 bits per transform
+			{ 13, 8, 8 },		// 87 bits per transform
+			{ 13, 9, 7 },		// 87 bits per transform
+			{ 13, 10, 6 },		// 87 bits per transform
+			{ 13, 11, 5 },		// 87 bits per transform
+			{ 13, 12, 4 },		// 87 bits per transform
+			{ 13, 13, 3 },		// 87 bits per transform
+			{ 13, 14, 2 },		// 87 bits per transform
+			{ 13, 15, 1 },		// 87 bits per transform
+			{ 13, 16, 0 },		// 87 bits per transform
+			{ 14, 0, 15 },		// 87 bits per transform
+			{ 14, 1, 14 },		// 87 bits per transform
+			{ 14, 2, 13 },		// 87 bits per transform
+			{ 14, 3, 12 },		// 87 bits per transform
+			{ 14, 4, 11 },		// 87 bits per transform
+			{ 14, 5, 10 },		// 87 bits per transform
+			{ 14, 6, 9 },		// 87 bits per transform
+			{ 14, 7, 8 },		// 87 bits per transform
+			{ 14, 8, 7 },		// 87 bits per transform
+			{ 14, 9, 6 },		// 87 bits per transform
+			{ 14, 10, 5 },		// 87 bits per transform
+			{ 14, 11, 4 },		// 87 bits per transform
+			{ 14, 12, 3 },		// 87 bits per transform
+			{ 14, 13, 2 },		// 87 bits per transform
+			{ 14, 14, 1 },		// 87 bits per transform
+			{ 14, 15, 0 },		// 87 bits per transform
+			{ 15, 0, 14 },		// 87 bits per transform
+			{ 15, 1, 13 },		// 87 bits per transform
+			{ 15, 2, 12 },		// 87 bits per transform
+			{ 15, 3, 11 },		// 87 bits per transform
+			{ 15, 4, 10 },		// 87 bits per transform
+			{ 15, 5, 9 },		// 87 bits per transform
+			{ 15, 6, 8 },		// 87 bits per transform
+			{ 15, 7, 7 },		// 87 bits per transform
+			{ 15, 8, 6 },		// 87 bits per transform
+			{ 15, 9, 5 },		// 87 bits per transform
+			{ 15, 10, 4 },		// 87 bits per transform
+			{ 15, 11, 3 },		// 87 bits per transform
+			{ 15, 12, 2 },		// 87 bits per transform
+			{ 15, 13, 1 },		// 87 bits per transform
+			{ 15, 14, 0 },		// 87 bits per transform
+			{ 16, 0, 13 },		// 87 bits per transform
+			{ 16, 1, 12 },		// 87 bits per transform
+			{ 16, 2, 11 },		// 87 bits per transform
+			{ 16, 3, 10 },		// 87 bits per transform
+			{ 16, 4, 9 },		// 87 bits per transform
+			{ 16, 5, 8 },		// 87 bits per transform
+			{ 16, 6, 7 },		// 87 bits per transform
+			{ 16, 7, 6 },		// 87 bits per transform
+			{ 16, 8, 5 },		// 87 bits per transform
+			{ 16, 9, 4 },		// 87 bits per transform
+			{ 16, 10, 3 },		// 87 bits per transform
+			{ 16, 11, 2 },		// 87 bits per transform
+			{ 16, 12, 1 },		// 87 bits per transform
+			{ 16, 13, 0 },		// 87 bits per transform
+			{ 17, 0, 12 },		// 87 bits per transform
+			{ 17, 1, 11 },		// 87 bits per transform
+			{ 17, 2, 10 },		// 87 bits per transform
+			{ 17, 3, 9 },		// 87 bits per transform
+			{ 17, 4, 8 },		// 87 bits per transform
+			{ 17, 5, 7 },		// 87 bits per transform
+			{ 17, 6, 6 },		// 87 bits per transform
+			{ 17, 7, 5 },		// 87 bits per transform
+			{ 17, 8, 4 },		// 87 bits per transform
+			{ 17, 9, 3 },		// 87 bits per transform
+			{ 17, 10, 2 },		// 87 bits per transform
+			{ 17, 11, 1 },		// 87 bits per transform
+			{ 17, 12, 0 },		// 87 bits per transform
+			{ 18, 0, 11 },		// 87 bits per transform
+			{ 18, 1, 10 },		// 87 bits per transform
+			{ 18, 2, 9 },		// 87 bits per transform
+			{ 18, 3, 8 },		// 87 bits per transform
+			{ 18, 4, 7 },		// 87 bits per transform
+			{ 18, 5, 6 },		// 87 bits per transform
+			{ 18, 6, 5 },		// 87 bits per transform
+			{ 18, 7, 4 },		// 87 bits per transform
+			{ 18, 8, 3 },		// 87 bits per transform
+			{ 18, 9, 2 },		// 87 bits per transform
+			{ 18, 10, 1 },		// 87 bits per transform
+			{ 18, 11, 0 },		// 87 bits per transform
+			{ 19, 0, 10 },		// 87 bits per transform
+			{ 19, 1, 9 },		// 87 bits per transform
+			{ 19, 2, 8 },		// 87 bits per transform
+			{ 19, 3, 7 },		// 87 bits per transform
+			{ 19, 4, 6 },		// 87 bits per transform
+			{ 19, 5, 5 },		// 87 bits per transform
+			{ 19, 6, 4 },		// 87 bits per transform
+			{ 19, 7, 3 },		// 87 bits per transform
+			{ 19, 8, 2 },		// 87 bits per transform
+			{ 19, 9, 1 },		// 87 bits per transform
+			{ 19, 10, 0 },		// 87 bits per transform
+			{ 20, 0, 9 },		// 87 bits per transform
+			{ 20, 1, 8 },		// 87 bits per transform
+			{ 20, 2, 7 },		// 87 bits per transform
+			{ 20, 3, 6 },		// 87 bits per transform
+			{ 20, 4, 5 },		// 87 bits per transform
+			{ 20, 5, 4 },		// 87 bits per transform
+			{ 20, 6, 3 },		// 87 bits per transform
+			{ 20, 7, 2 },		// 87 bits per transform
+			{ 20, 8, 1 },		// 87 bits per transform
+			{ 20, 9, 0 },		// 87 bits per transform
+			{ 21, 0, 8 },		// 87 bits per transform
+			{ 21, 1, 7 },		// 87 bits per transform
+			{ 21, 2, 6 },		// 87 bits per transform
+			{ 21, 3, 5 },		// 87 bits per transform
+			{ 21, 4, 4 },		// 87 bits per transform
+			{ 21, 5, 3 },		// 87 bits per transform
+			{ 21, 6, 2 },		// 87 bits per transform
+			{ 21, 7, 1 },		// 87 bits per transform
+			{ 21, 8, 0 },		// 87 bits per transform
+			{ 22, 0, 7 },		// 87 bits per transform
+			{ 22, 1, 6 },		// 87 bits per transform
+			{ 22, 2, 5 },		// 87 bits per transform
+			{ 22, 3, 4 },		// 87 bits per transform
+			{ 22, 4, 3 },		// 87 bits per transform
+			{ 22, 5, 2 },		// 87 bits per transform
+			{ 22, 6, 1 },		// 87 bits per transform
+			{ 22, 7, 0 },		// 87 bits per transform
+			{ 23, 0, 6 },		// 87 bits per transform
+			{ 23, 1, 5 },		// 87 bits per transform
+			{ 23, 2, 4 },		// 87 bits per transform
+			{ 23, 3, 3 },		// 87 bits per transform
+			{ 23, 4, 2 },		// 87 bits per transform
+			{ 23, 5, 1 },		// 87 bits per transform
+			{ 23, 6, 0 },		// 87 bits per transform
+			{ 0, 7, 23 },		// 90 bits per transform
+			{ 0, 8, 22 },		// 90 bits per transform
+			{ 0, 9, 21 },		// 90 bits per transform
+			{ 0, 10, 20 },		// 90 bits per transform
+			{ 0, 11, 19 },		// 90 bits per transform
+			{ 0, 12, 18 },		// 90 bits per transform
+			{ 0, 13, 17 },		// 90 bits per transform
+			{ 0, 14, 16 },		// 90 bits per transform
+			{ 0, 15, 15 },		// 90 bits per transform
+			{ 0, 16, 14 },		// 90 bits per transform
+			{ 0, 17, 13 },		// 90 bits per transform
+			{ 0, 18, 12 },		// 90 bits per transform
+			{ 0, 19, 11 },		// 90 bits per transform
+			{ 0, 20, 10 },		// 90 bits per transform
+			{ 0, 21, 9 },		// 90 bits per transform
+			{ 0, 22, 8 },		// 90 bits per transform
+			{ 0, 23, 7 },		// 90 bits per transform
+			{ 1, 6, 23 },		// 90 bits per transform
+			{ 1, 7, 22 },		// 90 bits per transform
+			{ 1, 8, 21 },		// 90 bits per transform
+			{ 1, 9, 20 },		// 90 bits per transform
+			{ 1, 10, 19 },		// 90 bits per transform
+			{ 1, 11, 18 },		// 90 bits per transform
+			{ 1, 12, 17 },		// 90 bits per transform
+			{ 1, 13, 16 },		// 90 bits per transform
+			{ 1, 14, 15 },		// 90 bits per transform
+			{ 1, 15, 14 },		// 90 bits per transform
+			{ 1, 16, 13 },		// 90 bits per transform
+			{ 1, 17, 12 },		// 90 bits per transform
+			{ 1, 18, 11 },		// 90 bits per transform
+			{ 1, 19, 10 },		// 90 bits per transform
+			{ 1, 20, 9 },		// 90 bits per transform
+			{ 1, 21, 8 },		// 90 bits per transform
+			{ 1, 22, 7 },		// 90 bits per transform
+			{ 1, 23, 6 },		// 90 bits per transform
+			{ 2, 5, 23 },		// 90 bits per transform
+			{ 2, 6, 22 },		// 90 bits per transform
+			{ 2, 7, 21 },		// 90 bits per transform
+			{ 2, 8, 20 },		// 90 bits per transform
+			{ 2, 9, 19 },		// 90 bits per transform
+			{ 2, 10, 18 },		// 90 bits per transform
+			{ 2, 11, 17 },		// 90 bits per transform
+			{ 2, 12, 16 },		// 90 bits per transform
+			{ 2, 13, 15 },		// 90 bits per transform
+			{ 2, 14, 14 },		// 90 bits per transform
+			{ 2, 15, 13 },		// 90 bits per transform
+			{ 2, 16, 12 },		// 90 bits per transform
+			{ 2, 17, 11 },		// 90 bits per transform
+			{ 2, 18, 10 },		// 90 bits per transform
+			{ 2, 19, 9 },		// 90 bits per transform
+			{ 2, 20, 8 },		// 90 bits per transform
+			{ 2, 21, 7 },		// 90 bits per transform
+			{ 2, 22, 6 },		// 90 bits per transform
+			{ 2, 23, 5 },		// 90 bits per transform
+			{ 3, 4, 23 },		// 90 bits per transform
+			{ 3, 5, 22 },		// 90 bits per transform
+			{ 3, 6, 21 },		// 90 bits per transform
+			{ 3, 7, 20 },		// 90 bits per transform
+			{ 3, 8, 19 },		// 90 bits per transform
+			{ 3, 9, 18 },		// 90 bits per transform
+			{ 3, 10, 17 },		// 90 bits per transform
+			{ 3, 11, 16 },		// 90 bits per transform
+			{ 3, 12, 15 },		// 90 bits per transform
+			{ 3, 13, 14 },		// 90 bits per transform
+			{ 3, 14, 13 },		// 90 bits per transform
+			{ 3, 15, 12 },		// 90 bits per transform
+			{ 3, 16, 11 },		// 90 bits per transform
+			{ 3, 17, 10 },		// 90 bits per transform
+			{ 3, 18, 9 },		// 90 bits per transform
+			{ 3, 19, 8 },		// 90 bits per transform
+			{ 3, 20, 7 },		// 90 bits per transform
+			{ 3, 21, 6 },		// 90 bits per transform
+			{ 3, 22, 5 },		// 90 bits per transform
+			{ 3, 23, 4 },		// 90 bits per transform
+			{ 4, 3, 23 },		// 90 bits per transform
+			{ 4, 4, 22 },		// 90 bits per transform
+			{ 4, 5, 21 },		// 90 bits per transform
+			{ 4, 6, 20 },		// 90 bits per transform
+			{ 4, 7, 19 },		// 90 bits per transform
+			{ 4, 8, 18 },		// 90 bits per transform
+			{ 4, 9, 17 },		// 90 bits per transform
+			{ 4, 10, 16 },		// 90 bits per transform
+			{ 4, 11, 15 },		// 90 bits per transform
+			{ 4, 12, 14 },		// 90 bits per transform
+			{ 4, 13, 13 },		// 90 bits per transform
+			{ 4, 14, 12 },		// 90 bits per transform
+			{ 4, 15, 11 },		// 90 bits per transform
+			{ 4, 16, 10 },		// 90 bits per transform
+			{ 4, 17, 9 },		// 90 bits per transform
+			{ 4, 18, 8 },		// 90 bits per transform
+			{ 4, 19, 7 },		// 90 bits per transform
+			{ 4, 20, 6 },		// 90 bits per transform
+			{ 4, 21, 5 },		// 90 bits per transform
+			{ 4, 22, 4 },		// 90 bits per transform
+			{ 4, 23, 3 },		// 90 bits per transform
+			{ 5, 2, 23 },		// 90 bits per transform
+			{ 5, 3, 22 },		// 90 bits per transform
+			{ 5, 4, 21 },		// 90 bits per transform
+			{ 5, 5, 20 },		// 90 bits per transform
+			{ 5, 6, 19 },		// 90 bits per transform
+			{ 5, 7, 18 },		// 90 bits per transform
+			{ 5, 8, 17 },		// 90 bits per transform
+			{ 5, 9, 16 },		// 90 bits per transform
+			{ 5, 10, 15 },		// 90 bits per transform
+			{ 5, 11, 14 },		// 90 bits per transform
+			{ 5, 12, 13 },		// 90 bits per transform
+			{ 5, 13, 12 },		// 90 bits per transform
+			{ 5, 14, 11 },		// 90 bits per transform
+			{ 5, 15, 10 },		// 90 bits per transform
+			{ 5, 16, 9 },		// 90 bits per transform
+			{ 5, 17, 8 },		// 90 bits per transform
+			{ 5, 18, 7 },		// 90 bits per transform
+			{ 5, 19, 6 },		// 90 bits per transform
+			{ 5, 20, 5 },		// 90 bits per transform
+			{ 5, 21, 4 },		// 90 bits per transform
+			{ 5, 22, 3 },		// 90 bits per transform
+			{ 5, 23, 2 },		// 90 bits per transform
+			{ 6, 1, 23 },		// 90 bits per transform
+			{ 6, 2, 22 },		// 90 bits per transform
+			{ 6, 3, 21 },		// 90 bits per transform
+			{ 6, 4, 20 },		// 90 bits per transform
+			{ 6, 5, 19 },		// 90 bits per transform
+			{ 6, 6, 18 },		// 90 bits per transform
+			{ 6, 7, 17 },		// 90 bits per transform
+			{ 6, 8, 16 },		// 90 bits per transform
+			{ 6, 9, 15 },		// 90 bits per transform
+			{ 6, 10, 14 },		// 90 bits per transform
+			{ 6, 11, 13 },		// 90 bits per transform
+			{ 6, 12, 12 },		// 90 bits per transform
+			{ 6, 13, 11 },		// 90 bits per transform
+			{ 6, 14, 10 },		// 90 bits per transform
+			{ 6, 15, 9 },		// 90 bits per transform
+			{ 6, 16, 8 },		// 90 bits per transform
+			{ 6, 17, 7 },		// 90 bits per transform
+			{ 6, 18, 6 },		// 90 bits per transform
+			{ 6, 19, 5 },		// 90 bits per transform
+			{ 6, 20, 4 },		// 90 bits per transform
+			{ 6, 21, 3 },		// 90 bits per transform
+			{ 6, 22, 2 },		// 90 bits per transform
+			{ 6, 23, 1 },		// 90 bits per transform
+			{ 7, 0, 23 },		// 90 bits per transform
+			{ 7, 1, 22 },		// 90 bits per transform
+			{ 7, 2, 21 },		// 90 bits per transform
+			{ 7, 3, 20 },		// 90 bits per transform
+			{ 7, 4, 19 },		// 90 bits per transform
+			{ 7, 5, 18 },		// 90 bits per transform
+			{ 7, 6, 17 },		// 90 bits per transform
+			{ 7, 7, 16 },		// 90 bits per transform
+			{ 7, 8, 15 },		// 90 bits per transform
+			{ 7, 9, 14 },		// 90 bits per transform
+			{ 7, 10, 13 },		// 90 bits per transform
+			{ 7, 11, 12 },		// 90 bits per transform
+			{ 7, 12, 11 },		// 90 bits per transform
+			{ 7, 13, 10 },		// 90 bits per transform
+			{ 7, 14, 9 },		// 90 bits per transform
+			{ 7, 15, 8 },		// 90 bits per transform
+			{ 7, 16, 7 },		// 90 bits per transform
+			{ 7, 17, 6 },		// 90 bits per transform
+			{ 7, 18, 5 },		// 90 bits per transform
+			{ 7, 19, 4 },		// 90 bits per transform
+			{ 7, 20, 3 },		// 90 bits per transform
+			{ 7, 21, 2 },		// 90 bits per transform
+			{ 7, 22, 1 },		// 90 bits per transform
+			{ 7, 23, 0 },		// 90 bits per transform
+			{ 8, 0, 22 },		// 90 bits per transform
+			{ 8, 1, 21 },		// 90 bits per transform
+			{ 8, 2, 20 },		// 90 bits per transform
+			{ 8, 3, 19 },		// 90 bits per transform
+			{ 8, 4, 18 },		// 90 bits per transform
+			{ 8, 5, 17 },		// 90 bits per transform
+			{ 8, 6, 16 },		// 90 bits per transform
+			{ 8, 7, 15 },		// 90 bits per transform
+			{ 8, 8, 14 },		// 90 bits per transform
+			{ 8, 9, 13 },		// 90 bits per transform
+			{ 8, 10, 12 },		// 90 bits per transform
+			{ 8, 11, 11 },		// 90 bits per transform
+			{ 8, 12, 10 },		// 90 bits per transform
+			{ 8, 13, 9 },		// 90 bits per transform
+			{ 8, 14, 8 },		// 90 bits per transform
+			{ 8, 15, 7 },		// 90 bits per transform
+			{ 8, 16, 6 },		// 90 bits per transform
+			{ 8, 17, 5 },		// 90 bits per transform
+			{ 8, 18, 4 },		// 90 bits per transform
+			{ 8, 19, 3 },		// 90 bits per transform
+			{ 8, 20, 2 },		// 90 bits per transform
+			{ 8, 21, 1 },		// 90 bits per transform
+			{ 8, 22, 0 },		// 90 bits per transform
+			{ 9, 0, 21 },		// 90 bits per transform
+			{ 9, 1, 20 },		// 90 bits per transform
+			{ 9, 2, 19 },		// 90 bits per transform
+			{ 9, 3, 18 },		// 90 bits per transform
+			{ 9, 4, 17 },		// 90 bits per transform
+			{ 9, 5, 16 },		// 90 bits per transform
+			{ 9, 6, 15 },		// 90 bits per transform
+			{ 9, 7, 14 },		// 90 bits per transform
+			{ 9, 8, 13 },		// 90 bits per transform
+			{ 9, 9, 12 },		// 90 bits per transform
+			{ 9, 10, 11 },		// 90 bits per transform
+			{ 9, 11, 10 },		// 90 bits per transform
+			{ 9, 12, 9 },		// 90 bits per transform
+			{ 9, 13, 8 },		// 90 bits per transform
+			{ 9, 14, 7 },		// 90 bits per transform
+			{ 9, 15, 6 },		// 90 bits per transform
+			{ 9, 16, 5 },		// 90 bits per transform
+			{ 9, 17, 4 },		// 90 bits per transform
+			{ 9, 18, 3 },		// 90 bits per transform
+			{ 9, 19, 2 },		// 90 bits per transform
+			{ 9, 20, 1 },		// 90 bits per transform
+			{ 9, 21, 0 },		// 90 bits per transform
+			{ 10, 0, 20 },		// 90 bits per transform
+			{ 10, 1, 19 },		// 90 bits per transform
+			{ 10, 2, 18 },		// 90 bits per transform
+			{ 10, 3, 17 },		// 90 bits per transform
+			{ 10, 4, 16 },		// 90 bits per transform
+			{ 10, 5, 15 },		// 90 bits per transform
+			{ 10, 6, 14 },		// 90 bits per transform
+			{ 10, 7, 13 },		// 90 bits per transform
+			{ 10, 8, 12 },		// 90 bits per transform
+			{ 10, 9, 11 },		// 90 bits per transform
+			{ 10, 10, 10 },		// 90 bits per transform
+			{ 10, 11, 9 },		// 90 bits per transform
+			{ 10, 12, 8 },		// 90 bits per transform
+			{ 10, 13, 7 },		// 90 bits per transform
+			{ 10, 14, 6 },		// 90 bits per transform
+			{ 10, 15, 5 },		// 90 bits per transform
+			{ 10, 16, 4 },		// 90 bits per transform
+			{ 10, 17, 3 },		// 90 bits per transform
+			{ 10, 18, 2 },		// 90 bits per transform
+			{ 10, 19, 1 },		// 90 bits per transform
+			{ 10, 20, 0 },		// 90 bits per transform
+			{ 11, 0, 19 },		// 90 bits per transform
+			{ 11, 1, 18 },		// 90 bits per transform
+			{ 11, 2, 17 },		// 90 bits per transform
+			{ 11, 3, 16 },		// 90 bits per transform
+			{ 11, 4, 15 },		// 90 bits per transform
+			{ 11, 5, 14 },		// 90 bits per transform
+			{ 11, 6, 13 },		// 90 bits per transform
+			{ 11, 7, 12 },		// 90 bits per transform
+			{ 11, 8, 11 },		// 90 bits per transform
+			{ 11, 9, 10 },		// 90 bits per transform
+			{ 11, 10, 9 },		// 90 bits per transform
+			{ 11, 11, 8 },		// 90 bits per transform
+			{ 11, 12, 7 },		// 90 bits per transform
+			{ 11, 13, 6 },		// 90 bits per transform
+			{ 11, 14, 5 },		// 90 bits per transform
+			{ 11, 15, 4 },		// 90 bits per transform
+			{ 11, 16, 3 },		// 90 bits per transform
+			{ 11, 17, 2 },		// 90 bits per transform
+			{ 11, 18, 1 },		// 90 bits per transform
+			{ 11, 19, 0 },		// 90 bits per transform
+			{ 12, 0, 18 },		// 90 bits per transform
+			{ 12, 1, 17 },		// 90 bits per transform
+			{ 12, 2, 16 },		// 90 bits per transform
+			{ 12, 3, 15 },		// 90 bits per transform
+			{ 12, 4, 14 },		// 90 bits per transform
+			{ 12, 5, 13 },		// 90 bits per transform
+			{ 12, 6, 12 },		// 90 bits per transform
+			{ 12, 7, 11 },		// 90 bits per transform
+			{ 12, 8, 10 },		// 90 bits per transform
+			{ 12, 9, 9 },		// 90 bits per transform
+			{ 12, 10, 8 },		// 90 bits per transform
+			{ 12, 11, 7 },		// 90 bits per transform
+			{ 12, 12, 6 },		// 90 bits per transform
+			{ 12, 13, 5 },		// 90 bits per transform
+			{ 12, 14, 4 },		// 90 bits per transform
+			{ 12, 15, 3 },		// 90 bits per transform
+			{ 12, 16, 2 },		// 90 bits per transform
+			{ 12, 17, 1 },		// 90 bits per transform
+			{ 12, 18, 0 },		// 90 bits per transform
+			{ 13, 0, 17 },		// 90 bits per transform
+			{ 13, 1, 16 },		// 90 bits per transform
+			{ 13, 2, 15 },		// 90 bits per transform
+			{ 13, 3, 14 },		// 90 bits per transform
+			{ 13, 4, 13 },		// 90 bits per transform
+			{ 13, 5, 12 },		// 90 bits per transform
+			{ 13, 6, 11 },		// 90 bits per transform
+			{ 13, 7, 10 },		// 90 bits per transform
+			{ 13, 8, 9 },		// 90 bits per transform
+			{ 13, 9, 8 },		// 90 bits per transform
+			{ 13, 10, 7 },		// 90 bits per transform
+			{ 13, 11, 6 },		// 90 bits per transform
+			{ 13, 12, 5 },		// 90 bits per transform
+			{ 13, 13, 4 },		// 90 bits per transform
+			{ 13, 14, 3 },		// 90 bits per transform
+			{ 13, 15, 2 },		// 90 bits per transform
+			{ 13, 16, 1 },		// 90 bits per transform
+			{ 13, 17, 0 },		// 90 bits per transform
+			{ 14, 0, 16 },		// 90 bits per transform
+			{ 14, 1, 15 },		// 90 bits per transform
+			{ 14, 2, 14 },		// 90 bits per transform
+			{ 14, 3, 13 },		// 90 bits per transform
+			{ 14, 4, 12 },		// 90 bits per transform
+			{ 14, 5, 11 },		// 90 bits per transform
+			{ 14, 6, 10 },		// 90 bits per transform
+			{ 14, 7, 9 },		// 90 bits per transform
+			{ 14, 8, 8 },		// 90 bits per transform
+			{ 14, 9, 7 },		// 90 bits per transform
+			{ 14, 10, 6 },		// 90 bits per transform
+			{ 14, 11, 5 },		// 90 bits per transform
+			{ 14, 12, 4 },		// 90 bits per transform
+			{ 14, 13, 3 },		// 90 bits per transform
+			{ 14, 14, 2 },		// 90 bits per transform
+			{ 14, 15, 1 },		// 90 bits per transform
+			{ 14, 16, 0 },		// 90 bits per transform
+			{ 15, 0, 15 },		// 90 bits per transform
+			{ 15, 1, 14 },		// 90 bits per transform
+			{ 15, 2, 13 },		// 90 bits per transform
+			{ 15, 3, 12 },		// 90 bits per transform
+			{ 15, 4, 11 },		// 90 bits per transform
+			{ 15, 5, 10 },		// 90 bits per transform
+			{ 15, 6, 9 },		// 90 bits per transform
+			{ 15, 7, 8 },		// 90 bits per transform
+			{ 15, 8, 7 },		// 90 bits per transform
+			{ 15, 9, 6 },		// 90 bits per transform
+			{ 15, 10, 5 },		// 90 bits per transform
+			{ 15, 11, 4 },		// 90 bits per transform
+			{ 15, 12, 3 },		// 90 bits per transform
+			{ 15, 13, 2 },		// 90 bits per transform
+			{ 15, 14, 1 },		// 90 bits per transform
+			{ 15, 15, 0 },		// 90 bits per transform
+			{ 16, 0, 14 },		// 90 bits per transform
+			{ 16, 1, 13 },		// 90 bits per transform
+			{ 16, 2, 12 },		// 90 bits per transform
+			{ 16, 3, 11 },		// 90 bits per transform
+			{ 16, 4, 10 },		// 90 bits per transform
+			{ 16, 5, 9 },		// 90 bits per transform
+			{ 16, 6, 8 },		// 90 bits per transform
+			{ 16, 7, 7 },		// 90 bits per transform
+			{ 16, 8, 6 },		// 90 bits per transform
+			{ 16, 9, 5 },		// 90 bits per transform
+			{ 16, 10, 4 },		// 90 bits per transform
+			{ 16, 11, 3 },		// 90 bits per transform
+			{ 16, 12, 2 },		// 90 bits per transform
+			{ 16, 13, 1 },		// 90 bits per transform
+			{ 16, 14, 0 },		// 90 bits per transform
+			{ 17, 0, 13 },		// 90 bits per transform
+			{ 17, 1, 12 },		// 90 bits per transform
+			{ 17, 2, 11 },		// 90 bits per transform
+			{ 17, 3, 10 },		// 90 bits per transform
+			{ 17, 4, 9 },		// 90 bits per transform
+			{ 17, 5, 8 },		// 90 bits per transform
+			{ 17, 6, 7 },		// 90 bits per transform
+			{ 17, 7, 6 },		// 90 bits per transform
+			{ 17, 8, 5 },		// 90 bits per transform
+			{ 17, 9, 4 },		// 90 bits per transform
+			{ 17, 10, 3 },		// 90 bits per transform
+			{ 17, 11, 2 },		// 90 bits per transform
+			{ 17, 12, 1 },		// 90 bits per transform
+			{ 17, 13, 0 },		// 90 bits per transform
+			{ 18, 0, 12 },		// 90 bits per transform
+			{ 18, 1, 11 },		// 90 bits per transform
+			{ 18, 2, 10 },		// 90 bits per transform
+			{ 18, 3, 9 },		// 90 bits per transform
+			{ 18, 4, 8 },		// 90 bits per transform
+			{ 18, 5, 7 },		// 90 bits per transform
+			{ 18, 6, 6 },		// 90 bits per transform
+			{ 18, 7, 5 },		// 90 bits per transform
+			{ 18, 8, 4 },		// 90 bits per transform
+			{ 18, 9, 3 },		// 90 bits per transform
+			{ 18, 10, 2 },		// 90 bits per transform
+			{ 18, 11, 1 },		// 90 bits per transform
+			{ 18, 12, 0 },		// 90 bits per transform
+			{ 19, 0, 11 },		// 90 bits per transform
+			{ 19, 1, 10 },		// 90 bits per transform
+			{ 19, 2, 9 },		// 90 bits per transform
+			{ 19, 3, 8 },		// 90 bits per transform
+			{ 19, 4, 7 },		// 90 bits per transform
+			{ 19, 5, 6 },		// 90 bits per transform
+			{ 19, 6, 5 },		// 90 bits per transform
+			{ 19, 7, 4 },		// 90 bits per transform
+			{ 19, 8, 3 },		// 90 bits per transform
+			{ 19, 9, 2 },		// 90 bits per transform
+			{ 19, 10, 1 },		// 90 bits per transform
+			{ 19, 11, 0 },		// 90 bits per transform
+			{ 20, 0, 10 },		// 90 bits per transform
+			{ 20, 1, 9 },		// 90 bits per transform
+			{ 20, 2, 8 },		// 90 bits per transform
+			{ 20, 3, 7 },		// 90 bits per transform
+			{ 20, 4, 6 },		// 90 bits per transform
+			{ 20, 5, 5 },		// 90 bits per transform
+			{ 20, 6, 4 },		// 90 bits per transform
+			{ 20, 7, 3 },		// 90 bits per transform
+			{ 20, 8, 2 },		// 90 bits per transform
+			{ 20, 9, 1 },		// 90 bits per transform
+			{ 20, 10, 0 },		// 90 bits per transform
+			{ 21, 0, 9 },		// 90 bits per transform
+			{ 21, 1, 8 },		// 90 bits per transform
+			{ 21, 2, 7 },		// 90 bits per transform
+			{ 21, 3, 6 },		// 90 bits per transform
+			{ 21, 4, 5 },		// 90 bits per transform
+			{ 21, 5, 4 },		// 90 bits per transform
+			{ 21, 6, 3 },		// 90 bits per transform
+			{ 21, 7, 2 },		// 90 bits per transform
+			{ 21, 8, 1 },		// 90 bits per transform
+			{ 21, 9, 0 },		// 90 bits per transform
+			{ 22, 0, 8 },		// 90 bits per transform
+			{ 22, 1, 7 },		// 90 bits per transform
+			{ 22, 2, 6 },		// 90 bits per transform
+			{ 22, 3, 5 },		// 90 bits per transform
+			{ 22, 4, 4 },		// 90 bits per transform
+			{ 22, 5, 3 },		// 90 bits per transform
+			{ 22, 6, 2 },		// 90 bits per transform
+			{ 22, 7, 1 },		// 90 bits per transform
+			{ 22, 8, 0 },		// 90 bits per transform
+			{ 23, 0, 7 },		// 90 bits per transform
+			{ 23, 1, 6 },		// 90 bits per transform
+			{ 23, 2, 5 },		// 90 bits per transform
+			{ 23, 3, 4 },		// 90 bits per transform
+			{ 23, 4, 3 },		// 90 bits per transform
+			{ 23, 5, 2 },		// 90 bits per transform
+			{ 23, 6, 1 },		// 90 bits per transform
+			{ 23, 7, 0 },		// 90 bits per transform
+			{ 0, 8, 23 },		// 93 bits per transform
+			{ 0, 9, 22 },		// 93 bits per transform
+			{ 0, 10, 21 },		// 93 bits per transform
+			{ 0, 11, 20 },		// 93 bits per transform
+			{ 0, 12, 19 },		// 93 bits per transform
+			{ 0, 13, 18 },		// 93 bits per transform
+			{ 0, 14, 17 },		// 93 bits per transform
+			{ 0, 15, 16 },		// 93 bits per transform
+			{ 0, 16, 15 },		// 93 bits per transform
+			{ 0, 17, 14 },		// 93 bits per transform
+			{ 0, 18, 13 },		// 93 bits per transform
+			{ 0, 19, 12 },		// 93 bits per transform
+			{ 0, 20, 11 },		// 93 bits per transform
+			{ 0, 21, 10 },		// 93 bits per transform
+			{ 0, 22, 9 },		// 93 bits per transform
+			{ 0, 23, 8 },		// 93 bits per transform
+			{ 1, 7, 23 },		// 93 bits per transform
+			{ 1, 8, 22 },		// 93 bits per transform
+			{ 1, 9, 21 },		// 93 bits per transform
+			{ 1, 10, 20 },		// 93 bits per transform
+			{ 1, 11, 19 },		// 93 bits per transform
+			{ 1, 12, 18 },		// 93 bits per transform
+			{ 1, 13, 17 },		// 93 bits per transform
+			{ 1, 14, 16 },		// 93 bits per transform
+			{ 1, 15, 15 },		// 93 bits per transform
+			{ 1, 16, 14 },		// 93 bits per transform
+			{ 1, 17, 13 },		// 93 bits per transform
+			{ 1, 18, 12 },		// 93 bits per transform
+			{ 1, 19, 11 },		// 93 bits per transform
+			{ 1, 20, 10 },		// 93 bits per transform
+			{ 1, 21, 9 },		// 93 bits per transform
+			{ 1, 22, 8 },		// 93 bits per transform
+			{ 1, 23, 7 },		// 93 bits per transform
+			{ 2, 6, 23 },		// 93 bits per transform
+			{ 2, 7, 22 },		// 93 bits per transform
+			{ 2, 8, 21 },		// 93 bits per transform
+			{ 2, 9, 20 },		// 93 bits per transform
+			{ 2, 10, 19 },		// 93 bits per transform
+			{ 2, 11, 18 },		// 93 bits per transform
+			{ 2, 12, 17 },		// 93 bits per transform
+			{ 2, 13, 16 },		// 93 bits per transform
+			{ 2, 14, 15 },		// 93 bits per transform
+			{ 2, 15, 14 },		// 93 bits per transform
+			{ 2, 16, 13 },		// 93 bits per transform
+			{ 2, 17, 12 },		// 93 bits per transform
+			{ 2, 18, 11 },		// 93 bits per transform
+			{ 2, 19, 10 },		// 93 bits per transform
+			{ 2, 20, 9 },		// 93 bits per transform
+			{ 2, 21, 8 },		// 93 bits per transform
+			{ 2, 22, 7 },		// 93 bits per transform
+			{ 2, 23, 6 },		// 93 bits per transform
+			{ 3, 5, 23 },		// 93 bits per transform
+			{ 3, 6, 22 },		// 93 bits per transform
+			{ 3, 7, 21 },		// 93 bits per transform
+			{ 3, 8, 20 },		// 93 bits per transform
+			{ 3, 9, 19 },		// 93 bits per transform
+			{ 3, 10, 18 },		// 93 bits per transform
+			{ 3, 11, 17 },		// 93 bits per transform
+			{ 3, 12, 16 },		// 93 bits per transform
+			{ 3, 13, 15 },		// 93 bits per transform
+			{ 3, 14, 14 },		// 93 bits per transform
+			{ 3, 15, 13 },		// 93 bits per transform
+			{ 3, 16, 12 },		// 93 bits per transform
+			{ 3, 17, 11 },		// 93 bits per transform
+			{ 3, 18, 10 },		// 93 bits per transform
+			{ 3, 19, 9 },		// 93 bits per transform
+			{ 3, 20, 8 },		// 93 bits per transform
+			{ 3, 21, 7 },		// 93 bits per transform
+			{ 3, 22, 6 },		// 93 bits per transform
+			{ 3, 23, 5 },		// 93 bits per transform
+			{ 4, 4, 23 },		// 93 bits per transform
+			{ 4, 5, 22 },		// 93 bits per transform
+			{ 4, 6, 21 },		// 93 bits per transform
+			{ 4, 7, 20 },		// 93 bits per transform
+			{ 4, 8, 19 },		// 93 bits per transform
+			{ 4, 9, 18 },		// 93 bits per transform
+			{ 4, 10, 17 },		// 93 bits per transform
+			{ 4, 11, 16 },		// 93 bits per transform
+			{ 4, 12, 15 },		// 93 bits per transform
+			{ 4, 13, 14 },		// 93 bits per transform
+			{ 4, 14, 13 },		// 93 bits per transform
+			{ 4, 15, 12 },		// 93 bits per transform
+			{ 4, 16, 11 },		// 93 bits per transform
+			{ 4, 17, 10 },		// 93 bits per transform
+			{ 4, 18, 9 },		// 93 bits per transform
+			{ 4, 19, 8 },		// 93 bits per transform
+			{ 4, 20, 7 },		// 93 bits per transform
+			{ 4, 21, 6 },		// 93 bits per transform
+			{ 4, 22, 5 },		// 93 bits per transform
+			{ 4, 23, 4 },		// 93 bits per transform
+			{ 5, 3, 23 },		// 93 bits per transform
+			{ 5, 4, 22 },		// 93 bits per transform
+			{ 5, 5, 21 },		// 93 bits per transform
+			{ 5, 6, 20 },		// 93 bits per transform
+			{ 5, 7, 19 },		// 93 bits per transform
+			{ 5, 8, 18 },		// 93 bits per transform
+			{ 5, 9, 17 },		// 93 bits per transform
+			{ 5, 10, 16 },		// 93 bits per transform
+			{ 5, 11, 15 },		// 93 bits per transform
+			{ 5, 12, 14 },		// 93 bits per transform
+			{ 5, 13, 13 },		// 93 bits per transform
+			{ 5, 14, 12 },		// 93 bits per transform
+			{ 5, 15, 11 },		// 93 bits per transform
+			{ 5, 16, 10 },		// 93 bits per transform
+			{ 5, 17, 9 },		// 93 bits per transform
+			{ 5, 18, 8 },		// 93 bits per transform
+			{ 5, 19, 7 },		// 93 bits per transform
+			{ 5, 20, 6 },		// 93 bits per transform
+			{ 5, 21, 5 },		// 93 bits per transform
+			{ 5, 22, 4 },		// 93 bits per transform
+			{ 5, 23, 3 },		// 93 bits per transform
+			{ 6, 2, 23 },		// 93 bits per transform
+			{ 6, 3, 22 },		// 93 bits per transform
+			{ 6, 4, 21 },		// 93 bits per transform
+			{ 6, 5, 20 },		// 93 bits per transform
+			{ 6, 6, 19 },		// 93 bits per transform
+			{ 6, 7, 18 },		// 93 bits per transform
+			{ 6, 8, 17 },		// 93 bits per transform
+			{ 6, 9, 16 },		// 93 bits per transform
+			{ 6, 10, 15 },		// 93 bits per transform
+			{ 6, 11, 14 },		// 93 bits per transform
+			{ 6, 12, 13 },		// 93 bits per transform
+			{ 6, 13, 12 },		// 93 bits per transform
+			{ 6, 14, 11 },		// 93 bits per transform
+			{ 6, 15, 10 },		// 93 bits per transform
+			{ 6, 16, 9 },		// 93 bits per transform
+			{ 6, 17, 8 },		// 93 bits per transform
+			{ 6, 18, 7 },		// 93 bits per transform
+			{ 6, 19, 6 },		// 93 bits per transform
+			{ 6, 20, 5 },		// 93 bits per transform
+			{ 6, 21, 4 },		// 93 bits per transform
+			{ 6, 22, 3 },		// 93 bits per transform
+			{ 6, 23, 2 },		// 93 bits per transform
+			{ 7, 1, 23 },		// 93 bits per transform
+			{ 7, 2, 22 },		// 93 bits per transform
+			{ 7, 3, 21 },		// 93 bits per transform
+			{ 7, 4, 20 },		// 93 bits per transform
+			{ 7, 5, 19 },		// 93 bits per transform
+			{ 7, 6, 18 },		// 93 bits per transform
+			{ 7, 7, 17 },		// 93 bits per transform
+			{ 7, 8, 16 },		// 93 bits per transform
+			{ 7, 9, 15 },		// 93 bits per transform
+			{ 7, 10, 14 },		// 93 bits per transform
+			{ 7, 11, 13 },		// 93 bits per transform
+			{ 7, 12, 12 },		// 93 bits per transform
+			{ 7, 13, 11 },		// 93 bits per transform
+			{ 7, 14, 10 },		// 93 bits per transform
+			{ 7, 15, 9 },		// 93 bits per transform
+			{ 7, 16, 8 },		// 93 bits per transform
+			{ 7, 17, 7 },		// 93 bits per transform
+			{ 7, 18, 6 },		// 93 bits per transform
+			{ 7, 19, 5 },		// 93 bits per transform
+			{ 7, 20, 4 },		// 93 bits per transform
+			{ 7, 21, 3 },		// 93 bits per transform
+			{ 7, 22, 2 },		// 93 bits per transform
+			{ 7, 23, 1 },		// 93 bits per transform
+			{ 8, 0, 23 },		// 93 bits per transform
+			{ 8, 1, 22 },		// 93 bits per transform
+			{ 8, 2, 21 },		// 93 bits per transform
+			{ 8, 3, 20 },		// 93 bits per transform
+			{ 8, 4, 19 },		// 93 bits per transform
+			{ 8, 5, 18 },		// 93 bits per transform
+			{ 8, 6, 17 },		// 93 bits per transform
+			{ 8, 7, 16 },		// 93 bits per transform
+			{ 8, 8, 15 },		// 93 bits per transform
+			{ 8, 9, 14 },		// 93 bits per transform
+			{ 8, 10, 13 },		// 93 bits per transform
+			{ 8, 11, 12 },		// 93 bits per transform
+			{ 8, 12, 11 },		// 93 bits per transform
+			{ 8, 13, 10 },		// 93 bits per transform
+			{ 8, 14, 9 },		// 93 bits per transform
+			{ 8, 15, 8 },		// 93 bits per transform
+			{ 8, 16, 7 },		// 93 bits per transform
+			{ 8, 17, 6 },		// 93 bits per transform
+			{ 8, 18, 5 },		// 93 bits per transform
+			{ 8, 19, 4 },		// 93 bits per transform
+			{ 8, 20, 3 },		// 93 bits per transform
+			{ 8, 21, 2 },		// 93 bits per transform
+			{ 8, 22, 1 },		// 93 bits per transform
+			{ 8, 23, 0 },		// 93 bits per transform
+			{ 9, 0, 22 },		// 93 bits per transform
+			{ 9, 1, 21 },		// 93 bits per transform
+			{ 9, 2, 20 },		// 93 bits per transform
+			{ 9, 3, 19 },		// 93 bits per transform
+			{ 9, 4, 18 },		// 93 bits per transform
+			{ 9, 5, 17 },		// 93 bits per transform
+			{ 9, 6, 16 },		// 93 bits per transform
+			{ 9, 7, 15 },		// 93 bits per transform
+			{ 9, 8, 14 },		// 93 bits per transform
+			{ 9, 9, 13 },		// 93 bits per transform
+			{ 9, 10, 12 },		// 93 bits per transform
+			{ 9, 11, 11 },		// 93 bits per transform
+			{ 9, 12, 10 },		// 93 bits per transform
+			{ 9, 13, 9 },		// 93 bits per transform
+			{ 9, 14, 8 },		// 93 bits per transform
+			{ 9, 15, 7 },		// 93 bits per transform
+			{ 9, 16, 6 },		// 93 bits per transform
+			{ 9, 17, 5 },		// 93 bits per transform
+			{ 9, 18, 4 },		// 93 bits per transform
+			{ 9, 19, 3 },		// 93 bits per transform
+			{ 9, 20, 2 },		// 93 bits per transform
+			{ 9, 21, 1 },		// 93 bits per transform
+			{ 9, 22, 0 },		// 93 bits per transform
+			{ 10, 0, 21 },		// 93 bits per transform
+			{ 10, 1, 20 },		// 93 bits per transform
+			{ 10, 2, 19 },		// 93 bits per transform
+			{ 10, 3, 18 },		// 93 bits per transform
+			{ 10, 4, 17 },		// 93 bits per transform
+			{ 10, 5, 16 },		// 93 bits per transform
+			{ 10, 6, 15 },		// 93 bits per transform
+			{ 10, 7, 14 },		// 93 bits per transform
+			{ 10, 8, 13 },		// 93 bits per transform
+			{ 10, 9, 12 },		// 93 bits per transform
+			{ 10, 10, 11 },		// 93 bits per transform
+			{ 10, 11, 10 },		// 93 bits per transform
+			{ 10, 12, 9 },		// 93 bits per transform
+			{ 10, 13, 8 },		// 93 bits per transform
+			{ 10, 14, 7 },		// 93 bits per transform
+			{ 10, 15, 6 },		// 93 bits per transform
+			{ 10, 16, 5 },		// 93 bits per transform
+			{ 10, 17, 4 },		// 93 bits per transform
+			{ 10, 18, 3 },		// 93 bits per transform
+			{ 10, 19, 2 },		// 93 bits per transform
+			{ 10, 20, 1 },		// 93 bits per transform
+			{ 10, 21, 0 },		// 93 bits per transform
+			{ 11, 0, 20 },		// 93 bits per transform
+			{ 11, 1, 19 },		// 93 bits per transform
+			{ 11, 2, 18 },		// 93 bits per transform
+			{ 11, 3, 17 },		// 93 bits per transform
+			{ 11, 4, 16 },		// 93 bits per transform
+			{ 11, 5, 15 },		// 93 bits per transform
+			{ 11, 6, 14 },		// 93 bits per transform
+			{ 11, 7, 13 },		// 93 bits per transform
+			{ 11, 8, 12 },		// 93 bits per transform
+			{ 11, 9, 11 },		// 93 bits per transform
+			{ 11, 10, 10 },		// 93 bits per transform
+			{ 11, 11, 9 },		// 93 bits per transform
+			{ 11, 12, 8 },		// 93 bits per transform
+			{ 11, 13, 7 },		// 93 bits per transform
+			{ 11, 14, 6 },		// 93 bits per transform
+			{ 11, 15, 5 },		// 93 bits per transform
+			{ 11, 16, 4 },		// 93 bits per transform
+			{ 11, 17, 3 },		// 93 bits per transform
+			{ 11, 18, 2 },		// 93 bits per transform
+			{ 11, 19, 1 },		// 93 bits per transform
+			{ 11, 20, 0 },		// 93 bits per transform
+			{ 12, 0, 19 },		// 93 bits per transform
+			{ 12, 1, 18 },		// 93 bits per transform
+			{ 12, 2, 17 },		// 93 bits per transform
+			{ 12, 3, 16 },		// 93 bits per transform
+			{ 12, 4, 15 },		// 93 bits per transform
+			{ 12, 5, 14 },		// 93 bits per transform
+			{ 12, 6, 13 },		// 93 bits per transform
+			{ 12, 7, 12 },		// 93 bits per transform
+			{ 12, 8, 11 },		// 93 bits per transform
+			{ 12, 9, 10 },		// 93 bits per transform
+			{ 12, 10, 9 },		// 93 bits per transform
+			{ 12, 11, 8 },		// 93 bits per transform
+			{ 12, 12, 7 },		// 93 bits per transform
+			{ 12, 13, 6 },		// 93 bits per transform
+			{ 12, 14, 5 },		// 93 bits per transform
+			{ 12, 15, 4 },		// 93 bits per transform
+			{ 12, 16, 3 },		// 93 bits per transform
+			{ 12, 17, 2 },		// 93 bits per transform
+			{ 12, 18, 1 },		// 93 bits per transform
+			{ 12, 19, 0 },		// 93 bits per transform
+			{ 13, 0, 18 },		// 93 bits per transform
+			{ 13, 1, 17 },		// 93 bits per transform
+			{ 13, 2, 16 },		// 93 bits per transform
+			{ 13, 3, 15 },		// 93 bits per transform
+			{ 13, 4, 14 },		// 93 bits per transform
+			{ 13, 5, 13 },		// 93 bits per transform
+			{ 13, 6, 12 },		// 93 bits per transform
+			{ 13, 7, 11 },		// 93 bits per transform
+			{ 13, 8, 10 },		// 93 bits per transform
+			{ 13, 9, 9 },		// 93 bits per transform
+			{ 13, 10, 8 },		// 93 bits per transform
+			{ 13, 11, 7 },		// 93 bits per transform
+			{ 13, 12, 6 },		// 93 bits per transform
+			{ 13, 13, 5 },		// 93 bits per transform
+			{ 13, 14, 4 },		// 93 bits per transform
+			{ 13, 15, 3 },		// 93 bits per transform
+			{ 13, 16, 2 },		// 93 bits per transform
+			{ 13, 17, 1 },		// 93 bits per transform
+			{ 13, 18, 0 },		// 93 bits per transform
+			{ 14, 0, 17 },		// 93 bits per transform
+			{ 14, 1, 16 },		// 93 bits per transform
+			{ 14, 2, 15 },		// 93 bits per transform
+			{ 14, 3, 14 },		// 93 bits per transform
+			{ 14, 4, 13 },		// 93 bits per transform
+			{ 14, 5, 12 },		// 93 bits per transform
+			{ 14, 6, 11 },		// 93 bits per transform
+			{ 14, 7, 10 },		// 93 bits per transform
+			{ 14, 8, 9 },		// 93 bits per transform
+			{ 14, 9, 8 },		// 93 bits per transform
+			{ 14, 10, 7 },		// 93 bits per transform
+			{ 14, 11, 6 },		// 93 bits per transform
+			{ 14, 12, 5 },		// 93 bits per transform
+			{ 14, 13, 4 },		// 93 bits per transform
+			{ 14, 14, 3 },		// 93 bits per transform
+			{ 14, 15, 2 },		// 93 bits per transform
+			{ 14, 16, 1 },		// 93 bits per transform
+			{ 14, 17, 0 },		// 93 bits per transform
+			{ 15, 0, 16 },		// 93 bits per transform
+			{ 15, 1, 15 },		// 93 bits per transform
+			{ 15, 2, 14 },		// 93 bits per transform
+			{ 15, 3, 13 },		// 93 bits per transform
+			{ 15, 4, 12 },		// 93 bits per transform
+			{ 15, 5, 11 },		// 93 bits per transform
+			{ 15, 6, 10 },		// 93 bits per transform
+			{ 15, 7, 9 },		// 93 bits per transform
+			{ 15, 8, 8 },		// 93 bits per transform
+			{ 15, 9, 7 },		// 93 bits per transform
+			{ 15, 10, 6 },		// 93 bits per transform
+			{ 15, 11, 5 },		// 93 bits per transform
+			{ 15, 12, 4 },		// 93 bits per transform
+			{ 15, 13, 3 },		// 93 bits per transform
+			{ 15, 14, 2 },		// 93 bits per transform
+			{ 15, 15, 1 },		// 93 bits per transform
+			{ 15, 16, 0 },		// 93 bits per transform
+			{ 16, 0, 15 },		// 93 bits per transform
+			{ 16, 1, 14 },		// 93 bits per transform
+			{ 16, 2, 13 },		// 93 bits per transform
+			{ 16, 3, 12 },		// 93 bits per transform
+			{ 16, 4, 11 },		// 93 bits per transform
+			{ 16, 5, 10 },		// 93 bits per transform
+			{ 16, 6, 9 },		// 93 bits per transform
+			{ 16, 7, 8 },		// 93 bits per transform
+			{ 16, 8, 7 },		// 93 bits per transform
+			{ 16, 9, 6 },		// 93 bits per transform
+			{ 16, 10, 5 },		// 93 bits per transform
+			{ 16, 11, 4 },		// 93 bits per transform
+			{ 16, 12, 3 },		// 93 bits per transform
+			{ 16, 13, 2 },		// 93 bits per transform
+			{ 16, 14, 1 },		// 93 bits per transform
+			{ 16, 15, 0 },		// 93 bits per transform
+			{ 17, 0, 14 },		// 93 bits per transform
+			{ 17, 1, 13 },		// 93 bits per transform
+			{ 17, 2, 12 },		// 93 bits per transform
+			{ 17, 3, 11 },		// 93 bits per transform
+			{ 17, 4, 10 },		// 93 bits per transform
+			{ 17, 5, 9 },		// 93 bits per transform
+			{ 17, 6, 8 },		// 93 bits per transform
+			{ 17, 7, 7 },		// 93 bits per transform
+			{ 17, 8, 6 },		// 93 bits per transform
+			{ 17, 9, 5 },		// 93 bits per transform
+			{ 17, 10, 4 },		// 93 bits per transform
+			{ 17, 11, 3 },		// 93 bits per transform
+			{ 17, 12, 2 },		// 93 bits per transform
+			{ 17, 13, 1 },		// 93 bits per transform
+			{ 17, 14, 0 },		// 93 bits per transform
+			{ 18, 0, 13 },		// 93 bits per transform
+			{ 18, 1, 12 },		// 93 bits per transform
+			{ 18, 2, 11 },		// 93 bits per transform
+			{ 18, 3, 10 },		// 93 bits per transform
+			{ 18, 4, 9 },		// 93 bits per transform
+			{ 18, 5, 8 },		// 93 bits per transform
+			{ 18, 6, 7 },		// 93 bits per transform
+			{ 18, 7, 6 },		// 93 bits per transform
+			{ 18, 8, 5 },		// 93 bits per transform
+			{ 18, 9, 4 },		// 93 bits per transform
+			{ 18, 10, 3 },		// 93 bits per transform
+			{ 18, 11, 2 },		// 93 bits per transform
+			{ 18, 12, 1 },		// 93 bits per transform
+			{ 18, 13, 0 },		// 93 bits per transform
+			{ 19, 0, 12 },		// 93 bits per transform
+			{ 19, 1, 11 },		// 93 bits per transform
+			{ 19, 2, 10 },		// 93 bits per transform
+			{ 19, 3, 9 },		// 93 bits per transform
+			{ 19, 4, 8 },		// 93 bits per transform
+			{ 19, 5, 7 },		// 93 bits per transform
+			{ 19, 6, 6 },		// 93 bits per transform
+			{ 19, 7, 5 },		// 93 bits per transform
+			{ 19, 8, 4 },		// 93 bits per transform
+			{ 19, 9, 3 },		// 93 bits per transform
+			{ 19, 10, 2 },		// 93 bits per transform
+			{ 19, 11, 1 },		// 93 bits per transform
+			{ 19, 12, 0 },		// 93 bits per transform
+			{ 20, 0, 11 },		// 93 bits per transform
+			{ 20, 1, 10 },		// 93 bits per transform
+			{ 20, 2, 9 },		// 93 bits per transform
+			{ 20, 3, 8 },		// 93 bits per transform
+			{ 20, 4, 7 },		// 93 bits per transform
+			{ 20, 5, 6 },		// 93 bits per transform
+			{ 20, 6, 5 },		// 93 bits per transform
+			{ 20, 7, 4 },		// 93 bits per transform
+			{ 20, 8, 3 },		// 93 bits per transform
+			{ 20, 9, 2 },		// 93 bits per transform
+			{ 20, 10, 1 },		// 93 bits per transform
+			{ 20, 11, 0 },		// 93 bits per transform
+			{ 21, 0, 10 },		// 93 bits per transform
+			{ 21, 1, 9 },		// 93 bits per transform
+			{ 21, 2, 8 },		// 93 bits per transform
+			{ 21, 3, 7 },		// 93 bits per transform
+			{ 21, 4, 6 },		// 93 bits per transform
+			{ 21, 5, 5 },		// 93 bits per transform
+			{ 21, 6, 4 },		// 93 bits per transform
+			{ 21, 7, 3 },		// 93 bits per transform
+			{ 21, 8, 2 },		// 93 bits per transform
+			{ 21, 9, 1 },		// 93 bits per transform
+			{ 21, 10, 0 },		// 93 bits per transform
+			{ 22, 0, 9 },		// 93 bits per transform
+			{ 22, 1, 8 },		// 93 bits per transform
+			{ 22, 2, 7 },		// 93 bits per transform
+			{ 22, 3, 6 },		// 93 bits per transform
+			{ 22, 4, 5 },		// 93 bits per transform
+			{ 22, 5, 4 },		// 93 bits per transform
+			{ 22, 6, 3 },		// 93 bits per transform
+			{ 22, 7, 2 },		// 93 bits per transform
+			{ 22, 8, 1 },		// 93 bits per transform
+			{ 22, 9, 0 },		// 93 bits per transform
+			{ 23, 0, 8 },		// 93 bits per transform
+			{ 23, 1, 7 },		// 93 bits per transform
+			{ 23, 2, 6 },		// 93 bits per transform
+			{ 23, 3, 5 },		// 93 bits per transform
+			{ 23, 4, 4 },		// 93 bits per transform
+			{ 23, 5, 3 },		// 93 bits per transform
+			{ 23, 6, 2 },		// 93 bits per transform
+			{ 23, 7, 1 },		// 93 bits per transform
+			{ 23, 8, 0 },		// 93 bits per transform
+			{ 0, 0, 24 },		// 96 bits per transform
+			{ 0, 9, 23 },		// 96 bits per transform
+			{ 0, 10, 22 },		// 96 bits per transform
+			{ 0, 11, 21 },		// 96 bits per transform
+			{ 0, 12, 20 },		// 96 bits per transform
+			{ 0, 13, 19 },		// 96 bits per transform
+			{ 0, 14, 18 },		// 96 bits per transform
+			{ 0, 15, 17 },		// 96 bits per transform
+			{ 0, 16, 16 },		// 96 bits per transform
+			{ 0, 17, 15 },		// 96 bits per transform
+			{ 0, 18, 14 },		// 96 bits per transform
+			{ 0, 19, 13 },		// 96 bits per transform
+			{ 0, 20, 12 },		// 96 bits per transform
+			{ 0, 21, 11 },		// 96 bits per transform
+			{ 0, 22, 10 },		// 96 bits per transform
+			{ 0, 23, 9 },		// 96 bits per transform
+			{ 0, 24, 0 },		// 96 bits per transform
+			{ 1, 8, 23 },		// 96 bits per transform
+			{ 1, 9, 22 },		// 96 bits per transform
+			{ 1, 10, 21 },		// 96 bits per transform
+			{ 1, 11, 20 },		// 96 bits per transform
+			{ 1, 12, 19 },		// 96 bits per transform
+			{ 1, 13, 18 },		// 96 bits per transform
+			{ 1, 14, 17 },		// 96 bits per transform
+			{ 1, 15, 16 },		// 96 bits per transform
+			{ 1, 16, 15 },		// 96 bits per transform
+			{ 1, 17, 14 },		// 96 bits per transform
+			{ 1, 18, 13 },		// 96 bits per transform
+			{ 1, 19, 12 },		// 96 bits per transform
+			{ 1, 20, 11 },		// 96 bits per transform
+			{ 1, 21, 10 },		// 96 bits per transform
+			{ 1, 22, 9 },		// 96 bits per transform
+			{ 1, 23, 8 },		// 96 bits per transform
+			{ 2, 7, 23 },		// 96 bits per transform
+			{ 2, 8, 22 },		// 96 bits per transform
+			{ 2, 9, 21 },		// 96 bits per transform
+			{ 2, 10, 20 },		// 96 bits per transform
+			{ 2, 11, 19 },		// 96 bits per transform
+			{ 2, 12, 18 },		// 96 bits per transform
+			{ 2, 13, 17 },		// 96 bits per transform
+			{ 2, 14, 16 },		// 96 bits per transform
+			{ 2, 15, 15 },		// 96 bits per transform
+			{ 2, 16, 14 },		// 96 bits per transform
+			{ 2, 17, 13 },		// 96 bits per transform
+			{ 2, 18, 12 },		// 96 bits per transform
+			{ 2, 19, 11 },		// 96 bits per transform
+			{ 2, 20, 10 },		// 96 bits per transform
+			{ 2, 21, 9 },		// 96 bits per transform
+			{ 2, 22, 8 },		// 96 bits per transform
+			{ 2, 23, 7 },		// 96 bits per transform
+			{ 3, 6, 23 },		// 96 bits per transform
+			{ 3, 7, 22 },		// 96 bits per transform
+			{ 3, 8, 21 },		// 96 bits per transform
+			{ 3, 9, 20 },		// 96 bits per transform
+			{ 3, 10, 19 },		// 96 bits per transform
+			{ 3, 11, 18 },		// 96 bits per transform
+			{ 3, 12, 17 },		// 96 bits per transform
+			{ 3, 13, 16 },		// 96 bits per transform
+			{ 3, 14, 15 },		// 96 bits per transform
+			{ 3, 15, 14 },		// 96 bits per transform
+			{ 3, 16, 13 },		// 96 bits per transform
+			{ 3, 17, 12 },		// 96 bits per transform
+			{ 3, 18, 11 },		// 96 bits per transform
+			{ 3, 19, 10 },		// 96 bits per transform
+			{ 3, 20, 9 },		// 96 bits per transform
+			{ 3, 21, 8 },		// 96 bits per transform
+			{ 3, 22, 7 },		// 96 bits per transform
+			{ 3, 23, 6 },		// 96 bits per transform
+			{ 4, 5, 23 },		// 96 bits per transform
+			{ 4, 6, 22 },		// 96 bits per transform
+			{ 4, 7, 21 },		// 96 bits per transform
+			{ 4, 8, 20 },		// 96 bits per transform
+			{ 4, 9, 19 },		// 96 bits per transform
+			{ 4, 10, 18 },		// 96 bits per transform
+			{ 4, 11, 17 },		// 96 bits per transform
+			{ 4, 12, 16 },		// 96 bits per transform
+			{ 4, 13, 15 },		// 96 bits per transform
+			{ 4, 14, 14 },		// 96 bits per transform
+			{ 4, 15, 13 },		// 96 bits per transform
+			{ 4, 16, 12 },		// 96 bits per transform
+			{ 4, 17, 11 },		// 96 bits per transform
+			{ 4, 18, 10 },		// 96 bits per transform
+			{ 4, 19, 9 },		// 96 bits per transform
+			{ 4, 20, 8 },		// 96 bits per transform
+			{ 4, 21, 7 },		// 96 bits per transform
+			{ 4, 22, 6 },		// 96 bits per transform
+			{ 4, 23, 5 },		// 96 bits per transform
+			{ 5, 4, 23 },		// 96 bits per transform
+			{ 5, 5, 22 },		// 96 bits per transform
+			{ 5, 6, 21 },		// 96 bits per transform
+			{ 5, 7, 20 },		// 96 bits per transform
+			{ 5, 8, 19 },		// 96 bits per transform
+			{ 5, 9, 18 },		// 96 bits per transform
+			{ 5, 10, 17 },		// 96 bits per transform
+			{ 5, 11, 16 },		// 96 bits per transform
+			{ 5, 12, 15 },		// 96 bits per transform
+			{ 5, 13, 14 },		// 96 bits per transform
+			{ 5, 14, 13 },		// 96 bits per transform
+			{ 5, 15, 12 },		// 96 bits per transform
+			{ 5, 16, 11 },		// 96 bits per transform
+			{ 5, 17, 10 },		// 96 bits per transform
+			{ 5, 18, 9 },		// 96 bits per transform
+			{ 5, 19, 8 },		// 96 bits per transform
+			{ 5, 20, 7 },		// 96 bits per transform
+			{ 5, 21, 6 },		// 96 bits per transform
+			{ 5, 22, 5 },		// 96 bits per transform
+			{ 5, 23, 4 },		// 96 bits per transform
+			{ 6, 3, 23 },		// 96 bits per transform
+			{ 6, 4, 22 },		// 96 bits per transform
+			{ 6, 5, 21 },		// 96 bits per transform
+			{ 6, 6, 20 },		// 96 bits per transform
+			{ 6, 7, 19 },		// 96 bits per transform
+			{ 6, 8, 18 },		// 96 bits per transform
+			{ 6, 9, 17 },		// 96 bits per transform
+			{ 6, 10, 16 },		// 96 bits per transform
+			{ 6, 11, 15 },		// 96 bits per transform
+			{ 6, 12, 14 },		// 96 bits per transform
+			{ 6, 13, 13 },		// 96 bits per transform
+			{ 6, 14, 12 },		// 96 bits per transform
+			{ 6, 15, 11 },		// 96 bits per transform
+			{ 6, 16, 10 },		// 96 bits per transform
+			{ 6, 17, 9 },		// 96 bits per transform
+			{ 6, 18, 8 },		// 96 bits per transform
+			{ 6, 19, 7 },		// 96 bits per transform
+			{ 6, 20, 6 },		// 96 bits per transform
+			{ 6, 21, 5 },		// 96 bits per transform
+			{ 6, 22, 4 },		// 96 bits per transform
+			{ 6, 23, 3 },		// 96 bits per transform
+			{ 7, 2, 23 },		// 96 bits per transform
+			{ 7, 3, 22 },		// 96 bits per transform
+			{ 7, 4, 21 },		// 96 bits per transform
+			{ 7, 5, 20 },		// 96 bits per transform
+			{ 7, 6, 19 },		// 96 bits per transform
+			{ 7, 7, 18 },		// 96 bits per transform
+			{ 7, 8, 17 },		// 96 bits per transform
+			{ 7, 9, 16 },		// 96 bits per transform
+			{ 7, 10, 15 },		// 96 bits per transform
+			{ 7, 11, 14 },		// 96 bits per transform
+			{ 7, 12, 13 },		// 96 bits per transform
+			{ 7, 13, 12 },		// 96 bits per transform
+			{ 7, 14, 11 },		// 96 bits per transform
+			{ 7, 15, 10 },		// 96 bits per transform
+			{ 7, 16, 9 },		// 96 bits per transform
+			{ 7, 17, 8 },		// 96 bits per transform
+			{ 7, 18, 7 },		// 96 bits per transform
+			{ 7, 19, 6 },		// 96 bits per transform
+			{ 7, 20, 5 },		// 96 bits per transform
+			{ 7, 21, 4 },		// 96 bits per transform
+			{ 7, 22, 3 },		// 96 bits per transform
+			{ 7, 23, 2 },		// 96 bits per transform
+			{ 8, 1, 23 },		// 96 bits per transform
+			{ 8, 2, 22 },		// 96 bits per transform
+			{ 8, 3, 21 },		// 96 bits per transform
+			{ 8, 4, 20 },		// 96 bits per transform
+			{ 8, 5, 19 },		// 96 bits per transform
+			{ 8, 6, 18 },		// 96 bits per transform
+			{ 8, 7, 17 },		// 96 bits per transform
+			{ 8, 8, 16 },		// 96 bits per transform
+			{ 8, 9, 15 },		// 96 bits per transform
+			{ 8, 10, 14 },		// 96 bits per transform
+			{ 8, 11, 13 },		// 96 bits per transform
+			{ 8, 12, 12 },		// 96 bits per transform
+			{ 8, 13, 11 },		// 96 bits per transform
+			{ 8, 14, 10 },		// 96 bits per transform
+			{ 8, 15, 9 },		// 96 bits per transform
+			{ 8, 16, 8 },		// 96 bits per transform
+			{ 8, 17, 7 },		// 96 bits per transform
+			{ 8, 18, 6 },		// 96 bits per transform
+			{ 8, 19, 5 },		// 96 bits per transform
+			{ 8, 20, 4 },		// 96 bits per transform
+			{ 8, 21, 3 },		// 96 bits per transform
+			{ 8, 22, 2 },		// 96 bits per transform
+			{ 8, 23, 1 },		// 96 bits per transform
+			{ 9, 0, 23 },		// 96 bits per transform
+			{ 9, 1, 22 },		// 96 bits per transform
+			{ 9, 2, 21 },		// 96 bits per transform
+			{ 9, 3, 20 },		// 96 bits per transform
+			{ 9, 4, 19 },		// 96 bits per transform
+			{ 9, 5, 18 },		// 96 bits per transform
+			{ 9, 6, 17 },		// 96 bits per transform
+			{ 9, 7, 16 },		// 96 bits per transform
+			{ 9, 8, 15 },		// 96 bits per transform
+			{ 9, 9, 14 },		// 96 bits per transform
+			{ 9, 10, 13 },		// 96 bits per transform
+			{ 9, 11, 12 },		// 96 bits per transform
+			{ 9, 12, 11 },		// 96 bits per transform
+			{ 9, 13, 10 },		// 96 bits per transform
+			{ 9, 14, 9 },		// 96 bits per transform
+			{ 9, 15, 8 },		// 96 bits per transform
+			{ 9, 16, 7 },		// 96 bits per transform
+			{ 9, 17, 6 },		// 96 bits per transform
+			{ 9, 18, 5 },		// 96 bits per transform
+			{ 9, 19, 4 },		// 96 bits per transform
+			{ 9, 20, 3 },		// 96 bits per transform
+			{ 9, 21, 2 },		// 96 bits per transform
+			{ 9, 22, 1 },		// 96 bits per transform
+			{ 9, 23, 0 },		// 96 bits per transform
+			{ 10, 0, 22 },		// 96 bits per transform
+			{ 10, 1, 21 },		// 96 bits per transform
+			{ 10, 2, 20 },		// 96 bits per transform
+			{ 10, 3, 19 },		// 96 bits per transform
+			{ 10, 4, 18 },		// 96 bits per transform
+			{ 10, 5, 17 },		// 96 bits per transform
+			{ 10, 6, 16 },		// 96 bits per transform
+			{ 10, 7, 15 },		// 96 bits per transform
+			{ 10, 8, 14 },		// 96 bits per transform
+			{ 10, 9, 13 },		// 96 bits per transform
+			{ 10, 10, 12 },		// 96 bits per transform
+			{ 10, 11, 11 },		// 96 bits per transform
+			{ 10, 12, 10 },		// 96 bits per transform
+			{ 10, 13, 9 },		// 96 bits per transform
+			{ 10, 14, 8 },		// 96 bits per transform
+			{ 10, 15, 7 },		// 96 bits per transform
+			{ 10, 16, 6 },		// 96 bits per transform
+			{ 10, 17, 5 },		// 96 bits per transform
+			{ 10, 18, 4 },		// 96 bits per transform
+			{ 10, 19, 3 },		// 96 bits per transform
+			{ 10, 20, 2 },		// 96 bits per transform
+			{ 10, 21, 1 },		// 96 bits per transform
+			{ 10, 22, 0 },		// 96 bits per transform
+			{ 11, 0, 21 },		// 96 bits per transform
+			{ 11, 1, 20 },		// 96 bits per transform
+			{ 11, 2, 19 },		// 96 bits per transform
+			{ 11, 3, 18 },		// 96 bits per transform
+			{ 11, 4, 17 },		// 96 bits per transform
+			{ 11, 5, 16 },		// 96 bits per transform
+			{ 11, 6, 15 },		// 96 bits per transform
+			{ 11, 7, 14 },		// 96 bits per transform
+			{ 11, 8, 13 },		// 96 bits per transform
+			{ 11, 9, 12 },		// 96 bits per transform
+			{ 11, 10, 11 },		// 96 bits per transform
+			{ 11, 11, 10 },		// 96 bits per transform
+			{ 11, 12, 9 },		// 96 bits per transform
+			{ 11, 13, 8 },		// 96 bits per transform
+			{ 11, 14, 7 },		// 96 bits per transform
+			{ 11, 15, 6 },		// 96 bits per transform
+			{ 11, 16, 5 },		// 96 bits per transform
+			{ 11, 17, 4 },		// 96 bits per transform
+			{ 11, 18, 3 },		// 96 bits per transform
+			{ 11, 19, 2 },		// 96 bits per transform
+			{ 11, 20, 1 },		// 96 bits per transform
+			{ 11, 21, 0 },		// 96 bits per transform
+			{ 12, 0, 20 },		// 96 bits per transform
+			{ 12, 1, 19 },		// 96 bits per transform
+			{ 12, 2, 18 },		// 96 bits per transform
+			{ 12, 3, 17 },		// 96 bits per transform
+			{ 12, 4, 16 },		// 96 bits per transform
+			{ 12, 5, 15 },		// 96 bits per transform
+			{ 12, 6, 14 },		// 96 bits per transform
+			{ 12, 7, 13 },		// 96 bits per transform
+			{ 12, 8, 12 },		// 96 bits per transform
+			{ 12, 9, 11 },		// 96 bits per transform
+			{ 12, 10, 10 },		// 96 bits per transform
+			{ 12, 11, 9 },		// 96 bits per transform
+			{ 12, 12, 8 },		// 96 bits per transform
+			{ 12, 13, 7 },		// 96 bits per transform
+			{ 12, 14, 6 },		// 96 bits per transform
+			{ 12, 15, 5 },		// 96 bits per transform
+			{ 12, 16, 4 },		// 96 bits per transform
+			{ 12, 17, 3 },		// 96 bits per transform
+			{ 12, 18, 2 },		// 96 bits per transform
+			{ 12, 19, 1 },		// 96 bits per transform
+			{ 12, 20, 0 },		// 96 bits per transform
+			{ 13, 0, 19 },		// 96 bits per transform
+			{ 13, 1, 18 },		// 96 bits per transform
+			{ 13, 2, 17 },		// 96 bits per transform
+			{ 13, 3, 16 },		// 96 bits per transform
+			{ 13, 4, 15 },		// 96 bits per transform
+			{ 13, 5, 14 },		// 96 bits per transform
+			{ 13, 6, 13 },		// 96 bits per transform
+			{ 13, 7, 12 },		// 96 bits per transform
+			{ 13, 8, 11 },		// 96 bits per transform
+			{ 13, 9, 10 },		// 96 bits per transform
+			{ 13, 10, 9 },		// 96 bits per transform
+			{ 13, 11, 8 },		// 96 bits per transform
+			{ 13, 12, 7 },		// 96 bits per transform
+			{ 13, 13, 6 },		// 96 bits per transform
+			{ 13, 14, 5 },		// 96 bits per transform
+			{ 13, 15, 4 },		// 96 bits per transform
+			{ 13, 16, 3 },		// 96 bits per transform
+			{ 13, 17, 2 },		// 96 bits per transform
+			{ 13, 18, 1 },		// 96 bits per transform
+			{ 13, 19, 0 },		// 96 bits per transform
+			{ 14, 0, 18 },		// 96 bits per transform
+			{ 14, 1, 17 },		// 96 bits per transform
+			{ 14, 2, 16 },		// 96 bits per transform
+			{ 14, 3, 15 },		// 96 bits per transform
+			{ 14, 4, 14 },		// 96 bits per transform
+			{ 14, 5, 13 },		// 96 bits per transform
+			{ 14, 6, 12 },		// 96 bits per transform
+			{ 14, 7, 11 },		// 96 bits per transform
+			{ 14, 8, 10 },		// 96 bits per transform
+			{ 14, 9, 9 },		// 96 bits per transform
+			{ 14, 10, 8 },		// 96 bits per transform
+			{ 14, 11, 7 },		// 96 bits per transform
+			{ 14, 12, 6 },		// 96 bits per transform
+			{ 14, 13, 5 },		// 96 bits per transform
+			{ 14, 14, 4 },		// 96 bits per transform
+			{ 14, 15, 3 },		// 96 bits per transform
+			{ 14, 16, 2 },		// 96 bits per transform
+			{ 14, 17, 1 },		// 96 bits per transform
+			{ 14, 18, 0 },		// 96 bits per transform
+			{ 15, 0, 17 },		// 96 bits per transform
+			{ 15, 1, 16 },		// 96 bits per transform
+			{ 15, 2, 15 },		// 96 bits per transform
+			{ 15, 3, 14 },		// 96 bits per transform
+			{ 15, 4, 13 },		// 96 bits per transform
+			{ 15, 5, 12 },		// 96 bits per transform
+			{ 15, 6, 11 },		// 96 bits per transform
+			{ 15, 7, 10 },		// 96 bits per transform
+			{ 15, 8, 9 },		// 96 bits per transform
+			{ 15, 9, 8 },		// 96 bits per transform
+			{ 15, 10, 7 },		// 96 bits per transform
+			{ 15, 11, 6 },		// 96 bits per transform
+			{ 15, 12, 5 },		// 96 bits per transform
+			{ 15, 13, 4 },		// 96 bits per transform
+			{ 15, 14, 3 },		// 96 bits per transform
+			{ 15, 15, 2 },		// 96 bits per transform
+			{ 15, 16, 1 },		// 96 bits per transform
+			{ 15, 17, 0 },		// 96 bits per transform
+			{ 16, 0, 16 },		// 96 bits per transform
+			{ 16, 1, 15 },		// 96 bits per transform
+			{ 16, 2, 14 },		// 96 bits per transform
+			{ 16, 3, 13 },		// 96 bits per transform
+			{ 16, 4, 12 },		// 96 bits per transform
+			{ 16, 5, 11 },		// 96 bits per transform
+			{ 16, 6, 10 },		// 96 bits per transform
+			{ 16, 7, 9 },		// 96 bits per transform
+			{ 16, 8, 8 },		// 96 bits per transform
+			{ 16, 9, 7 },		// 96 bits per transform
+			{ 16, 10, 6 },		// 96 bits per transform
+			{ 16, 11, 5 },		// 96 bits per transform
+			{ 16, 12, 4 },		// 96 bits per transform
+			{ 16, 13, 3 },		// 96 bits per transform
+			{ 16, 14, 2 },		// 96 bits per transform
+			{ 16, 15, 1 },		// 96 bits per transform
+			{ 16, 16, 0 },		// 96 bits per transform
+			{ 17, 0, 15 },		// 96 bits per transform
+			{ 17, 1, 14 },		// 96 bits per transform
+			{ 17, 2, 13 },		// 96 bits per transform
+			{ 17, 3, 12 },		// 96 bits per transform
+			{ 17, 4, 11 },		// 96 bits per transform
+			{ 17, 5, 10 },		// 96 bits per transform
+			{ 17, 6, 9 },		// 96 bits per transform
+			{ 17, 7, 8 },		// 96 bits per transform
+			{ 17, 8, 7 },		// 96 bits per transform
+			{ 17, 9, 6 },		// 96 bits per transform
+			{ 17, 10, 5 },		// 96 bits per transform
+			{ 17, 11, 4 },		// 96 bits per transform
+			{ 17, 12, 3 },		// 96 bits per transform
+			{ 17, 13, 2 },		// 96 bits per transform
+			{ 17, 14, 1 },		// 96 bits per transform
+			{ 17, 15, 0 },		// 96 bits per transform
+			{ 18, 0, 14 },		// 96 bits per transform
+			{ 18, 1, 13 },		// 96 bits per transform
+			{ 18, 2, 12 },		// 96 bits per transform
+			{ 18, 3, 11 },		// 96 bits per transform
+			{ 18, 4, 10 },		// 96 bits per transform
+			{ 18, 5, 9 },		// 96 bits per transform
+			{ 18, 6, 8 },		// 96 bits per transform
+			{ 18, 7, 7 },		// 96 bits per transform
+			{ 18, 8, 6 },		// 96 bits per transform
+			{ 18, 9, 5 },		// 96 bits per transform
+			{ 18, 10, 4 },		// 96 bits per transform
+			{ 18, 11, 3 },		// 96 bits per transform
+			{ 18, 12, 2 },		// 96 bits per transform
+			{ 18, 13, 1 },		// 96 bits per transform
+			{ 18, 14, 0 },		// 96 bits per transform
+			{ 19, 0, 13 },		// 96 bits per transform
+			{ 19, 1, 12 },		// 96 bits per transform
+			{ 19, 2, 11 },		// 96 bits per transform
+			{ 19, 3, 10 },		// 96 bits per transform
+			{ 19, 4, 9 },		// 96 bits per transform
+			{ 19, 5, 8 },		// 96 bits per transform
+			{ 19, 6, 7 },		// 96 bits per transform
+			{ 19, 7, 6 },		// 96 bits per transform
+			{ 19, 8, 5 },		// 96 bits per transform
+			{ 19, 9, 4 },		// 96 bits per transform
+			{ 19, 10, 3 },		// 96 bits per transform
+			{ 19, 11, 2 },		// 96 bits per transform
+			{ 19, 12, 1 },		// 96 bits per transform
+			{ 19, 13, 0 },		// 96 bits per transform
+			{ 20, 0, 12 },		// 96 bits per transform
+			{ 20, 1, 11 },		// 96 bits per transform
+			{ 20, 2, 10 },		// 96 bits per transform
+			{ 20, 3, 9 },		// 96 bits per transform
+			{ 20, 4, 8 },		// 96 bits per transform
+			{ 20, 5, 7 },		// 96 bits per transform
+			{ 20, 6, 6 },		// 96 bits per transform
+			{ 20, 7, 5 },		// 96 bits per transform
+			{ 20, 8, 4 },		// 96 bits per transform
+			{ 20, 9, 3 },		// 96 bits per transform
+			{ 20, 10, 2 },		// 96 bits per transform
+			{ 20, 11, 1 },		// 96 bits per transform
+			{ 20, 12, 0 },		// 96 bits per transform
+			{ 21, 0, 11 },		// 96 bits per transform
+			{ 21, 1, 10 },		// 96 bits per transform
+			{ 21, 2, 9 },		// 96 bits per transform
+			{ 21, 3, 8 },		// 96 bits per transform
+			{ 21, 4, 7 },		// 96 bits per transform
+			{ 21, 5, 6 },		// 96 bits per transform
+			{ 21, 6, 5 },		// 96 bits per transform
+			{ 21, 7, 4 },		// 96 bits per transform
+			{ 21, 8, 3 },		// 96 bits per transform
+			{ 21, 9, 2 },		// 96 bits per transform
+			{ 21, 10, 1 },		// 96 bits per transform
+			{ 21, 11, 0 },		// 96 bits per transform
+			{ 22, 0, 10 },		// 96 bits per transform
+			{ 22, 1, 9 },		// 96 bits per transform
+			{ 22, 2, 8 },		// 96 bits per transform
+			{ 22, 3, 7 },		// 96 bits per transform
+			{ 22, 4, 6 },		// 96 bits per transform
+			{ 22, 5, 5 },		// 96 bits per transform
+			{ 22, 6, 4 },		// 96 bits per transform
+			{ 22, 7, 3 },		// 96 bits per transform
+			{ 22, 8, 2 },		// 96 bits per transform
+			{ 22, 9, 1 },		// 96 bits per transform
+			{ 22, 10, 0 },		// 96 bits per transform
+			{ 23, 0, 9 },		// 96 bits per transform
+			{ 23, 1, 8 },		// 96 bits per transform
+			{ 23, 2, 7 },		// 96 bits per transform
+			{ 23, 3, 6 },		// 96 bits per transform
+			{ 23, 4, 5 },		// 96 bits per transform
+			{ 23, 5, 4 },		// 96 bits per transform
+			{ 23, 6, 3 },		// 96 bits per transform
+			{ 23, 7, 2 },		// 96 bits per transform
+			{ 23, 8, 1 },		// 96 bits per transform
+			{ 23, 9, 0 },		// 96 bits per transform
+			{ 24, 0, 0 },		// 96 bits per transform
+			{ 0, 1, 24 },		// 99 bits per transform
+			{ 0, 10, 23 },		// 99 bits per transform
+			{ 0, 11, 22 },		// 99 bits per transform
+			{ 0, 12, 21 },		// 99 bits per transform
+			{ 0, 13, 20 },		// 99 bits per transform
+			{ 0, 14, 19 },		// 99 bits per transform
+			{ 0, 15, 18 },		// 99 bits per transform
+			{ 0, 16, 17 },		// 99 bits per transform
+			{ 0, 17, 16 },		// 99 bits per transform
+			{ 0, 18, 15 },		// 99 bits per transform
+			{ 0, 19, 14 },		// 99 bits per transform
+			{ 0, 20, 13 },		// 99 bits per transform
+			{ 0, 21, 12 },		// 99 bits per transform
+			{ 0, 22, 11 },		// 99 bits per transform
+			{ 0, 23, 10 },		// 99 bits per transform
+			{ 0, 24, 1 },		// 99 bits per transform
+			{ 1, 0, 24 },		// 99 bits per transform
+			{ 1, 9, 23 },		// 99 bits per transform
+			{ 1, 10, 22 },		// 99 bits per transform
+			{ 1, 11, 21 },		// 99 bits per transform
+			{ 1, 12, 20 },		// 99 bits per transform
+			{ 1, 13, 19 },		// 99 bits per transform
+			{ 1, 14, 18 },		// 99 bits per transform
+			{ 1, 15, 17 },		// 99 bits per transform
+			{ 1, 16, 16 },		// 99 bits per transform
+			{ 1, 17, 15 },		// 99 bits per transform
+			{ 1, 18, 14 },		// 99 bits per transform
+			{ 1, 19, 13 },		// 99 bits per transform
+			{ 1, 20, 12 },		// 99 bits per transform
+			{ 1, 21, 11 },		// 99 bits per transform
+			{ 1, 22, 10 },		// 99 bits per transform
+			{ 1, 23, 9 },		// 99 bits per transform
+			{ 1, 24, 0 },		// 99 bits per transform
+			{ 2, 8, 23 },		// 99 bits per transform
+			{ 2, 9, 22 },		// 99 bits per transform
+			{ 2, 10, 21 },		// 99 bits per transform
+			{ 2, 11, 20 },		// 99 bits per transform
+			{ 2, 12, 19 },		// 99 bits per transform
+			{ 2, 13, 18 },		// 99 bits per transform
+			{ 2, 14, 17 },		// 99 bits per transform
+			{ 2, 15, 16 },		// 99 bits per transform
+			{ 2, 16, 15 },		// 99 bits per transform
+			{ 2, 17, 14 },		// 99 bits per transform
+			{ 2, 18, 13 },		// 99 bits per transform
+			{ 2, 19, 12 },		// 99 bits per transform
+			{ 2, 20, 11 },		// 99 bits per transform
+			{ 2, 21, 10 },		// 99 bits per transform
+			{ 2, 22, 9 },		// 99 bits per transform
+			{ 2, 23, 8 },		// 99 bits per transform
+			{ 3, 7, 23 },		// 99 bits per transform
+			{ 3, 8, 22 },		// 99 bits per transform
+			{ 3, 9, 21 },		// 99 bits per transform
+			{ 3, 10, 20 },		// 99 bits per transform
+			{ 3, 11, 19 },		// 99 bits per transform
+			{ 3, 12, 18 },		// 99 bits per transform
+			{ 3, 13, 17 },		// 99 bits per transform
+			{ 3, 14, 16 },		// 99 bits per transform
+			{ 3, 15, 15 },		// 99 bits per transform
+			{ 3, 16, 14 },		// 99 bits per transform
+			{ 3, 17, 13 },		// 99 bits per transform
+			{ 3, 18, 12 },		// 99 bits per transform
+			{ 3, 19, 11 },		// 99 bits per transform
+			{ 3, 20, 10 },		// 99 bits per transform
+			{ 3, 21, 9 },		// 99 bits per transform
+			{ 3, 22, 8 },		// 99 bits per transform
+			{ 3, 23, 7 },		// 99 bits per transform
+			{ 4, 6, 23 },		// 99 bits per transform
+			{ 4, 7, 22 },		// 99 bits per transform
+			{ 4, 8, 21 },		// 99 bits per transform
+			{ 4, 9, 20 },		// 99 bits per transform
+			{ 4, 10, 19 },		// 99 bits per transform
+			{ 4, 11, 18 },		// 99 bits per transform
+			{ 4, 12, 17 },		// 99 bits per transform
+			{ 4, 13, 16 },		// 99 bits per transform
+			{ 4, 14, 15 },		// 99 bits per transform
+			{ 4, 15, 14 },		// 99 bits per transform
+			{ 4, 16, 13 },		// 99 bits per transform
+			{ 4, 17, 12 },		// 99 bits per transform
+			{ 4, 18, 11 },		// 99 bits per transform
+			{ 4, 19, 10 },		// 99 bits per transform
+			{ 4, 20, 9 },		// 99 bits per transform
+			{ 4, 21, 8 },		// 99 bits per transform
+			{ 4, 22, 7 },		// 99 bits per transform
+			{ 4, 23, 6 },		// 99 bits per transform
+			{ 5, 5, 23 },		// 99 bits per transform
+			{ 5, 6, 22 },		// 99 bits per transform
+			{ 5, 7, 21 },		// 99 bits per transform
+			{ 5, 8, 20 },		// 99 bits per transform
+			{ 5, 9, 19 },		// 99 bits per transform
+			{ 5, 10, 18 },		// 99 bits per transform
+			{ 5, 11, 17 },		// 99 bits per transform
+			{ 5, 12, 16 },		// 99 bits per transform
+			{ 5, 13, 15 },		// 99 bits per transform
+			{ 5, 14, 14 },		// 99 bits per transform
+			{ 5, 15, 13 },		// 99 bits per transform
+			{ 5, 16, 12 },		// 99 bits per transform
+			{ 5, 17, 11 },		// 99 bits per transform
+			{ 5, 18, 10 },		// 99 bits per transform
+			{ 5, 19, 9 },		// 99 bits per transform
+			{ 5, 20, 8 },		// 99 bits per transform
+			{ 5, 21, 7 },		// 99 bits per transform
+			{ 5, 22, 6 },		// 99 bits per transform
+			{ 5, 23, 5 },		// 99 bits per transform
+			{ 6, 4, 23 },		// 99 bits per transform
+			{ 6, 5, 22 },		// 99 bits per transform
+			{ 6, 6, 21 },		// 99 bits per transform
+			{ 6, 7, 20 },		// 99 bits per transform
+			{ 6, 8, 19 },		// 99 bits per transform
+			{ 6, 9, 18 },		// 99 bits per transform
+			{ 6, 10, 17 },		// 99 bits per transform
+			{ 6, 11, 16 },		// 99 bits per transform
+			{ 6, 12, 15 },		// 99 bits per transform
+			{ 6, 13, 14 },		// 99 bits per transform
+			{ 6, 14, 13 },		// 99 bits per transform
+			{ 6, 15, 12 },		// 99 bits per transform
+			{ 6, 16, 11 },		// 99 bits per transform
+			{ 6, 17, 10 },		// 99 bits per transform
+			{ 6, 18, 9 },		// 99 bits per transform
+			{ 6, 19, 8 },		// 99 bits per transform
+			{ 6, 20, 7 },		// 99 bits per transform
+			{ 6, 21, 6 },		// 99 bits per transform
+			{ 6, 22, 5 },		// 99 bits per transform
+			{ 6, 23, 4 },		// 99 bits per transform
+			{ 7, 3, 23 },		// 99 bits per transform
+			{ 7, 4, 22 },		// 99 bits per transform
+			{ 7, 5, 21 },		// 99 bits per transform
+			{ 7, 6, 20 },		// 99 bits per transform
+			{ 7, 7, 19 },		// 99 bits per transform
+			{ 7, 8, 18 },		// 99 bits per transform
+			{ 7, 9, 17 },		// 99 bits per transform
+			{ 7, 10, 16 },		// 99 bits per transform
+			{ 7, 11, 15 },		// 99 bits per transform
+			{ 7, 12, 14 },		// 99 bits per transform
+			{ 7, 13, 13 },		// 99 bits per transform
+			{ 7, 14, 12 },		// 99 bits per transform
+			{ 7, 15, 11 },		// 99 bits per transform
+			{ 7, 16, 10 },		// 99 bits per transform
+			{ 7, 17, 9 },		// 99 bits per transform
+			{ 7, 18, 8 },		// 99 bits per transform
+			{ 7, 19, 7 },		// 99 bits per transform
+			{ 7, 20, 6 },		// 99 bits per transform
+			{ 7, 21, 5 },		// 99 bits per transform
+			{ 7, 22, 4 },		// 99 bits per transform
+			{ 7, 23, 3 },		// 99 bits per transform
+			{ 8, 2, 23 },		// 99 bits per transform
+			{ 8, 3, 22 },		// 99 bits per transform
+			{ 8, 4, 21 },		// 99 bits per transform
+			{ 8, 5, 20 },		// 99 bits per transform
+			{ 8, 6, 19 },		// 99 bits per transform
+			{ 8, 7, 18 },		// 99 bits per transform
+			{ 8, 8, 17 },		// 99 bits per transform
+			{ 8, 9, 16 },		// 99 bits per transform
+			{ 8, 10, 15 },		// 99 bits per transform
+			{ 8, 11, 14 },		// 99 bits per transform
+			{ 8, 12, 13 },		// 99 bits per transform
+			{ 8, 13, 12 },		// 99 bits per transform
+			{ 8, 14, 11 },		// 99 bits per transform
+			{ 8, 15, 10 },		// 99 bits per transform
+			{ 8, 16, 9 },		// 99 bits per transform
+			{ 8, 17, 8 },		// 99 bits per transform
+			{ 8, 18, 7 },		// 99 bits per transform
+			{ 8, 19, 6 },		// 99 bits per transform
+			{ 8, 20, 5 },		// 99 bits per transform
+			{ 8, 21, 4 },		// 99 bits per transform
+			{ 8, 22, 3 },		// 99 bits per transform
+			{ 8, 23, 2 },		// 99 bits per transform
+			{ 9, 1, 23 },		// 99 bits per transform
+			{ 9, 2, 22 },		// 99 bits per transform
+			{ 9, 3, 21 },		// 99 bits per transform
+			{ 9, 4, 20 },		// 99 bits per transform
+			{ 9, 5, 19 },		// 99 bits per transform
+			{ 9, 6, 18 },		// 99 bits per transform
+			{ 9, 7, 17 },		// 99 bits per transform
+			{ 9, 8, 16 },		// 99 bits per transform
+			{ 9, 9, 15 },		// 99 bits per transform
+			{ 9, 10, 14 },		// 99 bits per transform
+			{ 9, 11, 13 },		// 99 bits per transform
+			{ 9, 12, 12 },		// 99 bits per transform
+			{ 9, 13, 11 },		// 99 bits per transform
+			{ 9, 14, 10 },		// 99 bits per transform
+			{ 9, 15, 9 },		// 99 bits per transform
+			{ 9, 16, 8 },		// 99 bits per transform
+			{ 9, 17, 7 },		// 99 bits per transform
+			{ 9, 18, 6 },		// 99 bits per transform
+			{ 9, 19, 5 },		// 99 bits per transform
+			{ 9, 20, 4 },		// 99 bits per transform
+			{ 9, 21, 3 },		// 99 bits per transform
+			{ 9, 22, 2 },		// 99 bits per transform
+			{ 9, 23, 1 },		// 99 bits per transform
+			{ 10, 0, 23 },		// 99 bits per transform
+			{ 10, 1, 22 },		// 99 bits per transform
+			{ 10, 2, 21 },		// 99 bits per transform
+			{ 10, 3, 20 },		// 99 bits per transform
+			{ 10, 4, 19 },		// 99 bits per transform
+			{ 10, 5, 18 },		// 99 bits per transform
+			{ 10, 6, 17 },		// 99 bits per transform
+			{ 10, 7, 16 },		// 99 bits per transform
+			{ 10, 8, 15 },		// 99 bits per transform
+			{ 10, 9, 14 },		// 99 bits per transform
+			{ 10, 10, 13 },		// 99 bits per transform
+			{ 10, 11, 12 },		// 99 bits per transform
+			{ 10, 12, 11 },		// 99 bits per transform
+			{ 10, 13, 10 },		// 99 bits per transform
+			{ 10, 14, 9 },		// 99 bits per transform
+			{ 10, 15, 8 },		// 99 bits per transform
+			{ 10, 16, 7 },		// 99 bits per transform
+			{ 10, 17, 6 },		// 99 bits per transform
+			{ 10, 18, 5 },		// 99 bits per transform
+			{ 10, 19, 4 },		// 99 bits per transform
+			{ 10, 20, 3 },		// 99 bits per transform
+			{ 10, 21, 2 },		// 99 bits per transform
+			{ 10, 22, 1 },		// 99 bits per transform
+			{ 10, 23, 0 },		// 99 bits per transform
+			{ 11, 0, 22 },		// 99 bits per transform
+			{ 11, 1, 21 },		// 99 bits per transform
+			{ 11, 2, 20 },		// 99 bits per transform
+			{ 11, 3, 19 },		// 99 bits per transform
+			{ 11, 4, 18 },		// 99 bits per transform
+			{ 11, 5, 17 },		// 99 bits per transform
+			{ 11, 6, 16 },		// 99 bits per transform
+			{ 11, 7, 15 },		// 99 bits per transform
+			{ 11, 8, 14 },		// 99 bits per transform
+			{ 11, 9, 13 },		// 99 bits per transform
+			{ 11, 10, 12 },		// 99 bits per transform
+			{ 11, 11, 11 },		// 99 bits per transform
+			{ 11, 12, 10 },		// 99 bits per transform
+			{ 11, 13, 9 },		// 99 bits per transform
+			{ 11, 14, 8 },		// 99 bits per transform
+			{ 11, 15, 7 },		// 99 bits per transform
+			{ 11, 16, 6 },		// 99 bits per transform
+			{ 11, 17, 5 },		// 99 bits per transform
+			{ 11, 18, 4 },		// 99 bits per transform
+			{ 11, 19, 3 },		// 99 bits per transform
+			{ 11, 20, 2 },		// 99 bits per transform
+			{ 11, 21, 1 },		// 99 bits per transform
+			{ 11, 22, 0 },		// 99 bits per transform
+			{ 12, 0, 21 },		// 99 bits per transform
+			{ 12, 1, 20 },		// 99 bits per transform
+			{ 12, 2, 19 },		// 99 bits per transform
+			{ 12, 3, 18 },		// 99 bits per transform
+			{ 12, 4, 17 },		// 99 bits per transform
+			{ 12, 5, 16 },		// 99 bits per transform
+			{ 12, 6, 15 },		// 99 bits per transform
+			{ 12, 7, 14 },		// 99 bits per transform
+			{ 12, 8, 13 },		// 99 bits per transform
+			{ 12, 9, 12 },		// 99 bits per transform
+			{ 12, 10, 11 },		// 99 bits per transform
+			{ 12, 11, 10 },		// 99 bits per transform
+			{ 12, 12, 9 },		// 99 bits per transform
+			{ 12, 13, 8 },		// 99 bits per transform
+			{ 12, 14, 7 },		// 99 bits per transform
+			{ 12, 15, 6 },		// 99 bits per transform
+			{ 12, 16, 5 },		// 99 bits per transform
+			{ 12, 17, 4 },		// 99 bits per transform
+			{ 12, 18, 3 },		// 99 bits per transform
+			{ 12, 19, 2 },		// 99 bits per transform
+			{ 12, 20, 1 },		// 99 bits per transform
+			{ 12, 21, 0 },		// 99 bits per transform
+			{ 13, 0, 20 },		// 99 bits per transform
+			{ 13, 1, 19 },		// 99 bits per transform
+			{ 13, 2, 18 },		// 99 bits per transform
+			{ 13, 3, 17 },		// 99 bits per transform
+			{ 13, 4, 16 },		// 99 bits per transform
+			{ 13, 5, 15 },		// 99 bits per transform
+			{ 13, 6, 14 },		// 99 bits per transform
+			{ 13, 7, 13 },		// 99 bits per transform
+			{ 13, 8, 12 },		// 99 bits per transform
+			{ 13, 9, 11 },		// 99 bits per transform
+			{ 13, 10, 10 },		// 99 bits per transform
+			{ 13, 11, 9 },		// 99 bits per transform
+			{ 13, 12, 8 },		// 99 bits per transform
+			{ 13, 13, 7 },		// 99 bits per transform
+			{ 13, 14, 6 },		// 99 bits per transform
+			{ 13, 15, 5 },		// 99 bits per transform
+			{ 13, 16, 4 },		// 99 bits per transform
+			{ 13, 17, 3 },		// 99 bits per transform
+			{ 13, 18, 2 },		// 99 bits per transform
+			{ 13, 19, 1 },		// 99 bits per transform
+			{ 13, 20, 0 },		// 99 bits per transform
+			{ 14, 0, 19 },		// 99 bits per transform
+			{ 14, 1, 18 },		// 99 bits per transform
+			{ 14, 2, 17 },		// 99 bits per transform
+			{ 14, 3, 16 },		// 99 bits per transform
+			{ 14, 4, 15 },		// 99 bits per transform
+			{ 14, 5, 14 },		// 99 bits per transform
+			{ 14, 6, 13 },		// 99 bits per transform
+			{ 14, 7, 12 },		// 99 bits per transform
+			{ 14, 8, 11 },		// 99 bits per transform
+			{ 14, 9, 10 },		// 99 bits per transform
+			{ 14, 10, 9 },		// 99 bits per transform
+			{ 14, 11, 8 },		// 99 bits per transform
+			{ 14, 12, 7 },		// 99 bits per transform
+			{ 14, 13, 6 },		// 99 bits per transform
+			{ 14, 14, 5 },		// 99 bits per transform
+			{ 14, 15, 4 },		// 99 bits per transform
+			{ 14, 16, 3 },		// 99 bits per transform
+			{ 14, 17, 2 },		// 99 bits per transform
+			{ 14, 18, 1 },		// 99 bits per transform
+			{ 14, 19, 0 },		// 99 bits per transform
+			{ 15, 0, 18 },		// 99 bits per transform
+			{ 15, 1, 17 },		// 99 bits per transform
+			{ 15, 2, 16 },		// 99 bits per transform
+			{ 15, 3, 15 },		// 99 bits per transform
+			{ 15, 4, 14 },		// 99 bits per transform
+			{ 15, 5, 13 },		// 99 bits per transform
+			{ 15, 6, 12 },		// 99 bits per transform
+			{ 15, 7, 11 },		// 99 bits per transform
+			{ 15, 8, 10 },		// 99 bits per transform
+			{ 15, 9, 9 },		// 99 bits per transform
+			{ 15, 10, 8 },		// 99 bits per transform
+			{ 15, 11, 7 },		// 99 bits per transform
+			{ 15, 12, 6 },		// 99 bits per transform
+			{ 15, 13, 5 },		// 99 bits per transform
+			{ 15, 14, 4 },		// 99 bits per transform
+			{ 15, 15, 3 },		// 99 bits per transform
+			{ 15, 16, 2 },		// 99 bits per transform
+			{ 15, 17, 1 },		// 99 bits per transform
+			{ 15, 18, 0 },		// 99 bits per transform
+			{ 16, 0, 17 },		// 99 bits per transform
+			{ 16, 1, 16 },		// 99 bits per transform
+			{ 16, 2, 15 },		// 99 bits per transform
+			{ 16, 3, 14 },		// 99 bits per transform
+			{ 16, 4, 13 },		// 99 bits per transform
+			{ 16, 5, 12 },		// 99 bits per transform
+			{ 16, 6, 11 },		// 99 bits per transform
+			{ 16, 7, 10 },		// 99 bits per transform
+			{ 16, 8, 9 },		// 99 bits per transform
+			{ 16, 9, 8 },		// 99 bits per transform
+			{ 16, 10, 7 },		// 99 bits per transform
+			{ 16, 11, 6 },		// 99 bits per transform
+			{ 16, 12, 5 },		// 99 bits per transform
+			{ 16, 13, 4 },		// 99 bits per transform
+			{ 16, 14, 3 },		// 99 bits per transform
+			{ 16, 15, 2 },		// 99 bits per transform
+			{ 16, 16, 1 },		// 99 bits per transform
+			{ 16, 17, 0 },		// 99 bits per transform
+			{ 17, 0, 16 },		// 99 bits per transform
+			{ 17, 1, 15 },		// 99 bits per transform
+			{ 17, 2, 14 },		// 99 bits per transform
+			{ 17, 3, 13 },		// 99 bits per transform
+			{ 17, 4, 12 },		// 99 bits per transform
+			{ 17, 5, 11 },		// 99 bits per transform
+			{ 17, 6, 10 },		// 99 bits per transform
+			{ 17, 7, 9 },		// 99 bits per transform
+			{ 17, 8, 8 },		// 99 bits per transform
+			{ 17, 9, 7 },		// 99 bits per transform
+			{ 17, 10, 6 },		// 99 bits per transform
+			{ 17, 11, 5 },		// 99 bits per transform
+			{ 17, 12, 4 },		// 99 bits per transform
+			{ 17, 13, 3 },		// 99 bits per transform
+			{ 17, 14, 2 },		// 99 bits per transform
+			{ 17, 15, 1 },		// 99 bits per transform
+			{ 17, 16, 0 },		// 99 bits per transform
+			{ 18, 0, 15 },		// 99 bits per transform
+			{ 18, 1, 14 },		// 99 bits per transform
+			{ 18, 2, 13 },		// 99 bits per transform
+			{ 18, 3, 12 },		// 99 bits per transform
+			{ 18, 4, 11 },		// 99 bits per transform
+			{ 18, 5, 10 },		// 99 bits per transform
+			{ 18, 6, 9 },		// 99 bits per transform
+			{ 18, 7, 8 },		// 99 bits per transform
+			{ 18, 8, 7 },		// 99 bits per transform
+			{ 18, 9, 6 },		// 99 bits per transform
+			{ 18, 10, 5 },		// 99 bits per transform
+			{ 18, 11, 4 },		// 99 bits per transform
+			{ 18, 12, 3 },		// 99 bits per transform
+			{ 18, 13, 2 },		// 99 bits per transform
+			{ 18, 14, 1 },		// 99 bits per transform
+			{ 18, 15, 0 },		// 99 bits per transform
+			{ 19, 0, 14 },		// 99 bits per transform
+			{ 19, 1, 13 },		// 99 bits per transform
+			{ 19, 2, 12 },		// 99 bits per transform
+			{ 19, 3, 11 },		// 99 bits per transform
+			{ 19, 4, 10 },		// 99 bits per transform
+			{ 19, 5, 9 },		// 99 bits per transform
+			{ 19, 6, 8 },		// 99 bits per transform
+			{ 19, 7, 7 },		// 99 bits per transform
+			{ 19, 8, 6 },		// 99 bits per transform
+			{ 19, 9, 5 },		// 99 bits per transform
+			{ 19, 10, 4 },		// 99 bits per transform
+			{ 19, 11, 3 },		// 99 bits per transform
+			{ 19, 12, 2 },		// 99 bits per transform
+			{ 19, 13, 1 },		// 99 bits per transform
+			{ 19, 14, 0 },		// 99 bits per transform
+			{ 20, 0, 13 },		// 99 bits per transform
+			{ 20, 1, 12 },		// 99 bits per transform
+			{ 20, 2, 11 },		// 99 bits per transform
+			{ 20, 3, 10 },		// 99 bits per transform
+			{ 20, 4, 9 },		// 99 bits per transform
+			{ 20, 5, 8 },		// 99 bits per transform
+			{ 20, 6, 7 },		// 99 bits per transform
+			{ 20, 7, 6 },		// 99 bits per transform
+			{ 20, 8, 5 },		// 99 bits per transform
+			{ 20, 9, 4 },		// 99 bits per transform
+			{ 20, 10, 3 },		// 99 bits per transform
+			{ 20, 11, 2 },		// 99 bits per transform
+			{ 20, 12, 1 },		// 99 bits per transform
+			{ 20, 13, 0 },		// 99 bits per transform
+			{ 21, 0, 12 },		// 99 bits per transform
+			{ 21, 1, 11 },		// 99 bits per transform
+			{ 21, 2, 10 },		// 99 bits per transform
+			{ 21, 3, 9 },		// 99 bits per transform
+			{ 21, 4, 8 },		// 99 bits per transform
+			{ 21, 5, 7 },		// 99 bits per transform
+			{ 21, 6, 6 },		// 99 bits per transform
+			{ 21, 7, 5 },		// 99 bits per transform
+			{ 21, 8, 4 },		// 99 bits per transform
+			{ 21, 9, 3 },		// 99 bits per transform
+			{ 21, 10, 2 },		// 99 bits per transform
+			{ 21, 11, 1 },		// 99 bits per transform
+			{ 21, 12, 0 },		// 99 bits per transform
+			{ 22, 0, 11 },		// 99 bits per transform
+			{ 22, 1, 10 },		// 99 bits per transform
+			{ 22, 2, 9 },		// 99 bits per transform
+			{ 22, 3, 8 },		// 99 bits per transform
+			{ 22, 4, 7 },		// 99 bits per transform
+			{ 22, 5, 6 },		// 99 bits per transform
+			{ 22, 6, 5 },		// 99 bits per transform
+			{ 22, 7, 4 },		// 99 bits per transform
+			{ 22, 8, 3 },		// 99 bits per transform
+			{ 22, 9, 2 },		// 99 bits per transform
+			{ 22, 10, 1 },		// 99 bits per transform
+			{ 22, 11, 0 },		// 99 bits per transform
+			{ 23, 0, 10 },		// 99 bits per transform
+			{ 23, 1, 9 },		// 99 bits per transform
+			{ 23, 2, 8 },		// 99 bits per transform
+			{ 23, 3, 7 },		// 99 bits per transform
+			{ 23, 4, 6 },		// 99 bits per transform
+			{ 23, 5, 5 },		// 99 bits per transform
+			{ 23, 6, 4 },		// 99 bits per transform
+			{ 23, 7, 3 },		// 99 bits per transform
+			{ 23, 8, 2 },		// 99 bits per transform
+			{ 23, 9, 1 },		// 99 bits per transform
+			{ 23, 10, 0 },		// 99 bits per transform
+			{ 24, 0, 1 },		// 99 bits per transform
+			{ 24, 1, 0 },		// 99 bits per transform
+			{ 0, 2, 24 },		// 102 bits per transform
+			{ 0, 11, 23 },		// 102 bits per transform
+			{ 0, 12, 22 },		// 102 bits per transform
+			{ 0, 13, 21 },		// 102 bits per transform
+			{ 0, 14, 20 },		// 102 bits per transform
+			{ 0, 15, 19 },		// 102 bits per transform
+			{ 0, 16, 18 },		// 102 bits per transform
+			{ 0, 17, 17 },		// 102 bits per transform
+			{ 0, 18, 16 },		// 102 bits per transform
+			{ 0, 19, 15 },		// 102 bits per transform
+			{ 0, 20, 14 },		// 102 bits per transform
+			{ 0, 21, 13 },		// 102 bits per transform
+			{ 0, 22, 12 },		// 102 bits per transform
+			{ 0, 23, 11 },		// 102 bits per transform
+			{ 0, 24, 2 },		// 102 bits per transform
+			{ 1, 1, 24 },		// 102 bits per transform
+			{ 1, 10, 23 },		// 102 bits per transform
+			{ 1, 11, 22 },		// 102 bits per transform
+			{ 1, 12, 21 },		// 102 bits per transform
+			{ 1, 13, 20 },		// 102 bits per transform
+			{ 1, 14, 19 },		// 102 bits per transform
+			{ 1, 15, 18 },		// 102 bits per transform
+			{ 1, 16, 17 },		// 102 bits per transform
+			{ 1, 17, 16 },		// 102 bits per transform
+			{ 1, 18, 15 },		// 102 bits per transform
+			{ 1, 19, 14 },		// 102 bits per transform
+			{ 1, 20, 13 },		// 102 bits per transform
+			{ 1, 21, 12 },		// 102 bits per transform
+			{ 1, 22, 11 },		// 102 bits per transform
+			{ 1, 23, 10 },		// 102 bits per transform
+			{ 1, 24, 1 },		// 102 bits per transform
+			{ 2, 0, 24 },		// 102 bits per transform
+			{ 2, 9, 23 },		// 102 bits per transform
+			{ 2, 10, 22 },		// 102 bits per transform
+			{ 2, 11, 21 },		// 102 bits per transform
+			{ 2, 12, 20 },		// 102 bits per transform
+			{ 2, 13, 19 },		// 102 bits per transform
+			{ 2, 14, 18 },		// 102 bits per transform
+			{ 2, 15, 17 },		// 102 bits per transform
+			{ 2, 16, 16 },		// 102 bits per transform
+			{ 2, 17, 15 },		// 102 bits per transform
+			{ 2, 18, 14 },		// 102 bits per transform
+			{ 2, 19, 13 },		// 102 bits per transform
+			{ 2, 20, 12 },		// 102 bits per transform
+			{ 2, 21, 11 },		// 102 bits per transform
+			{ 2, 22, 10 },		// 102 bits per transform
+			{ 2, 23, 9 },		// 102 bits per transform
+			{ 2, 24, 0 },		// 102 bits per transform
+			{ 3, 8, 23 },		// 102 bits per transform
+			{ 3, 9, 22 },		// 102 bits per transform
+			{ 3, 10, 21 },		// 102 bits per transform
+			{ 3, 11, 20 },		// 102 bits per transform
+			{ 3, 12, 19 },		// 102 bits per transform
+			{ 3, 13, 18 },		// 102 bits per transform
+			{ 3, 14, 17 },		// 102 bits per transform
+			{ 3, 15, 16 },		// 102 bits per transform
+			{ 3, 16, 15 },		// 102 bits per transform
+			{ 3, 17, 14 },		// 102 bits per transform
+			{ 3, 18, 13 },		// 102 bits per transform
+			{ 3, 19, 12 },		// 102 bits per transform
+			{ 3, 20, 11 },		// 102 bits per transform
+			{ 3, 21, 10 },		// 102 bits per transform
+			{ 3, 22, 9 },		// 102 bits per transform
+			{ 3, 23, 8 },		// 102 bits per transform
+			{ 4, 7, 23 },		// 102 bits per transform
+			{ 4, 8, 22 },		// 102 bits per transform
+			{ 4, 9, 21 },		// 102 bits per transform
+			{ 4, 10, 20 },		// 102 bits per transform
+			{ 4, 11, 19 },		// 102 bits per transform
+			{ 4, 12, 18 },		// 102 bits per transform
+			{ 4, 13, 17 },		// 102 bits per transform
+			{ 4, 14, 16 },		// 102 bits per transform
+			{ 4, 15, 15 },		// 102 bits per transform
+			{ 4, 16, 14 },		// 102 bits per transform
+			{ 4, 17, 13 },		// 102 bits per transform
+			{ 4, 18, 12 },		// 102 bits per transform
+			{ 4, 19, 11 },		// 102 bits per transform
+			{ 4, 20, 10 },		// 102 bits per transform
+			{ 4, 21, 9 },		// 102 bits per transform
+			{ 4, 22, 8 },		// 102 bits per transform
+			{ 4, 23, 7 },		// 102 bits per transform
+			{ 5, 6, 23 },		// 102 bits per transform
+			{ 5, 7, 22 },		// 102 bits per transform
+			{ 5, 8, 21 },		// 102 bits per transform
+			{ 5, 9, 20 },		// 102 bits per transform
+			{ 5, 10, 19 },		// 102 bits per transform
+			{ 5, 11, 18 },		// 102 bits per transform
+			{ 5, 12, 17 },		// 102 bits per transform
+			{ 5, 13, 16 },		// 102 bits per transform
+			{ 5, 14, 15 },		// 102 bits per transform
+			{ 5, 15, 14 },		// 102 bits per transform
+			{ 5, 16, 13 },		// 102 bits per transform
+			{ 5, 17, 12 },		// 102 bits per transform
+			{ 5, 18, 11 },		// 102 bits per transform
+			{ 5, 19, 10 },		// 102 bits per transform
+			{ 5, 20, 9 },		// 102 bits per transform
+			{ 5, 21, 8 },		// 102 bits per transform
+			{ 5, 22, 7 },		// 102 bits per transform
+			{ 5, 23, 6 },		// 102 bits per transform
+			{ 6, 5, 23 },		// 102 bits per transform
+			{ 6, 6, 22 },		// 102 bits per transform
+			{ 6, 7, 21 },		// 102 bits per transform
+			{ 6, 8, 20 },		// 102 bits per transform
+			{ 6, 9, 19 },		// 102 bits per transform
+			{ 6, 10, 18 },		// 102 bits per transform
+			{ 6, 11, 17 },		// 102 bits per transform
+			{ 6, 12, 16 },		// 102 bits per transform
+			{ 6, 13, 15 },		// 102 bits per transform
+			{ 6, 14, 14 },		// 102 bits per transform
+			{ 6, 15, 13 },		// 102 bits per transform
+			{ 6, 16, 12 },		// 102 bits per transform
+			{ 6, 17, 11 },		// 102 bits per transform
+			{ 6, 18, 10 },		// 102 bits per transform
+			{ 6, 19, 9 },		// 102 bits per transform
+			{ 6, 20, 8 },		// 102 bits per transform
+			{ 6, 21, 7 },		// 102 bits per transform
+			{ 6, 22, 6 },		// 102 bits per transform
+			{ 6, 23, 5 },		// 102 bits per transform
+			{ 7, 4, 23 },		// 102 bits per transform
+			{ 7, 5, 22 },		// 102 bits per transform
+			{ 7, 6, 21 },		// 102 bits per transform
+			{ 7, 7, 20 },		// 102 bits per transform
+			{ 7, 8, 19 },		// 102 bits per transform
+			{ 7, 9, 18 },		// 102 bits per transform
+			{ 7, 10, 17 },		// 102 bits per transform
+			{ 7, 11, 16 },		// 102 bits per transform
+			{ 7, 12, 15 },		// 102 bits per transform
+			{ 7, 13, 14 },		// 102 bits per transform
+			{ 7, 14, 13 },		// 102 bits per transform
+			{ 7, 15, 12 },		// 102 bits per transform
+			{ 7, 16, 11 },		// 102 bits per transform
+			{ 7, 17, 10 },		// 102 bits per transform
+			{ 7, 18, 9 },		// 102 bits per transform
+			{ 7, 19, 8 },		// 102 bits per transform
+			{ 7, 20, 7 },		// 102 bits per transform
+			{ 7, 21, 6 },		// 102 bits per transform
+			{ 7, 22, 5 },		// 102 bits per transform
+			{ 7, 23, 4 },		// 102 bits per transform
+			{ 8, 3, 23 },		// 102 bits per transform
+			{ 8, 4, 22 },		// 102 bits per transform
+			{ 8, 5, 21 },		// 102 bits per transform
+			{ 8, 6, 20 },		// 102 bits per transform
+			{ 8, 7, 19 },		// 102 bits per transform
+			{ 8, 8, 18 },		// 102 bits per transform
+			{ 8, 9, 17 },		// 102 bits per transform
+			{ 8, 10, 16 },		// 102 bits per transform
+			{ 8, 11, 15 },		// 102 bits per transform
+			{ 8, 12, 14 },		// 102 bits per transform
+			{ 8, 13, 13 },		// 102 bits per transform
+			{ 8, 14, 12 },		// 102 bits per transform
+			{ 8, 15, 11 },		// 102 bits per transform
+			{ 8, 16, 10 },		// 102 bits per transform
+			{ 8, 17, 9 },		// 102 bits per transform
+			{ 8, 18, 8 },		// 102 bits per transform
+			{ 8, 19, 7 },		// 102 bits per transform
+			{ 8, 20, 6 },		// 102 bits per transform
+			{ 8, 21, 5 },		// 102 bits per transform
+			{ 8, 22, 4 },		// 102 bits per transform
+			{ 8, 23, 3 },		// 102 bits per transform
+			{ 9, 2, 23 },		// 102 bits per transform
+			{ 9, 3, 22 },		// 102 bits per transform
+			{ 9, 4, 21 },		// 102 bits per transform
+			{ 9, 5, 20 },		// 102 bits per transform
+			{ 9, 6, 19 },		// 102 bits per transform
+			{ 9, 7, 18 },		// 102 bits per transform
+			{ 9, 8, 17 },		// 102 bits per transform
+			{ 9, 9, 16 },		// 102 bits per transform
+			{ 9, 10, 15 },		// 102 bits per transform
+			{ 9, 11, 14 },		// 102 bits per transform
+			{ 9, 12, 13 },		// 102 bits per transform
+			{ 9, 13, 12 },		// 102 bits per transform
+			{ 9, 14, 11 },		// 102 bits per transform
+			{ 9, 15, 10 },		// 102 bits per transform
+			{ 9, 16, 9 },		// 102 bits per transform
+			{ 9, 17, 8 },		// 102 bits per transform
+			{ 9, 18, 7 },		// 102 bits per transform
+			{ 9, 19, 6 },		// 102 bits per transform
+			{ 9, 20, 5 },		// 102 bits per transform
+			{ 9, 21, 4 },		// 102 bits per transform
+			{ 9, 22, 3 },		// 102 bits per transform
+			{ 9, 23, 2 },		// 102 bits per transform
+			{ 10, 1, 23 },		// 102 bits per transform
+			{ 10, 2, 22 },		// 102 bits per transform
+			{ 10, 3, 21 },		// 102 bits per transform
+			{ 10, 4, 20 },		// 102 bits per transform
+			{ 10, 5, 19 },		// 102 bits per transform
+			{ 10, 6, 18 },		// 102 bits per transform
+			{ 10, 7, 17 },		// 102 bits per transform
+			{ 10, 8, 16 },		// 102 bits per transform
+			{ 10, 9, 15 },		// 102 bits per transform
+			{ 10, 10, 14 },		// 102 bits per transform
+			{ 10, 11, 13 },		// 102 bits per transform
+			{ 10, 12, 12 },		// 102 bits per transform
+			{ 10, 13, 11 },		// 102 bits per transform
+			{ 10, 14, 10 },		// 102 bits per transform
+			{ 10, 15, 9 },		// 102 bits per transform
+			{ 10, 16, 8 },		// 102 bits per transform
+			{ 10, 17, 7 },		// 102 bits per transform
+			{ 10, 18, 6 },		// 102 bits per transform
+			{ 10, 19, 5 },		// 102 bits per transform
+			{ 10, 20, 4 },		// 102 bits per transform
+			{ 10, 21, 3 },		// 102 bits per transform
+			{ 10, 22, 2 },		// 102 bits per transform
+			{ 10, 23, 1 },		// 102 bits per transform
+			{ 11, 0, 23 },		// 102 bits per transform
+			{ 11, 1, 22 },		// 102 bits per transform
+			{ 11, 2, 21 },		// 102 bits per transform
+			{ 11, 3, 20 },		// 102 bits per transform
+			{ 11, 4, 19 },		// 102 bits per transform
+			{ 11, 5, 18 },		// 102 bits per transform
+			{ 11, 6, 17 },		// 102 bits per transform
+			{ 11, 7, 16 },		// 102 bits per transform
+			{ 11, 8, 15 },		// 102 bits per transform
+			{ 11, 9, 14 },		// 102 bits per transform
+			{ 11, 10, 13 },		// 102 bits per transform
+			{ 11, 11, 12 },		// 102 bits per transform
+			{ 11, 12, 11 },		// 102 bits per transform
+			{ 11, 13, 10 },		// 102 bits per transform
+			{ 11, 14, 9 },		// 102 bits per transform
+			{ 11, 15, 8 },		// 102 bits per transform
+			{ 11, 16, 7 },		// 102 bits per transform
+			{ 11, 17, 6 },		// 102 bits per transform
+			{ 11, 18, 5 },		// 102 bits per transform
+			{ 11, 19, 4 },		// 102 bits per transform
+			{ 11, 20, 3 },		// 102 bits per transform
+			{ 11, 21, 2 },		// 102 bits per transform
+			{ 11, 22, 1 },		// 102 bits per transform
+			{ 11, 23, 0 },		// 102 bits per transform
+			{ 12, 0, 22 },		// 102 bits per transform
+			{ 12, 1, 21 },		// 102 bits per transform
+			{ 12, 2, 20 },		// 102 bits per transform
+			{ 12, 3, 19 },		// 102 bits per transform
+			{ 12, 4, 18 },		// 102 bits per transform
+			{ 12, 5, 17 },		// 102 bits per transform
+			{ 12, 6, 16 },		// 102 bits per transform
+			{ 12, 7, 15 },		// 102 bits per transform
+			{ 12, 8, 14 },		// 102 bits per transform
+			{ 12, 9, 13 },		// 102 bits per transform
+			{ 12, 10, 12 },		// 102 bits per transform
+			{ 12, 11, 11 },		// 102 bits per transform
+			{ 12, 12, 10 },		// 102 bits per transform
+			{ 12, 13, 9 },		// 102 bits per transform
+			{ 12, 14, 8 },		// 102 bits per transform
+			{ 12, 15, 7 },		// 102 bits per transform
+			{ 12, 16, 6 },		// 102 bits per transform
+			{ 12, 17, 5 },		// 102 bits per transform
+			{ 12, 18, 4 },		// 102 bits per transform
+			{ 12, 19, 3 },		// 102 bits per transform
+			{ 12, 20, 2 },		// 102 bits per transform
+			{ 12, 21, 1 },		// 102 bits per transform
+			{ 12, 22, 0 },		// 102 bits per transform
+			{ 13, 0, 21 },		// 102 bits per transform
+			{ 13, 1, 20 },		// 102 bits per transform
+			{ 13, 2, 19 },		// 102 bits per transform
+			{ 13, 3, 18 },		// 102 bits per transform
+			{ 13, 4, 17 },		// 102 bits per transform
+			{ 13, 5, 16 },		// 102 bits per transform
+			{ 13, 6, 15 },		// 102 bits per transform
+			{ 13, 7, 14 },		// 102 bits per transform
+			{ 13, 8, 13 },		// 102 bits per transform
+			{ 13, 9, 12 },		// 102 bits per transform
+			{ 13, 10, 11 },		// 102 bits per transform
+			{ 13, 11, 10 },		// 102 bits per transform
+			{ 13, 12, 9 },		// 102 bits per transform
+			{ 13, 13, 8 },		// 102 bits per transform
+			{ 13, 14, 7 },		// 102 bits per transform
+			{ 13, 15, 6 },		// 102 bits per transform
+			{ 13, 16, 5 },		// 102 bits per transform
+			{ 13, 17, 4 },		// 102 bits per transform
+			{ 13, 18, 3 },		// 102 bits per transform
+			{ 13, 19, 2 },		// 102 bits per transform
+			{ 13, 20, 1 },		// 102 bits per transform
+			{ 13, 21, 0 },		// 102 bits per transform
+			{ 14, 0, 20 },		// 102 bits per transform
+			{ 14, 1, 19 },		// 102 bits per transform
+			{ 14, 2, 18 },		// 102 bits per transform
+			{ 14, 3, 17 },		// 102 bits per transform
+			{ 14, 4, 16 },		// 102 bits per transform
+			{ 14, 5, 15 },		// 102 bits per transform
+			{ 14, 6, 14 },		// 102 bits per transform
+			{ 14, 7, 13 },		// 102 bits per transform
+			{ 14, 8, 12 },		// 102 bits per transform
+			{ 14, 9, 11 },		// 102 bits per transform
+			{ 14, 10, 10 },		// 102 bits per transform
+			{ 14, 11, 9 },		// 102 bits per transform
+			{ 14, 12, 8 },		// 102 bits per transform
+			{ 14, 13, 7 },		// 102 bits per transform
+			{ 14, 14, 6 },		// 102 bits per transform
+			{ 14, 15, 5 },		// 102 bits per transform
+			{ 14, 16, 4 },		// 102 bits per transform
+			{ 14, 17, 3 },		// 102 bits per transform
+			{ 14, 18, 2 },		// 102 bits per transform
+			{ 14, 19, 1 },		// 102 bits per transform
+			{ 14, 20, 0 },		// 102 bits per transform
+			{ 15, 0, 19 },		// 102 bits per transform
+			{ 15, 1, 18 },		// 102 bits per transform
+			{ 15, 2, 17 },		// 102 bits per transform
+			{ 15, 3, 16 },		// 102 bits per transform
+			{ 15, 4, 15 },		// 102 bits per transform
+			{ 15, 5, 14 },		// 102 bits per transform
+			{ 15, 6, 13 },		// 102 bits per transform
+			{ 15, 7, 12 },		// 102 bits per transform
+			{ 15, 8, 11 },		// 102 bits per transform
+			{ 15, 9, 10 },		// 102 bits per transform
+			{ 15, 10, 9 },		// 102 bits per transform
+			{ 15, 11, 8 },		// 102 bits per transform
+			{ 15, 12, 7 },		// 102 bits per transform
+			{ 15, 13, 6 },		// 102 bits per transform
+			{ 15, 14, 5 },		// 102 bits per transform
+			{ 15, 15, 4 },		// 102 bits per transform
+			{ 15, 16, 3 },		// 102 bits per transform
+			{ 15, 17, 2 },		// 102 bits per transform
+			{ 15, 18, 1 },		// 102 bits per transform
+			{ 15, 19, 0 },		// 102 bits per transform
+			{ 16, 0, 18 },		// 102 bits per transform
+			{ 16, 1, 17 },		// 102 bits per transform
+			{ 16, 2, 16 },		// 102 bits per transform
+			{ 16, 3, 15 },		// 102 bits per transform
+			{ 16, 4, 14 },		// 102 bits per transform
+			{ 16, 5, 13 },		// 102 bits per transform
+			{ 16, 6, 12 },		// 102 bits per transform
+			{ 16, 7, 11 },		// 102 bits per transform
+			{ 16, 8, 10 },		// 102 bits per transform
+			{ 16, 9, 9 },		// 102 bits per transform
+			{ 16, 10, 8 },		// 102 bits per transform
+			{ 16, 11, 7 },		// 102 bits per transform
+			{ 16, 12, 6 },		// 102 bits per transform
+			{ 16, 13, 5 },		// 102 bits per transform
+			{ 16, 14, 4 },		// 102 bits per transform
+			{ 16, 15, 3 },		// 102 bits per transform
+			{ 16, 16, 2 },		// 102 bits per transform
+			{ 16, 17, 1 },		// 102 bits per transform
+			{ 16, 18, 0 },		// 102 bits per transform
+			{ 17, 0, 17 },		// 102 bits per transform
+			{ 17, 1, 16 },		// 102 bits per transform
+			{ 17, 2, 15 },		// 102 bits per transform
+			{ 17, 3, 14 },		// 102 bits per transform
+			{ 17, 4, 13 },		// 102 bits per transform
+			{ 17, 5, 12 },		// 102 bits per transform
+			{ 17, 6, 11 },		// 102 bits per transform
+			{ 17, 7, 10 },		// 102 bits per transform
+			{ 17, 8, 9 },		// 102 bits per transform
+			{ 17, 9, 8 },		// 102 bits per transform
+			{ 17, 10, 7 },		// 102 bits per transform
+			{ 17, 11, 6 },		// 102 bits per transform
+			{ 17, 12, 5 },		// 102 bits per transform
+			{ 17, 13, 4 },		// 102 bits per transform
+			{ 17, 14, 3 },		// 102 bits per transform
+			{ 17, 15, 2 },		// 102 bits per transform
+			{ 17, 16, 1 },		// 102 bits per transform
+			{ 17, 17, 0 },		// 102 bits per transform
+			{ 18, 0, 16 },		// 102 bits per transform
+			{ 18, 1, 15 },		// 102 bits per transform
+			{ 18, 2, 14 },		// 102 bits per transform
+			{ 18, 3, 13 },		// 102 bits per transform
+			{ 18, 4, 12 },		// 102 bits per transform
+			{ 18, 5, 11 },		// 102 bits per transform
+			{ 18, 6, 10 },		// 102 bits per transform
+			{ 18, 7, 9 },		// 102 bits per transform
+			{ 18, 8, 8 },		// 102 bits per transform
+			{ 18, 9, 7 },		// 102 bits per transform
+			{ 18, 10, 6 },		// 102 bits per transform
+			{ 18, 11, 5 },		// 102 bits per transform
+			{ 18, 12, 4 },		// 102 bits per transform
+			{ 18, 13, 3 },		// 102 bits per transform
+			{ 18, 14, 2 },		// 102 bits per transform
+			{ 18, 15, 1 },		// 102 bits per transform
+			{ 18, 16, 0 },		// 102 bits per transform
+			{ 19, 0, 15 },		// 102 bits per transform
+			{ 19, 1, 14 },		// 102 bits per transform
+			{ 19, 2, 13 },		// 102 bits per transform
+			{ 19, 3, 12 },		// 102 bits per transform
+			{ 19, 4, 11 },		// 102 bits per transform
+			{ 19, 5, 10 },		// 102 bits per transform
+			{ 19, 6, 9 },		// 102 bits per transform
+			{ 19, 7, 8 },		// 102 bits per transform
+			{ 19, 8, 7 },		// 102 bits per transform
+			{ 19, 9, 6 },		// 102 bits per transform
+			{ 19, 10, 5 },		// 102 bits per transform
+			{ 19, 11, 4 },		// 102 bits per transform
+			{ 19, 12, 3 },		// 102 bits per transform
+			{ 19, 13, 2 },		// 102 bits per transform
+			{ 19, 14, 1 },		// 102 bits per transform
+			{ 19, 15, 0 },		// 102 bits per transform
+			{ 20, 0, 14 },		// 102 bits per transform
+			{ 20, 1, 13 },		// 102 bits per transform
+			{ 20, 2, 12 },		// 102 bits per transform
+			{ 20, 3, 11 },		// 102 bits per transform
+			{ 20, 4, 10 },		// 102 bits per transform
+			{ 20, 5, 9 },		// 102 bits per transform
+			{ 20, 6, 8 },		// 102 bits per transform
+			{ 20, 7, 7 },		// 102 bits per transform
+			{ 20, 8, 6 },		// 102 bits per transform
+			{ 20, 9, 5 },		// 102 bits per transform
+			{ 20, 10, 4 },		// 102 bits per transform
+			{ 20, 11, 3 },		// 102 bits per transform
+			{ 20, 12, 2 },		// 102 bits per transform
+			{ 20, 13, 1 },		// 102 bits per transform
+			{ 20, 14, 0 },		// 102 bits per transform
+			{ 21, 0, 13 },		// 102 bits per transform
+			{ 21, 1, 12 },		// 102 bits per transform
+			{ 21, 2, 11 },		// 102 bits per transform
+			{ 21, 3, 10 },		// 102 bits per transform
+			{ 21, 4, 9 },		// 102 bits per transform
+			{ 21, 5, 8 },		// 102 bits per transform
+			{ 21, 6, 7 },		// 102 bits per transform
+			{ 21, 7, 6 },		// 102 bits per transform
+			{ 21, 8, 5 },		// 102 bits per transform
+			{ 21, 9, 4 },		// 102 bits per transform
+			{ 21, 10, 3 },		// 102 bits per transform
+			{ 21, 11, 2 },		// 102 bits per transform
+			{ 21, 12, 1 },		// 102 bits per transform
+			{ 21, 13, 0 },		// 102 bits per transform
+			{ 22, 0, 12 },		// 102 bits per transform
+			{ 22, 1, 11 },		// 102 bits per transform
+			{ 22, 2, 10 },		// 102 bits per transform
+			{ 22, 3, 9 },		// 102 bits per transform
+			{ 22, 4, 8 },		// 102 bits per transform
+			{ 22, 5, 7 },		// 102 bits per transform
+			{ 22, 6, 6 },		// 102 bits per transform
+			{ 22, 7, 5 },		// 102 bits per transform
+			{ 22, 8, 4 },		// 102 bits per transform
+			{ 22, 9, 3 },		// 102 bits per transform
+			{ 22, 10, 2 },		// 102 bits per transform
+			{ 22, 11, 1 },		// 102 bits per transform
+			{ 22, 12, 0 },		// 102 bits per transform
+			{ 23, 0, 11 },		// 102 bits per transform
+			{ 23, 1, 10 },		// 102 bits per transform
+			{ 23, 2, 9 },		// 102 bits per transform
+			{ 23, 3, 8 },		// 102 bits per transform
+			{ 23, 4, 7 },		// 102 bits per transform
+			{ 23, 5, 6 },		// 102 bits per transform
+			{ 23, 6, 5 },		// 102 bits per transform
+			{ 23, 7, 4 },		// 102 bits per transform
+			{ 23, 8, 3 },		// 102 bits per transform
+			{ 23, 9, 2 },		// 102 bits per transform
+			{ 23, 10, 1 },		// 102 bits per transform
+			{ 23, 11, 0 },		// 102 bits per transform
+			{ 24, 0, 2 },		// 102 bits per transform
+			{ 24, 1, 1 },		// 102 bits per transform
+			{ 24, 2, 0 },		// 102 bits per transform
+			{ 0, 3, 24 },		// 105 bits per transform
+			{ 0, 12, 23 },		// 105 bits per transform
+			{ 0, 13, 22 },		// 105 bits per transform
+			{ 0, 14, 21 },		// 105 bits per transform
+			{ 0, 15, 20 },		// 105 bits per transform
+			{ 0, 16, 19 },		// 105 bits per transform
+			{ 0, 17, 18 },		// 105 bits per transform
+			{ 0, 18, 17 },		// 105 bits per transform
+			{ 0, 19, 16 },		// 105 bits per transform
+			{ 0, 20, 15 },		// 105 bits per transform
+			{ 0, 21, 14 },		// 105 bits per transform
+			{ 0, 22, 13 },		// 105 bits per transform
+			{ 0, 23, 12 },		// 105 bits per transform
+			{ 0, 24, 3 },		// 105 bits per transform
+			{ 1, 2, 24 },		// 105 bits per transform
+			{ 1, 11, 23 },		// 105 bits per transform
+			{ 1, 12, 22 },		// 105 bits per transform
+			{ 1, 13, 21 },		// 105 bits per transform
+			{ 1, 14, 20 },		// 105 bits per transform
+			{ 1, 15, 19 },		// 105 bits per transform
+			{ 1, 16, 18 },		// 105 bits per transform
+			{ 1, 17, 17 },		// 105 bits per transform
+			{ 1, 18, 16 },		// 105 bits per transform
+			{ 1, 19, 15 },		// 105 bits per transform
+			{ 1, 20, 14 },		// 105 bits per transform
+			{ 1, 21, 13 },		// 105 bits per transform
+			{ 1, 22, 12 },		// 105 bits per transform
+			{ 1, 23, 11 },		// 105 bits per transform
+			{ 1, 24, 2 },		// 105 bits per transform
+			{ 2, 1, 24 },		// 105 bits per transform
+			{ 2, 10, 23 },		// 105 bits per transform
+			{ 2, 11, 22 },		// 105 bits per transform
+			{ 2, 12, 21 },		// 105 bits per transform
+			{ 2, 13, 20 },		// 105 bits per transform
+			{ 2, 14, 19 },		// 105 bits per transform
+			{ 2, 15, 18 },		// 105 bits per transform
+			{ 2, 16, 17 },		// 105 bits per transform
+			{ 2, 17, 16 },		// 105 bits per transform
+			{ 2, 18, 15 },		// 105 bits per transform
+			{ 2, 19, 14 },		// 105 bits per transform
+			{ 2, 20, 13 },		// 105 bits per transform
+			{ 2, 21, 12 },		// 105 bits per transform
+			{ 2, 22, 11 },		// 105 bits per transform
+			{ 2, 23, 10 },		// 105 bits per transform
+			{ 2, 24, 1 },		// 105 bits per transform
+			{ 3, 0, 24 },		// 105 bits per transform
+			{ 3, 9, 23 },		// 105 bits per transform
+			{ 3, 10, 22 },		// 105 bits per transform
+			{ 3, 11, 21 },		// 105 bits per transform
+			{ 3, 12, 20 },		// 105 bits per transform
+			{ 3, 13, 19 },		// 105 bits per transform
+			{ 3, 14, 18 },		// 105 bits per transform
+			{ 3, 15, 17 },		// 105 bits per transform
+			{ 3, 16, 16 },		// 105 bits per transform
+			{ 3, 17, 15 },		// 105 bits per transform
+			{ 3, 18, 14 },		// 105 bits per transform
+			{ 3, 19, 13 },		// 105 bits per transform
+			{ 3, 20, 12 },		// 105 bits per transform
+			{ 3, 21, 11 },		// 105 bits per transform
+			{ 3, 22, 10 },		// 105 bits per transform
+			{ 3, 23, 9 },		// 105 bits per transform
+			{ 3, 24, 0 },		// 105 bits per transform
+			{ 4, 8, 23 },		// 105 bits per transform
+			{ 4, 9, 22 },		// 105 bits per transform
+			{ 4, 10, 21 },		// 105 bits per transform
+			{ 4, 11, 20 },		// 105 bits per transform
+			{ 4, 12, 19 },		// 105 bits per transform
+			{ 4, 13, 18 },		// 105 bits per transform
+			{ 4, 14, 17 },		// 105 bits per transform
+			{ 4, 15, 16 },		// 105 bits per transform
+			{ 4, 16, 15 },		// 105 bits per transform
+			{ 4, 17, 14 },		// 105 bits per transform
+			{ 4, 18, 13 },		// 105 bits per transform
+			{ 4, 19, 12 },		// 105 bits per transform
+			{ 4, 20, 11 },		// 105 bits per transform
+			{ 4, 21, 10 },		// 105 bits per transform
+			{ 4, 22, 9 },		// 105 bits per transform
+			{ 4, 23, 8 },		// 105 bits per transform
+			{ 5, 7, 23 },		// 105 bits per transform
+			{ 5, 8, 22 },		// 105 bits per transform
+			{ 5, 9, 21 },		// 105 bits per transform
+			{ 5, 10, 20 },		// 105 bits per transform
+			{ 5, 11, 19 },		// 105 bits per transform
+			{ 5, 12, 18 },		// 105 bits per transform
+			{ 5, 13, 17 },		// 105 bits per transform
+			{ 5, 14, 16 },		// 105 bits per transform
+			{ 5, 15, 15 },		// 105 bits per transform
+			{ 5, 16, 14 },		// 105 bits per transform
+			{ 5, 17, 13 },		// 105 bits per transform
+			{ 5, 18, 12 },		// 105 bits per transform
+			{ 5, 19, 11 },		// 105 bits per transform
+			{ 5, 20, 10 },		// 105 bits per transform
+			{ 5, 21, 9 },		// 105 bits per transform
+			{ 5, 22, 8 },		// 105 bits per transform
+			{ 5, 23, 7 },		// 105 bits per transform
+			{ 6, 6, 23 },		// 105 bits per transform
+			{ 6, 7, 22 },		// 105 bits per transform
+			{ 6, 8, 21 },		// 105 bits per transform
+			{ 6, 9, 20 },		// 105 bits per transform
+			{ 6, 10, 19 },		// 105 bits per transform
+			{ 6, 11, 18 },		// 105 bits per transform
+			{ 6, 12, 17 },		// 105 bits per transform
+			{ 6, 13, 16 },		// 105 bits per transform
+			{ 6, 14, 15 },		// 105 bits per transform
+			{ 6, 15, 14 },		// 105 bits per transform
+			{ 6, 16, 13 },		// 105 bits per transform
+			{ 6, 17, 12 },		// 105 bits per transform
+			{ 6, 18, 11 },		// 105 bits per transform
+			{ 6, 19, 10 },		// 105 bits per transform
+			{ 6, 20, 9 },		// 105 bits per transform
+			{ 6, 21, 8 },		// 105 bits per transform
+			{ 6, 22, 7 },		// 105 bits per transform
+			{ 6, 23, 6 },		// 105 bits per transform
+			{ 7, 5, 23 },		// 105 bits per transform
+			{ 7, 6, 22 },		// 105 bits per transform
+			{ 7, 7, 21 },		// 105 bits per transform
+			{ 7, 8, 20 },		// 105 bits per transform
+			{ 7, 9, 19 },		// 105 bits per transform
+			{ 7, 10, 18 },		// 105 bits per transform
+			{ 7, 11, 17 },		// 105 bits per transform
+			{ 7, 12, 16 },		// 105 bits per transform
+			{ 7, 13, 15 },		// 105 bits per transform
+			{ 7, 14, 14 },		// 105 bits per transform
+			{ 7, 15, 13 },		// 105 bits per transform
+			{ 7, 16, 12 },		// 105 bits per transform
+			{ 7, 17, 11 },		// 105 bits per transform
+			{ 7, 18, 10 },		// 105 bits per transform
+			{ 7, 19, 9 },		// 105 bits per transform
+			{ 7, 20, 8 },		// 105 bits per transform
+			{ 7, 21, 7 },		// 105 bits per transform
+			{ 7, 22, 6 },		// 105 bits per transform
+			{ 7, 23, 5 },		// 105 bits per transform
+			{ 8, 4, 23 },		// 105 bits per transform
+			{ 8, 5, 22 },		// 105 bits per transform
+			{ 8, 6, 21 },		// 105 bits per transform
+			{ 8, 7, 20 },		// 105 bits per transform
+			{ 8, 8, 19 },		// 105 bits per transform
+			{ 8, 9, 18 },		// 105 bits per transform
+			{ 8, 10, 17 },		// 105 bits per transform
+			{ 8, 11, 16 },		// 105 bits per transform
+			{ 8, 12, 15 },		// 105 bits per transform
+			{ 8, 13, 14 },		// 105 bits per transform
+			{ 8, 14, 13 },		// 105 bits per transform
+			{ 8, 15, 12 },		// 105 bits per transform
+			{ 8, 16, 11 },		// 105 bits per transform
+			{ 8, 17, 10 },		// 105 bits per transform
+			{ 8, 18, 9 },		// 105 bits per transform
+			{ 8, 19, 8 },		// 105 bits per transform
+			{ 8, 20, 7 },		// 105 bits per transform
+			{ 8, 21, 6 },		// 105 bits per transform
+			{ 8, 22, 5 },		// 105 bits per transform
+			{ 8, 23, 4 },		// 105 bits per transform
+			{ 9, 3, 23 },		// 105 bits per transform
+			{ 9, 4, 22 },		// 105 bits per transform
+			{ 9, 5, 21 },		// 105 bits per transform
+			{ 9, 6, 20 },		// 105 bits per transform
+			{ 9, 7, 19 },		// 105 bits per transform
+			{ 9, 8, 18 },		// 105 bits per transform
+			{ 9, 9, 17 },		// 105 bits per transform
+			{ 9, 10, 16 },		// 105 bits per transform
+			{ 9, 11, 15 },		// 105 bits per transform
+			{ 9, 12, 14 },		// 105 bits per transform
+			{ 9, 13, 13 },		// 105 bits per transform
+			{ 9, 14, 12 },		// 105 bits per transform
+			{ 9, 15, 11 },		// 105 bits per transform
+			{ 9, 16, 10 },		// 105 bits per transform
+			{ 9, 17, 9 },		// 105 bits per transform
+			{ 9, 18, 8 },		// 105 bits per transform
+			{ 9, 19, 7 },		// 105 bits per transform
+			{ 9, 20, 6 },		// 105 bits per transform
+			{ 9, 21, 5 },		// 105 bits per transform
+			{ 9, 22, 4 },		// 105 bits per transform
+			{ 9, 23, 3 },		// 105 bits per transform
+			{ 10, 2, 23 },		// 105 bits per transform
+			{ 10, 3, 22 },		// 105 bits per transform
+			{ 10, 4, 21 },		// 105 bits per transform
+			{ 10, 5, 20 },		// 105 bits per transform
+			{ 10, 6, 19 },		// 105 bits per transform
+			{ 10, 7, 18 },		// 105 bits per transform
+			{ 10, 8, 17 },		// 105 bits per transform
+			{ 10, 9, 16 },		// 105 bits per transform
+			{ 10, 10, 15 },		// 105 bits per transform
+			{ 10, 11, 14 },		// 105 bits per transform
+			{ 10, 12, 13 },		// 105 bits per transform
+			{ 10, 13, 12 },		// 105 bits per transform
+			{ 10, 14, 11 },		// 105 bits per transform
+			{ 10, 15, 10 },		// 105 bits per transform
+			{ 10, 16, 9 },		// 105 bits per transform
+			{ 10, 17, 8 },		// 105 bits per transform
+			{ 10, 18, 7 },		// 105 bits per transform
+			{ 10, 19, 6 },		// 105 bits per transform
+			{ 10, 20, 5 },		// 105 bits per transform
+			{ 10, 21, 4 },		// 105 bits per transform
+			{ 10, 22, 3 },		// 105 bits per transform
+			{ 10, 23, 2 },		// 105 bits per transform
+			{ 11, 1, 23 },		// 105 bits per transform
+			{ 11, 2, 22 },		// 105 bits per transform
+			{ 11, 3, 21 },		// 105 bits per transform
+			{ 11, 4, 20 },		// 105 bits per transform
+			{ 11, 5, 19 },		// 105 bits per transform
+			{ 11, 6, 18 },		// 105 bits per transform
+			{ 11, 7, 17 },		// 105 bits per transform
+			{ 11, 8, 16 },		// 105 bits per transform
+			{ 11, 9, 15 },		// 105 bits per transform
+			{ 11, 10, 14 },		// 105 bits per transform
+			{ 11, 11, 13 },		// 105 bits per transform
+			{ 11, 12, 12 },		// 105 bits per transform
+			{ 11, 13, 11 },		// 105 bits per transform
+			{ 11, 14, 10 },		// 105 bits per transform
+			{ 11, 15, 9 },		// 105 bits per transform
+			{ 11, 16, 8 },		// 105 bits per transform
+			{ 11, 17, 7 },		// 105 bits per transform
+			{ 11, 18, 6 },		// 105 bits per transform
+			{ 11, 19, 5 },		// 105 bits per transform
+			{ 11, 20, 4 },		// 105 bits per transform
+			{ 11, 21, 3 },		// 105 bits per transform
+			{ 11, 22, 2 },		// 105 bits per transform
+			{ 11, 23, 1 },		// 105 bits per transform
+			{ 12, 0, 23 },		// 105 bits per transform
+			{ 12, 1, 22 },		// 105 bits per transform
+			{ 12, 2, 21 },		// 105 bits per transform
+			{ 12, 3, 20 },		// 105 bits per transform
+			{ 12, 4, 19 },		// 105 bits per transform
+			{ 12, 5, 18 },		// 105 bits per transform
+			{ 12, 6, 17 },		// 105 bits per transform
+			{ 12, 7, 16 },		// 105 bits per transform
+			{ 12, 8, 15 },		// 105 bits per transform
+			{ 12, 9, 14 },		// 105 bits per transform
+			{ 12, 10, 13 },		// 105 bits per transform
+			{ 12, 11, 12 },		// 105 bits per transform
+			{ 12, 12, 11 },		// 105 bits per transform
+			{ 12, 13, 10 },		// 105 bits per transform
+			{ 12, 14, 9 },		// 105 bits per transform
+			{ 12, 15, 8 },		// 105 bits per transform
+			{ 12, 16, 7 },		// 105 bits per transform
+			{ 12, 17, 6 },		// 105 bits per transform
+			{ 12, 18, 5 },		// 105 bits per transform
+			{ 12, 19, 4 },		// 105 bits per transform
+			{ 12, 20, 3 },		// 105 bits per transform
+			{ 12, 21, 2 },		// 105 bits per transform
+			{ 12, 22, 1 },		// 105 bits per transform
+			{ 12, 23, 0 },		// 105 bits per transform
+			{ 13, 0, 22 },		// 105 bits per transform
+			{ 13, 1, 21 },		// 105 bits per transform
+			{ 13, 2, 20 },		// 105 bits per transform
+			{ 13, 3, 19 },		// 105 bits per transform
+			{ 13, 4, 18 },		// 105 bits per transform
+			{ 13, 5, 17 },		// 105 bits per transform
+			{ 13, 6, 16 },		// 105 bits per transform
+			{ 13, 7, 15 },		// 105 bits per transform
+			{ 13, 8, 14 },		// 105 bits per transform
+			{ 13, 9, 13 },		// 105 bits per transform
+			{ 13, 10, 12 },		// 105 bits per transform
+			{ 13, 11, 11 },		// 105 bits per transform
+			{ 13, 12, 10 },		// 105 bits per transform
+			{ 13, 13, 9 },		// 105 bits per transform
+			{ 13, 14, 8 },		// 105 bits per transform
+			{ 13, 15, 7 },		// 105 bits per transform
+			{ 13, 16, 6 },		// 105 bits per transform
+			{ 13, 17, 5 },		// 105 bits per transform
+			{ 13, 18, 4 },		// 105 bits per transform
+			{ 13, 19, 3 },		// 105 bits per transform
+			{ 13, 20, 2 },		// 105 bits per transform
+			{ 13, 21, 1 },		// 105 bits per transform
+			{ 13, 22, 0 },		// 105 bits per transform
+			{ 14, 0, 21 },		// 105 bits per transform
+			{ 14, 1, 20 },		// 105 bits per transform
+			{ 14, 2, 19 },		// 105 bits per transform
+			{ 14, 3, 18 },		// 105 bits per transform
+			{ 14, 4, 17 },		// 105 bits per transform
+			{ 14, 5, 16 },		// 105 bits per transform
+			{ 14, 6, 15 },		// 105 bits per transform
+			{ 14, 7, 14 },		// 105 bits per transform
+			{ 14, 8, 13 },		// 105 bits per transform
+			{ 14, 9, 12 },		// 105 bits per transform
+			{ 14, 10, 11 },		// 105 bits per transform
+			{ 14, 11, 10 },		// 105 bits per transform
+			{ 14, 12, 9 },		// 105 bits per transform
+			{ 14, 13, 8 },		// 105 bits per transform
+			{ 14, 14, 7 },		// 105 bits per transform
+			{ 14, 15, 6 },		// 105 bits per transform
+			{ 14, 16, 5 },		// 105 bits per transform
+			{ 14, 17, 4 },		// 105 bits per transform
+			{ 14, 18, 3 },		// 105 bits per transform
+			{ 14, 19, 2 },		// 105 bits per transform
+			{ 14, 20, 1 },		// 105 bits per transform
+			{ 14, 21, 0 },		// 105 bits per transform
+			{ 15, 0, 20 },		// 105 bits per transform
+			{ 15, 1, 19 },		// 105 bits per transform
+			{ 15, 2, 18 },		// 105 bits per transform
+			{ 15, 3, 17 },		// 105 bits per transform
+			{ 15, 4, 16 },		// 105 bits per transform
+			{ 15, 5, 15 },		// 105 bits per transform
+			{ 15, 6, 14 },		// 105 bits per transform
+			{ 15, 7, 13 },		// 105 bits per transform
+			{ 15, 8, 12 },		// 105 bits per transform
+			{ 15, 9, 11 },		// 105 bits per transform
+			{ 15, 10, 10 },		// 105 bits per transform
+			{ 15, 11, 9 },		// 105 bits per transform
+			{ 15, 12, 8 },		// 105 bits per transform
+			{ 15, 13, 7 },		// 105 bits per transform
+			{ 15, 14, 6 },		// 105 bits per transform
+			{ 15, 15, 5 },		// 105 bits per transform
+			{ 15, 16, 4 },		// 105 bits per transform
+			{ 15, 17, 3 },		// 105 bits per transform
+			{ 15, 18, 2 },		// 105 bits per transform
+			{ 15, 19, 1 },		// 105 bits per transform
+			{ 15, 20, 0 },		// 105 bits per transform
+			{ 16, 0, 19 },		// 105 bits per transform
+			{ 16, 1, 18 },		// 105 bits per transform
+			{ 16, 2, 17 },		// 105 bits per transform
+			{ 16, 3, 16 },		// 105 bits per transform
+			{ 16, 4, 15 },		// 105 bits per transform
+			{ 16, 5, 14 },		// 105 bits per transform
+			{ 16, 6, 13 },		// 105 bits per transform
+			{ 16, 7, 12 },		// 105 bits per transform
+			{ 16, 8, 11 },		// 105 bits per transform
+			{ 16, 9, 10 },		// 105 bits per transform
+			{ 16, 10, 9 },		// 105 bits per transform
+			{ 16, 11, 8 },		// 105 bits per transform
+			{ 16, 12, 7 },		// 105 bits per transform
+			{ 16, 13, 6 },		// 105 bits per transform
+			{ 16, 14, 5 },		// 105 bits per transform
+			{ 16, 15, 4 },		// 105 bits per transform
+			{ 16, 16, 3 },		// 105 bits per transform
+			{ 16, 17, 2 },		// 105 bits per transform
+			{ 16, 18, 1 },		// 105 bits per transform
+			{ 16, 19, 0 },		// 105 bits per transform
+			{ 17, 0, 18 },		// 105 bits per transform
+			{ 17, 1, 17 },		// 105 bits per transform
+			{ 17, 2, 16 },		// 105 bits per transform
+			{ 17, 3, 15 },		// 105 bits per transform
+			{ 17, 4, 14 },		// 105 bits per transform
+			{ 17, 5, 13 },		// 105 bits per transform
+			{ 17, 6, 12 },		// 105 bits per transform
+			{ 17, 7, 11 },		// 105 bits per transform
+			{ 17, 8, 10 },		// 105 bits per transform
+			{ 17, 9, 9 },		// 105 bits per transform
+			{ 17, 10, 8 },		// 105 bits per transform
+			{ 17, 11, 7 },		// 105 bits per transform
+			{ 17, 12, 6 },		// 105 bits per transform
+			{ 17, 13, 5 },		// 105 bits per transform
+			{ 17, 14, 4 },		// 105 bits per transform
+			{ 17, 15, 3 },		// 105 bits per transform
+			{ 17, 16, 2 },		// 105 bits per transform
+			{ 17, 17, 1 },		// 105 bits per transform
+			{ 17, 18, 0 },		// 105 bits per transform
+			{ 18, 0, 17 },		// 105 bits per transform
+			{ 18, 1, 16 },		// 105 bits per transform
+			{ 18, 2, 15 },		// 105 bits per transform
+			{ 18, 3, 14 },		// 105 bits per transform
+			{ 18, 4, 13 },		// 105 bits per transform
+			{ 18, 5, 12 },		// 105 bits per transform
+			{ 18, 6, 11 },		// 105 bits per transform
+			{ 18, 7, 10 },		// 105 bits per transform
+			{ 18, 8, 9 },		// 105 bits per transform
+			{ 18, 9, 8 },		// 105 bits per transform
+			{ 18, 10, 7 },		// 105 bits per transform
+			{ 18, 11, 6 },		// 105 bits per transform
+			{ 18, 12, 5 },		// 105 bits per transform
+			{ 18, 13, 4 },		// 105 bits per transform
+			{ 18, 14, 3 },		// 105 bits per transform
+			{ 18, 15, 2 },		// 105 bits per transform
+			{ 18, 16, 1 },		// 105 bits per transform
+			{ 18, 17, 0 },		// 105 bits per transform
+			{ 19, 0, 16 },		// 105 bits per transform
+			{ 19, 1, 15 },		// 105 bits per transform
+			{ 19, 2, 14 },		// 105 bits per transform
+			{ 19, 3, 13 },		// 105 bits per transform
+			{ 19, 4, 12 },		// 105 bits per transform
+			{ 19, 5, 11 },		// 105 bits per transform
+			{ 19, 6, 10 },		// 105 bits per transform
+			{ 19, 7, 9 },		// 105 bits per transform
+			{ 19, 8, 8 },		// 105 bits per transform
+			{ 19, 9, 7 },		// 105 bits per transform
+			{ 19, 10, 6 },		// 105 bits per transform
+			{ 19, 11, 5 },		// 105 bits per transform
+			{ 19, 12, 4 },		// 105 bits per transform
+			{ 19, 13, 3 },		// 105 bits per transform
+			{ 19, 14, 2 },		// 105 bits per transform
+			{ 19, 15, 1 },		// 105 bits per transform
+			{ 19, 16, 0 },		// 105 bits per transform
+			{ 20, 0, 15 },		// 105 bits per transform
+			{ 20, 1, 14 },		// 105 bits per transform
+			{ 20, 2, 13 },		// 105 bits per transform
+			{ 20, 3, 12 },		// 105 bits per transform
+			{ 20, 4, 11 },		// 105 bits per transform
+			{ 20, 5, 10 },		// 105 bits per transform
+			{ 20, 6, 9 },		// 105 bits per transform
+			{ 20, 7, 8 },		// 105 bits per transform
+			{ 20, 8, 7 },		// 105 bits per transform
+			{ 20, 9, 6 },		// 105 bits per transform
+			{ 20, 10, 5 },		// 105 bits per transform
+			{ 20, 11, 4 },		// 105 bits per transform
+			{ 20, 12, 3 },		// 105 bits per transform
+			{ 20, 13, 2 },		// 105 bits per transform
+			{ 20, 14, 1 },		// 105 bits per transform
+			{ 20, 15, 0 },		// 105 bits per transform
+			{ 21, 0, 14 },		// 105 bits per transform
+			{ 21, 1, 13 },		// 105 bits per transform
+			{ 21, 2, 12 },		// 105 bits per transform
+			{ 21, 3, 11 },		// 105 bits per transform
+			{ 21, 4, 10 },		// 105 bits per transform
+			{ 21, 5, 9 },		// 105 bits per transform
+			{ 21, 6, 8 },		// 105 bits per transform
+			{ 21, 7, 7 },		// 105 bits per transform
+			{ 21, 8, 6 },		// 105 bits per transform
+			{ 21, 9, 5 },		// 105 bits per transform
+			{ 21, 10, 4 },		// 105 bits per transform
+			{ 21, 11, 3 },		// 105 bits per transform
+			{ 21, 12, 2 },		// 105 bits per transform
+			{ 21, 13, 1 },		// 105 bits per transform
+			{ 21, 14, 0 },		// 105 bits per transform
+			{ 22, 0, 13 },		// 105 bits per transform
+			{ 22, 1, 12 },		// 105 bits per transform
+			{ 22, 2, 11 },		// 105 bits per transform
+			{ 22, 3, 10 },		// 105 bits per transform
+			{ 22, 4, 9 },		// 105 bits per transform
+			{ 22, 5, 8 },		// 105 bits per transform
+			{ 22, 6, 7 },		// 105 bits per transform
+			{ 22, 7, 6 },		// 105 bits per transform
+			{ 22, 8, 5 },		// 105 bits per transform
+			{ 22, 9, 4 },		// 105 bits per transform
+			{ 22, 10, 3 },		// 105 bits per transform
+			{ 22, 11, 2 },		// 105 bits per transform
+			{ 22, 12, 1 },		// 105 bits per transform
+			{ 22, 13, 0 },		// 105 bits per transform
+			{ 23, 0, 12 },		// 105 bits per transform
+			{ 23, 1, 11 },		// 105 bits per transform
+			{ 23, 2, 10 },		// 105 bits per transform
+			{ 23, 3, 9 },		// 105 bits per transform
+			{ 23, 4, 8 },		// 105 bits per transform
+			{ 23, 5, 7 },		// 105 bits per transform
+			{ 23, 6, 6 },		// 105 bits per transform
+			{ 23, 7, 5 },		// 105 bits per transform
+			{ 23, 8, 4 },		// 105 bits per transform
+			{ 23, 9, 3 },		// 105 bits per transform
+			{ 23, 10, 2 },		// 105 bits per transform
+			{ 23, 11, 1 },		// 105 bits per transform
+			{ 23, 12, 0 },		// 105 bits per transform
+			{ 24, 0, 3 },		// 105 bits per transform
+			{ 24, 1, 2 },		// 105 bits per transform
+			{ 24, 2, 1 },		// 105 bits per transform
+			{ 24, 3, 0 },		// 105 bits per transform
+			{ 0, 4, 24 },		// 108 bits per transform
+			{ 0, 13, 23 },		// 108 bits per transform
+			{ 0, 14, 22 },		// 108 bits per transform
+			{ 0, 15, 21 },		// 108 bits per transform
+			{ 0, 16, 20 },		// 108 bits per transform
+			{ 0, 17, 19 },		// 108 bits per transform
+			{ 0, 18, 18 },		// 108 bits per transform
+			{ 0, 19, 17 },		// 108 bits per transform
+			{ 0, 20, 16 },		// 108 bits per transform
+			{ 0, 21, 15 },		// 108 bits per transform
+			{ 0, 22, 14 },		// 108 bits per transform
+			{ 0, 23, 13 },		// 108 bits per transform
+			{ 0, 24, 4 },		// 108 bits per transform
+			{ 1, 3, 24 },		// 108 bits per transform
+			{ 1, 12, 23 },		// 108 bits per transform
+			{ 1, 13, 22 },		// 108 bits per transform
+			{ 1, 14, 21 },		// 108 bits per transform
+			{ 1, 15, 20 },		// 108 bits per transform
+			{ 1, 16, 19 },		// 108 bits per transform
+			{ 1, 17, 18 },		// 108 bits per transform
+			{ 1, 18, 17 },		// 108 bits per transform
+			{ 1, 19, 16 },		// 108 bits per transform
+			{ 1, 20, 15 },		// 108 bits per transform
+			{ 1, 21, 14 },		// 108 bits per transform
+			{ 1, 22, 13 },		// 108 bits per transform
+			{ 1, 23, 12 },		// 108 bits per transform
+			{ 1, 24, 3 },		// 108 bits per transform
+			{ 2, 2, 24 },		// 108 bits per transform
+			{ 2, 11, 23 },		// 108 bits per transform
+			{ 2, 12, 22 },		// 108 bits per transform
+			{ 2, 13, 21 },		// 108 bits per transform
+			{ 2, 14, 20 },		// 108 bits per transform
+			{ 2, 15, 19 },		// 108 bits per transform
+			{ 2, 16, 18 },		// 108 bits per transform
+			{ 2, 17, 17 },		// 108 bits per transform
+			{ 2, 18, 16 },		// 108 bits per transform
+			{ 2, 19, 15 },		// 108 bits per transform
+			{ 2, 20, 14 },		// 108 bits per transform
+			{ 2, 21, 13 },		// 108 bits per transform
+			{ 2, 22, 12 },		// 108 bits per transform
+			{ 2, 23, 11 },		// 108 bits per transform
+			{ 2, 24, 2 },		// 108 bits per transform
+			{ 3, 1, 24 },		// 108 bits per transform
+			{ 3, 10, 23 },		// 108 bits per transform
+			{ 3, 11, 22 },		// 108 bits per transform
+			{ 3, 12, 21 },		// 108 bits per transform
+			{ 3, 13, 20 },		// 108 bits per transform
+			{ 3, 14, 19 },		// 108 bits per transform
+			{ 3, 15, 18 },		// 108 bits per transform
+			{ 3, 16, 17 },		// 108 bits per transform
+			{ 3, 17, 16 },		// 108 bits per transform
+			{ 3, 18, 15 },		// 108 bits per transform
+			{ 3, 19, 14 },		// 108 bits per transform
+			{ 3, 20, 13 },		// 108 bits per transform
+			{ 3, 21, 12 },		// 108 bits per transform
+			{ 3, 22, 11 },		// 108 bits per transform
+			{ 3, 23, 10 },		// 108 bits per transform
+			{ 3, 24, 1 },		// 108 bits per transform
+			{ 4, 0, 24 },		// 108 bits per transform
+			{ 4, 9, 23 },		// 108 bits per transform
+			{ 4, 10, 22 },		// 108 bits per transform
+			{ 4, 11, 21 },		// 108 bits per transform
+			{ 4, 12, 20 },		// 108 bits per transform
+			{ 4, 13, 19 },		// 108 bits per transform
+			{ 4, 14, 18 },		// 108 bits per transform
+			{ 4, 15, 17 },		// 108 bits per transform
+			{ 4, 16, 16 },		// 108 bits per transform
+			{ 4, 17, 15 },		// 108 bits per transform
+			{ 4, 18, 14 },		// 108 bits per transform
+			{ 4, 19, 13 },		// 108 bits per transform
+			{ 4, 20, 12 },		// 108 bits per transform
+			{ 4, 21, 11 },		// 108 bits per transform
+			{ 4, 22, 10 },		// 108 bits per transform
+			{ 4, 23, 9 },		// 108 bits per transform
+			{ 4, 24, 0 },		// 108 bits per transform
+			{ 5, 8, 23 },		// 108 bits per transform
+			{ 5, 9, 22 },		// 108 bits per transform
+			{ 5, 10, 21 },		// 108 bits per transform
+			{ 5, 11, 20 },		// 108 bits per transform
+			{ 5, 12, 19 },		// 108 bits per transform
+			{ 5, 13, 18 },		// 108 bits per transform
+			{ 5, 14, 17 },		// 108 bits per transform
+			{ 5, 15, 16 },		// 108 bits per transform
+			{ 5, 16, 15 },		// 108 bits per transform
+			{ 5, 17, 14 },		// 108 bits per transform
+			{ 5, 18, 13 },		// 108 bits per transform
+			{ 5, 19, 12 },		// 108 bits per transform
+			{ 5, 20, 11 },		// 108 bits per transform
+			{ 5, 21, 10 },		// 108 bits per transform
+			{ 5, 22, 9 },		// 108 bits per transform
+			{ 5, 23, 8 },		// 108 bits per transform
+			{ 6, 7, 23 },		// 108 bits per transform
+			{ 6, 8, 22 },		// 108 bits per transform
+			{ 6, 9, 21 },		// 108 bits per transform
+			{ 6, 10, 20 },		// 108 bits per transform
+			{ 6, 11, 19 },		// 108 bits per transform
+			{ 6, 12, 18 },		// 108 bits per transform
+			{ 6, 13, 17 },		// 108 bits per transform
+			{ 6, 14, 16 },		// 108 bits per transform
+			{ 6, 15, 15 },		// 108 bits per transform
+			{ 6, 16, 14 },		// 108 bits per transform
+			{ 6, 17, 13 },		// 108 bits per transform
+			{ 6, 18, 12 },		// 108 bits per transform
+			{ 6, 19, 11 },		// 108 bits per transform
+			{ 6, 20, 10 },		// 108 bits per transform
+			{ 6, 21, 9 },		// 108 bits per transform
+			{ 6, 22, 8 },		// 108 bits per transform
+			{ 6, 23, 7 },		// 108 bits per transform
+			{ 7, 6, 23 },		// 108 bits per transform
+			{ 7, 7, 22 },		// 108 bits per transform
+			{ 7, 8, 21 },		// 108 bits per transform
+			{ 7, 9, 20 },		// 108 bits per transform
+			{ 7, 10, 19 },		// 108 bits per transform
+			{ 7, 11, 18 },		// 108 bits per transform
+			{ 7, 12, 17 },		// 108 bits per transform
+			{ 7, 13, 16 },		// 108 bits per transform
+			{ 7, 14, 15 },		// 108 bits per transform
+			{ 7, 15, 14 },		// 108 bits per transform
+			{ 7, 16, 13 },		// 108 bits per transform
+			{ 7, 17, 12 },		// 108 bits per transform
+			{ 7, 18, 11 },		// 108 bits per transform
+			{ 7, 19, 10 },		// 108 bits per transform
+			{ 7, 20, 9 },		// 108 bits per transform
+			{ 7, 21, 8 },		// 108 bits per transform
+			{ 7, 22, 7 },		// 108 bits per transform
+			{ 7, 23, 6 },		// 108 bits per transform
+			{ 8, 5, 23 },		// 108 bits per transform
+			{ 8, 6, 22 },		// 108 bits per transform
+			{ 8, 7, 21 },		// 108 bits per transform
+			{ 8, 8, 20 },		// 108 bits per transform
+			{ 8, 9, 19 },		// 108 bits per transform
+			{ 8, 10, 18 },		// 108 bits per transform
+			{ 8, 11, 17 },		// 108 bits per transform
+			{ 8, 12, 16 },		// 108 bits per transform
+			{ 8, 13, 15 },		// 108 bits per transform
+			{ 8, 14, 14 },		// 108 bits per transform
+			{ 8, 15, 13 },		// 108 bits per transform
+			{ 8, 16, 12 },		// 108 bits per transform
+			{ 8, 17, 11 },		// 108 bits per transform
+			{ 8, 18, 10 },		// 108 bits per transform
+			{ 8, 19, 9 },		// 108 bits per transform
+			{ 8, 20, 8 },		// 108 bits per transform
+			{ 8, 21, 7 },		// 108 bits per transform
+			{ 8, 22, 6 },		// 108 bits per transform
+			{ 8, 23, 5 },		// 108 bits per transform
+			{ 9, 4, 23 },		// 108 bits per transform
+			{ 9, 5, 22 },		// 108 bits per transform
+			{ 9, 6, 21 },		// 108 bits per transform
+			{ 9, 7, 20 },		// 108 bits per transform
+			{ 9, 8, 19 },		// 108 bits per transform
+			{ 9, 9, 18 },		// 108 bits per transform
+			{ 9, 10, 17 },		// 108 bits per transform
+			{ 9, 11, 16 },		// 108 bits per transform
+			{ 9, 12, 15 },		// 108 bits per transform
+			{ 9, 13, 14 },		// 108 bits per transform
+			{ 9, 14, 13 },		// 108 bits per transform
+			{ 9, 15, 12 },		// 108 bits per transform
+			{ 9, 16, 11 },		// 108 bits per transform
+			{ 9, 17, 10 },		// 108 bits per transform
+			{ 9, 18, 9 },		// 108 bits per transform
+			{ 9, 19, 8 },		// 108 bits per transform
+			{ 9, 20, 7 },		// 108 bits per transform
+			{ 9, 21, 6 },		// 108 bits per transform
+			{ 9, 22, 5 },		// 108 bits per transform
+			{ 9, 23, 4 },		// 108 bits per transform
+			{ 10, 3, 23 },		// 108 bits per transform
+			{ 10, 4, 22 },		// 108 bits per transform
+			{ 10, 5, 21 },		// 108 bits per transform
+			{ 10, 6, 20 },		// 108 bits per transform
+			{ 10, 7, 19 },		// 108 bits per transform
+			{ 10, 8, 18 },		// 108 bits per transform
+			{ 10, 9, 17 },		// 108 bits per transform
+			{ 10, 10, 16 },		// 108 bits per transform
+			{ 10, 11, 15 },		// 108 bits per transform
+			{ 10, 12, 14 },		// 108 bits per transform
+			{ 10, 13, 13 },		// 108 bits per transform
+			{ 10, 14, 12 },		// 108 bits per transform
+			{ 10, 15, 11 },		// 108 bits per transform
+			{ 10, 16, 10 },		// 108 bits per transform
+			{ 10, 17, 9 },		// 108 bits per transform
+			{ 10, 18, 8 },		// 108 bits per transform
+			{ 10, 19, 7 },		// 108 bits per transform
+			{ 10, 20, 6 },		// 108 bits per transform
+			{ 10, 21, 5 },		// 108 bits per transform
+			{ 10, 22, 4 },		// 108 bits per transform
+			{ 10, 23, 3 },		// 108 bits per transform
+			{ 11, 2, 23 },		// 108 bits per transform
+			{ 11, 3, 22 },		// 108 bits per transform
+			{ 11, 4, 21 },		// 108 bits per transform
+			{ 11, 5, 20 },		// 108 bits per transform
+			{ 11, 6, 19 },		// 108 bits per transform
+			{ 11, 7, 18 },		// 108 bits per transform
+			{ 11, 8, 17 },		// 108 bits per transform
+			{ 11, 9, 16 },		// 108 bits per transform
+			{ 11, 10, 15 },		// 108 bits per transform
+			{ 11, 11, 14 },		// 108 bits per transform
+			{ 11, 12, 13 },		// 108 bits per transform
+			{ 11, 13, 12 },		// 108 bits per transform
+			{ 11, 14, 11 },		// 108 bits per transform
+			{ 11, 15, 10 },		// 108 bits per transform
+			{ 11, 16, 9 },		// 108 bits per transform
+			{ 11, 17, 8 },		// 108 bits per transform
+			{ 11, 18, 7 },		// 108 bits per transform
+			{ 11, 19, 6 },		// 108 bits per transform
+			{ 11, 20, 5 },		// 108 bits per transform
+			{ 11, 21, 4 },		// 108 bits per transform
+			{ 11, 22, 3 },		// 108 bits per transform
+			{ 11, 23, 2 },		// 108 bits per transform
+			{ 12, 1, 23 },		// 108 bits per transform
+			{ 12, 2, 22 },		// 108 bits per transform
+			{ 12, 3, 21 },		// 108 bits per transform
+			{ 12, 4, 20 },		// 108 bits per transform
+			{ 12, 5, 19 },		// 108 bits per transform
+			{ 12, 6, 18 },		// 108 bits per transform
+			{ 12, 7, 17 },		// 108 bits per transform
+			{ 12, 8, 16 },		// 108 bits per transform
+			{ 12, 9, 15 },		// 108 bits per transform
+			{ 12, 10, 14 },		// 108 bits per transform
+			{ 12, 11, 13 },		// 108 bits per transform
+			{ 12, 12, 12 },		// 108 bits per transform
+			{ 12, 13, 11 },		// 108 bits per transform
+			{ 12, 14, 10 },		// 108 bits per transform
+			{ 12, 15, 9 },		// 108 bits per transform
+			{ 12, 16, 8 },		// 108 bits per transform
+			{ 12, 17, 7 },		// 108 bits per transform
+			{ 12, 18, 6 },		// 108 bits per transform
+			{ 12, 19, 5 },		// 108 bits per transform
+			{ 12, 20, 4 },		// 108 bits per transform
+			{ 12, 21, 3 },		// 108 bits per transform
+			{ 12, 22, 2 },		// 108 bits per transform
+			{ 12, 23, 1 },		// 108 bits per transform
+			{ 13, 0, 23 },		// 108 bits per transform
+			{ 13, 1, 22 },		// 108 bits per transform
+			{ 13, 2, 21 },		// 108 bits per transform
+			{ 13, 3, 20 },		// 108 bits per transform
+			{ 13, 4, 19 },		// 108 bits per transform
+			{ 13, 5, 18 },		// 108 bits per transform
+			{ 13, 6, 17 },		// 108 bits per transform
+			{ 13, 7, 16 },		// 108 bits per transform
+			{ 13, 8, 15 },		// 108 bits per transform
+			{ 13, 9, 14 },		// 108 bits per transform
+			{ 13, 10, 13 },		// 108 bits per transform
+			{ 13, 11, 12 },		// 108 bits per transform
+			{ 13, 12, 11 },		// 108 bits per transform
+			{ 13, 13, 10 },		// 108 bits per transform
+			{ 13, 14, 9 },		// 108 bits per transform
+			{ 13, 15, 8 },		// 108 bits per transform
+			{ 13, 16, 7 },		// 108 bits per transform
+			{ 13, 17, 6 },		// 108 bits per transform
+			{ 13, 18, 5 },		// 108 bits per transform
+			{ 13, 19, 4 },		// 108 bits per transform
+			{ 13, 20, 3 },		// 108 bits per transform
+			{ 13, 21, 2 },		// 108 bits per transform
+			{ 13, 22, 1 },		// 108 bits per transform
+			{ 13, 23, 0 },		// 108 bits per transform
+			{ 14, 0, 22 },		// 108 bits per transform
+			{ 14, 1, 21 },		// 108 bits per transform
+			{ 14, 2, 20 },		// 108 bits per transform
+			{ 14, 3, 19 },		// 108 bits per transform
+			{ 14, 4, 18 },		// 108 bits per transform
+			{ 14, 5, 17 },		// 108 bits per transform
+			{ 14, 6, 16 },		// 108 bits per transform
+			{ 14, 7, 15 },		// 108 bits per transform
+			{ 14, 8, 14 },		// 108 bits per transform
+			{ 14, 9, 13 },		// 108 bits per transform
+			{ 14, 10, 12 },		// 108 bits per transform
+			{ 14, 11, 11 },		// 108 bits per transform
+			{ 14, 12, 10 },		// 108 bits per transform
+			{ 14, 13, 9 },		// 108 bits per transform
+			{ 14, 14, 8 },		// 108 bits per transform
+			{ 14, 15, 7 },		// 108 bits per transform
+			{ 14, 16, 6 },		// 108 bits per transform
+			{ 14, 17, 5 },		// 108 bits per transform
+			{ 14, 18, 4 },		// 108 bits per transform
+			{ 14, 19, 3 },		// 108 bits per transform
+			{ 14, 20, 2 },		// 108 bits per transform
+			{ 14, 21, 1 },		// 108 bits per transform
+			{ 14, 22, 0 },		// 108 bits per transform
+			{ 15, 0, 21 },		// 108 bits per transform
+			{ 15, 1, 20 },		// 108 bits per transform
+			{ 15, 2, 19 },		// 108 bits per transform
+			{ 15, 3, 18 },		// 108 bits per transform
+			{ 15, 4, 17 },		// 108 bits per transform
+			{ 15, 5, 16 },		// 108 bits per transform
+			{ 15, 6, 15 },		// 108 bits per transform
+			{ 15, 7, 14 },		// 108 bits per transform
+			{ 15, 8, 13 },		// 108 bits per transform
+			{ 15, 9, 12 },		// 108 bits per transform
+			{ 15, 10, 11 },		// 108 bits per transform
+			{ 15, 11, 10 },		// 108 bits per transform
+			{ 15, 12, 9 },		// 108 bits per transform
+			{ 15, 13, 8 },		// 108 bits per transform
+			{ 15, 14, 7 },		// 108 bits per transform
+			{ 15, 15, 6 },		// 108 bits per transform
+			{ 15, 16, 5 },		// 108 bits per transform
+			{ 15, 17, 4 },		// 108 bits per transform
+			{ 15, 18, 3 },		// 108 bits per transform
+			{ 15, 19, 2 },		// 108 bits per transform
+			{ 15, 20, 1 },		// 108 bits per transform
+			{ 15, 21, 0 },		// 108 bits per transform
+			{ 16, 0, 20 },		// 108 bits per transform
+			{ 16, 1, 19 },		// 108 bits per transform
+			{ 16, 2, 18 },		// 108 bits per transform
+			{ 16, 3, 17 },		// 108 bits per transform
+			{ 16, 4, 16 },		// 108 bits per transform
+			{ 16, 5, 15 },		// 108 bits per transform
+			{ 16, 6, 14 },		// 108 bits per transform
+			{ 16, 7, 13 },		// 108 bits per transform
+			{ 16, 8, 12 },		// 108 bits per transform
+			{ 16, 9, 11 },		// 108 bits per transform
+			{ 16, 10, 10 },		// 108 bits per transform
+			{ 16, 11, 9 },		// 108 bits per transform
+			{ 16, 12, 8 },		// 108 bits per transform
+			{ 16, 13, 7 },		// 108 bits per transform
+			{ 16, 14, 6 },		// 108 bits per transform
+			{ 16, 15, 5 },		// 108 bits per transform
+			{ 16, 16, 4 },		// 108 bits per transform
+			{ 16, 17, 3 },		// 108 bits per transform
+			{ 16, 18, 2 },		// 108 bits per transform
+			{ 16, 19, 1 },		// 108 bits per transform
+			{ 16, 20, 0 },		// 108 bits per transform
+			{ 17, 0, 19 },		// 108 bits per transform
+			{ 17, 1, 18 },		// 108 bits per transform
+			{ 17, 2, 17 },		// 108 bits per transform
+			{ 17, 3, 16 },		// 108 bits per transform
+			{ 17, 4, 15 },		// 108 bits per transform
+			{ 17, 5, 14 },		// 108 bits per transform
+			{ 17, 6, 13 },		// 108 bits per transform
+			{ 17, 7, 12 },		// 108 bits per transform
+			{ 17, 8, 11 },		// 108 bits per transform
+			{ 17, 9, 10 },		// 108 bits per transform
+			{ 17, 10, 9 },		// 108 bits per transform
+			{ 17, 11, 8 },		// 108 bits per transform
+			{ 17, 12, 7 },		// 108 bits per transform
+			{ 17, 13, 6 },		// 108 bits per transform
+			{ 17, 14, 5 },		// 108 bits per transform
+			{ 17, 15, 4 },		// 108 bits per transform
+			{ 17, 16, 3 },		// 108 bits per transform
+			{ 17, 17, 2 },		// 108 bits per transform
+			{ 17, 18, 1 },		// 108 bits per transform
+			{ 17, 19, 0 },		// 108 bits per transform
+			{ 18, 0, 18 },		// 108 bits per transform
+			{ 18, 1, 17 },		// 108 bits per transform
+			{ 18, 2, 16 },		// 108 bits per transform
+			{ 18, 3, 15 },		// 108 bits per transform
+			{ 18, 4, 14 },		// 108 bits per transform
+			{ 18, 5, 13 },		// 108 bits per transform
+			{ 18, 6, 12 },		// 108 bits per transform
+			{ 18, 7, 11 },		// 108 bits per transform
+			{ 18, 8, 10 },		// 108 bits per transform
+			{ 18, 9, 9 },		// 108 bits per transform
+			{ 18, 10, 8 },		// 108 bits per transform
+			{ 18, 11, 7 },		// 108 bits per transform
+			{ 18, 12, 6 },		// 108 bits per transform
+			{ 18, 13, 5 },		// 108 bits per transform
+			{ 18, 14, 4 },		// 108 bits per transform
+			{ 18, 15, 3 },		// 108 bits per transform
+			{ 18, 16, 2 },		// 108 bits per transform
+			{ 18, 17, 1 },		// 108 bits per transform
+			{ 18, 18, 0 },		// 108 bits per transform
+			{ 19, 0, 17 },		// 108 bits per transform
+			{ 19, 1, 16 },		// 108 bits per transform
+			{ 19, 2, 15 },		// 108 bits per transform
+			{ 19, 3, 14 },		// 108 bits per transform
+			{ 19, 4, 13 },		// 108 bits per transform
+			{ 19, 5, 12 },		// 108 bits per transform
+			{ 19, 6, 11 },		// 108 bits per transform
+			{ 19, 7, 10 },		// 108 bits per transform
+			{ 19, 8, 9 },		// 108 bits per transform
+			{ 19, 9, 8 },		// 108 bits per transform
+			{ 19, 10, 7 },		// 108 bits per transform
+			{ 19, 11, 6 },		// 108 bits per transform
+			{ 19, 12, 5 },		// 108 bits per transform
+			{ 19, 13, 4 },		// 108 bits per transform
+			{ 19, 14, 3 },		// 108 bits per transform
+			{ 19, 15, 2 },		// 108 bits per transform
+			{ 19, 16, 1 },		// 108 bits per transform
+			{ 19, 17, 0 },		// 108 bits per transform
+			{ 20, 0, 16 },		// 108 bits per transform
+			{ 20, 1, 15 },		// 108 bits per transform
+			{ 20, 2, 14 },		// 108 bits per transform
+			{ 20, 3, 13 },		// 108 bits per transform
+			{ 20, 4, 12 },		// 108 bits per transform
+			{ 20, 5, 11 },		// 108 bits per transform
+			{ 20, 6, 10 },		// 108 bits per transform
+			{ 20, 7, 9 },		// 108 bits per transform
+			{ 20, 8, 8 },		// 108 bits per transform
+			{ 20, 9, 7 },		// 108 bits per transform
+			{ 20, 10, 6 },		// 108 bits per transform
+			{ 20, 11, 5 },		// 108 bits per transform
+			{ 20, 12, 4 },		// 108 bits per transform
+			{ 20, 13, 3 },		// 108 bits per transform
+			{ 20, 14, 2 },		// 108 bits per transform
+			{ 20, 15, 1 },		// 108 bits per transform
+			{ 20, 16, 0 },		// 108 bits per transform
+			{ 21, 0, 15 },		// 108 bits per transform
+			{ 21, 1, 14 },		// 108 bits per transform
+			{ 21, 2, 13 },		// 108 bits per transform
+			{ 21, 3, 12 },		// 108 bits per transform
+			{ 21, 4, 11 },		// 108 bits per transform
+			{ 21, 5, 10 },		// 108 bits per transform
+			{ 21, 6, 9 },		// 108 bits per transform
+			{ 21, 7, 8 },		// 108 bits per transform
+			{ 21, 8, 7 },		// 108 bits per transform
+			{ 21, 9, 6 },		// 108 bits per transform
+			{ 21, 10, 5 },		// 108 bits per transform
+			{ 21, 11, 4 },		// 108 bits per transform
+			{ 21, 12, 3 },		// 108 bits per transform
+			{ 21, 13, 2 },		// 108 bits per transform
+			{ 21, 14, 1 },		// 108 bits per transform
+			{ 21, 15, 0 },		// 108 bits per transform
+			{ 22, 0, 14 },		// 108 bits per transform
+			{ 22, 1, 13 },		// 108 bits per transform
+			{ 22, 2, 12 },		// 108 bits per transform
+			{ 22, 3, 11 },		// 108 bits per transform
+			{ 22, 4, 10 },		// 108 bits per transform
+			{ 22, 5, 9 },		// 108 bits per transform
+			{ 22, 6, 8 },		// 108 bits per transform
+			{ 22, 7, 7 },		// 108 bits per transform
+			{ 22, 8, 6 },		// 108 bits per transform
+			{ 22, 9, 5 },		// 108 bits per transform
+			{ 22, 10, 4 },		// 108 bits per transform
+			{ 22, 11, 3 },		// 108 bits per transform
+			{ 22, 12, 2 },		// 108 bits per transform
+			{ 22, 13, 1 },		// 108 bits per transform
+			{ 22, 14, 0 },		// 108 bits per transform
+			{ 23, 0, 13 },		// 108 bits per transform
+			{ 23, 1, 12 },		// 108 bits per transform
+			{ 23, 2, 11 },		// 108 bits per transform
+			{ 23, 3, 10 },		// 108 bits per transform
+			{ 23, 4, 9 },		// 108 bits per transform
+			{ 23, 5, 8 },		// 108 bits per transform
+			{ 23, 6, 7 },		// 108 bits per transform
+			{ 23, 7, 6 },		// 108 bits per transform
+			{ 23, 8, 5 },		// 108 bits per transform
+			{ 23, 9, 4 },		// 108 bits per transform
+			{ 23, 10, 3 },		// 108 bits per transform
+			{ 23, 11, 2 },		// 108 bits per transform
+			{ 23, 12, 1 },		// 108 bits per transform
+			{ 23, 13, 0 },		// 108 bits per transform
+			{ 24, 0, 4 },		// 108 bits per transform
+			{ 24, 1, 3 },		// 108 bits per transform
+			{ 24, 2, 2 },		// 108 bits per transform
+			{ 24, 3, 1 },		// 108 bits per transform
+			{ 24, 4, 0 },		// 108 bits per transform
+			{ 0, 5, 24 },		// 111 bits per transform
+			{ 0, 14, 23 },		// 111 bits per transform
+			{ 0, 15, 22 },		// 111 bits per transform
+			{ 0, 16, 21 },		// 111 bits per transform
+			{ 0, 17, 20 },		// 111 bits per transform
+			{ 0, 18, 19 },		// 111 bits per transform
+			{ 0, 19, 18 },		// 111 bits per transform
+			{ 0, 20, 17 },		// 111 bits per transform
+			{ 0, 21, 16 },		// 111 bits per transform
+			{ 0, 22, 15 },		// 111 bits per transform
+			{ 0, 23, 14 },		// 111 bits per transform
+			{ 0, 24, 5 },		// 111 bits per transform
+			{ 1, 4, 24 },		// 111 bits per transform
+			{ 1, 13, 23 },		// 111 bits per transform
+			{ 1, 14, 22 },		// 111 bits per transform
+			{ 1, 15, 21 },		// 111 bits per transform
+			{ 1, 16, 20 },		// 111 bits per transform
+			{ 1, 17, 19 },		// 111 bits per transform
+			{ 1, 18, 18 },		// 111 bits per transform
+			{ 1, 19, 17 },		// 111 bits per transform
+			{ 1, 20, 16 },		// 111 bits per transform
+			{ 1, 21, 15 },		// 111 bits per transform
+			{ 1, 22, 14 },		// 111 bits per transform
+			{ 1, 23, 13 },		// 111 bits per transform
+			{ 1, 24, 4 },		// 111 bits per transform
+			{ 2, 3, 24 },		// 111 bits per transform
+			{ 2, 12, 23 },		// 111 bits per transform
+			{ 2, 13, 22 },		// 111 bits per transform
+			{ 2, 14, 21 },		// 111 bits per transform
+			{ 2, 15, 20 },		// 111 bits per transform
+			{ 2, 16, 19 },		// 111 bits per transform
+			{ 2, 17, 18 },		// 111 bits per transform
+			{ 2, 18, 17 },		// 111 bits per transform
+			{ 2, 19, 16 },		// 111 bits per transform
+			{ 2, 20, 15 },		// 111 bits per transform
+			{ 2, 21, 14 },		// 111 bits per transform
+			{ 2, 22, 13 },		// 111 bits per transform
+			{ 2, 23, 12 },		// 111 bits per transform
+			{ 2, 24, 3 },		// 111 bits per transform
+			{ 3, 2, 24 },		// 111 bits per transform
+			{ 3, 11, 23 },		// 111 bits per transform
+			{ 3, 12, 22 },		// 111 bits per transform
+			{ 3, 13, 21 },		// 111 bits per transform
+			{ 3, 14, 20 },		// 111 bits per transform
+			{ 3, 15, 19 },		// 111 bits per transform
+			{ 3, 16, 18 },		// 111 bits per transform
+			{ 3, 17, 17 },		// 111 bits per transform
+			{ 3, 18, 16 },		// 111 bits per transform
+			{ 3, 19, 15 },		// 111 bits per transform
+			{ 3, 20, 14 },		// 111 bits per transform
+			{ 3, 21, 13 },		// 111 bits per transform
+			{ 3, 22, 12 },		// 111 bits per transform
+			{ 3, 23, 11 },		// 111 bits per transform
+			{ 3, 24, 2 },		// 111 bits per transform
+			{ 4, 1, 24 },		// 111 bits per transform
+			{ 4, 10, 23 },		// 111 bits per transform
+			{ 4, 11, 22 },		// 111 bits per transform
+			{ 4, 12, 21 },		// 111 bits per transform
+			{ 4, 13, 20 },		// 111 bits per transform
+			{ 4, 14, 19 },		// 111 bits per transform
+			{ 4, 15, 18 },		// 111 bits per transform
+			{ 4, 16, 17 },		// 111 bits per transform
+			{ 4, 17, 16 },		// 111 bits per transform
+			{ 4, 18, 15 },		// 111 bits per transform
+			{ 4, 19, 14 },		// 111 bits per transform
+			{ 4, 20, 13 },		// 111 bits per transform
+			{ 4, 21, 12 },		// 111 bits per transform
+			{ 4, 22, 11 },		// 111 bits per transform
+			{ 4, 23, 10 },		// 111 bits per transform
+			{ 4, 24, 1 },		// 111 bits per transform
+			{ 5, 0, 24 },		// 111 bits per transform
+			{ 5, 9, 23 },		// 111 bits per transform
+			{ 5, 10, 22 },		// 111 bits per transform
+			{ 5, 11, 21 },		// 111 bits per transform
+			{ 5, 12, 20 },		// 111 bits per transform
+			{ 5, 13, 19 },		// 111 bits per transform
+			{ 5, 14, 18 },		// 111 bits per transform
+			{ 5, 15, 17 },		// 111 bits per transform
+			{ 5, 16, 16 },		// 111 bits per transform
+			{ 5, 17, 15 },		// 111 bits per transform
+			{ 5, 18, 14 },		// 111 bits per transform
+			{ 5, 19, 13 },		// 111 bits per transform
+			{ 5, 20, 12 },		// 111 bits per transform
+			{ 5, 21, 11 },		// 111 bits per transform
+			{ 5, 22, 10 },		// 111 bits per transform
+			{ 5, 23, 9 },		// 111 bits per transform
+			{ 5, 24, 0 },		// 111 bits per transform
+			{ 6, 8, 23 },		// 111 bits per transform
+			{ 6, 9, 22 },		// 111 bits per transform
+			{ 6, 10, 21 },		// 111 bits per transform
+			{ 6, 11, 20 },		// 111 bits per transform
+			{ 6, 12, 19 },		// 111 bits per transform
+			{ 6, 13, 18 },		// 111 bits per transform
+			{ 6, 14, 17 },		// 111 bits per transform
+			{ 6, 15, 16 },		// 111 bits per transform
+			{ 6, 16, 15 },		// 111 bits per transform
+			{ 6, 17, 14 },		// 111 bits per transform
+			{ 6, 18, 13 },		// 111 bits per transform
+			{ 6, 19, 12 },		// 111 bits per transform
+			{ 6, 20, 11 },		// 111 bits per transform
+			{ 6, 21, 10 },		// 111 bits per transform
+			{ 6, 22, 9 },		// 111 bits per transform
+			{ 6, 23, 8 },		// 111 bits per transform
+			{ 7, 7, 23 },		// 111 bits per transform
+			{ 7, 8, 22 },		// 111 bits per transform
+			{ 7, 9, 21 },		// 111 bits per transform
+			{ 7, 10, 20 },		// 111 bits per transform
+			{ 7, 11, 19 },		// 111 bits per transform
+			{ 7, 12, 18 },		// 111 bits per transform
+			{ 7, 13, 17 },		// 111 bits per transform
+			{ 7, 14, 16 },		// 111 bits per transform
+			{ 7, 15, 15 },		// 111 bits per transform
+			{ 7, 16, 14 },		// 111 bits per transform
+			{ 7, 17, 13 },		// 111 bits per transform
+			{ 7, 18, 12 },		// 111 bits per transform
+			{ 7, 19, 11 },		// 111 bits per transform
+			{ 7, 20, 10 },		// 111 bits per transform
+			{ 7, 21, 9 },		// 111 bits per transform
+			{ 7, 22, 8 },		// 111 bits per transform
+			{ 7, 23, 7 },		// 111 bits per transform
+			{ 8, 6, 23 },		// 111 bits per transform
+			{ 8, 7, 22 },		// 111 bits per transform
+			{ 8, 8, 21 },		// 111 bits per transform
+			{ 8, 9, 20 },		// 111 bits per transform
+			{ 8, 10, 19 },		// 111 bits per transform
+			{ 8, 11, 18 },		// 111 bits per transform
+			{ 8, 12, 17 },		// 111 bits per transform
+			{ 8, 13, 16 },		// 111 bits per transform
+			{ 8, 14, 15 },		// 111 bits per transform
+			{ 8, 15, 14 },		// 111 bits per transform
+			{ 8, 16, 13 },		// 111 bits per transform
+			{ 8, 17, 12 },		// 111 bits per transform
+			{ 8, 18, 11 },		// 111 bits per transform
+			{ 8, 19, 10 },		// 111 bits per transform
+			{ 8, 20, 9 },		// 111 bits per transform
+			{ 8, 21, 8 },		// 111 bits per transform
+			{ 8, 22, 7 },		// 111 bits per transform
+			{ 8, 23, 6 },		// 111 bits per transform
+			{ 9, 5, 23 },		// 111 bits per transform
+			{ 9, 6, 22 },		// 111 bits per transform
+			{ 9, 7, 21 },		// 111 bits per transform
+			{ 9, 8, 20 },		// 111 bits per transform
+			{ 9, 9, 19 },		// 111 bits per transform
+			{ 9, 10, 18 },		// 111 bits per transform
+			{ 9, 11, 17 },		// 111 bits per transform
+			{ 9, 12, 16 },		// 111 bits per transform
+			{ 9, 13, 15 },		// 111 bits per transform
+			{ 9, 14, 14 },		// 111 bits per transform
+			{ 9, 15, 13 },		// 111 bits per transform
+			{ 9, 16, 12 },		// 111 bits per transform
+			{ 9, 17, 11 },		// 111 bits per transform
+			{ 9, 18, 10 },		// 111 bits per transform
+			{ 9, 19, 9 },		// 111 bits per transform
+			{ 9, 20, 8 },		// 111 bits per transform
+			{ 9, 21, 7 },		// 111 bits per transform
+			{ 9, 22, 6 },		// 111 bits per transform
+			{ 9, 23, 5 },		// 111 bits per transform
+			{ 10, 4, 23 },		// 111 bits per transform
+			{ 10, 5, 22 },		// 111 bits per transform
+			{ 10, 6, 21 },		// 111 bits per transform
+			{ 10, 7, 20 },		// 111 bits per transform
+			{ 10, 8, 19 },		// 111 bits per transform
+			{ 10, 9, 18 },		// 111 bits per transform
+			{ 10, 10, 17 },		// 111 bits per transform
+			{ 10, 11, 16 },		// 111 bits per transform
+			{ 10, 12, 15 },		// 111 bits per transform
+			{ 10, 13, 14 },		// 111 bits per transform
+			{ 10, 14, 13 },		// 111 bits per transform
+			{ 10, 15, 12 },		// 111 bits per transform
+			{ 10, 16, 11 },		// 111 bits per transform
+			{ 10, 17, 10 },		// 111 bits per transform
+			{ 10, 18, 9 },		// 111 bits per transform
+			{ 10, 19, 8 },		// 111 bits per transform
+			{ 10, 20, 7 },		// 111 bits per transform
+			{ 10, 21, 6 },		// 111 bits per transform
+			{ 10, 22, 5 },		// 111 bits per transform
+			{ 10, 23, 4 },		// 111 bits per transform
+			{ 11, 3, 23 },		// 111 bits per transform
+			{ 11, 4, 22 },		// 111 bits per transform
+			{ 11, 5, 21 },		// 111 bits per transform
+			{ 11, 6, 20 },		// 111 bits per transform
+			{ 11, 7, 19 },		// 111 bits per transform
+			{ 11, 8, 18 },		// 111 bits per transform
+			{ 11, 9, 17 },		// 111 bits per transform
+			{ 11, 10, 16 },		// 111 bits per transform
+			{ 11, 11, 15 },		// 111 bits per transform
+			{ 11, 12, 14 },		// 111 bits per transform
+			{ 11, 13, 13 },		// 111 bits per transform
+			{ 11, 14, 12 },		// 111 bits per transform
+			{ 11, 15, 11 },		// 111 bits per transform
+			{ 11, 16, 10 },		// 111 bits per transform
+			{ 11, 17, 9 },		// 111 bits per transform
+			{ 11, 18, 8 },		// 111 bits per transform
+			{ 11, 19, 7 },		// 111 bits per transform
+			{ 11, 20, 6 },		// 111 bits per transform
+			{ 11, 21, 5 },		// 111 bits per transform
+			{ 11, 22, 4 },		// 111 bits per transform
+			{ 11, 23, 3 },		// 111 bits per transform
+			{ 12, 2, 23 },		// 111 bits per transform
+			{ 12, 3, 22 },		// 111 bits per transform
+			{ 12, 4, 21 },		// 111 bits per transform
+			{ 12, 5, 20 },		// 111 bits per transform
+			{ 12, 6, 19 },		// 111 bits per transform
+			{ 12, 7, 18 },		// 111 bits per transform
+			{ 12, 8, 17 },		// 111 bits per transform
+			{ 12, 9, 16 },		// 111 bits per transform
+			{ 12, 10, 15 },		// 111 bits per transform
+			{ 12, 11, 14 },		// 111 bits per transform
+			{ 12, 12, 13 },		// 111 bits per transform
+			{ 12, 13, 12 },		// 111 bits per transform
+			{ 12, 14, 11 },		// 111 bits per transform
+			{ 12, 15, 10 },		// 111 bits per transform
+			{ 12, 16, 9 },		// 111 bits per transform
+			{ 12, 17, 8 },		// 111 bits per transform
+			{ 12, 18, 7 },		// 111 bits per transform
+			{ 12, 19, 6 },		// 111 bits per transform
+			{ 12, 20, 5 },		// 111 bits per transform
+			{ 12, 21, 4 },		// 111 bits per transform
+			{ 12, 22, 3 },		// 111 bits per transform
+			{ 12, 23, 2 },		// 111 bits per transform
+			{ 13, 1, 23 },		// 111 bits per transform
+			{ 13, 2, 22 },		// 111 bits per transform
+			{ 13, 3, 21 },		// 111 bits per transform
+			{ 13, 4, 20 },		// 111 bits per transform
+			{ 13, 5, 19 },		// 111 bits per transform
+			{ 13, 6, 18 },		// 111 bits per transform
+			{ 13, 7, 17 },		// 111 bits per transform
+			{ 13, 8, 16 },		// 111 bits per transform
+			{ 13, 9, 15 },		// 111 bits per transform
+			{ 13, 10, 14 },		// 111 bits per transform
+			{ 13, 11, 13 },		// 111 bits per transform
+			{ 13, 12, 12 },		// 111 bits per transform
+			{ 13, 13, 11 },		// 111 bits per transform
+			{ 13, 14, 10 },		// 111 bits per transform
+			{ 13, 15, 9 },		// 111 bits per transform
+			{ 13, 16, 8 },		// 111 bits per transform
+			{ 13, 17, 7 },		// 111 bits per transform
+			{ 13, 18, 6 },		// 111 bits per transform
+			{ 13, 19, 5 },		// 111 bits per transform
+			{ 13, 20, 4 },		// 111 bits per transform
+			{ 13, 21, 3 },		// 111 bits per transform
+			{ 13, 22, 2 },		// 111 bits per transform
+			{ 13, 23, 1 },		// 111 bits per transform
+			{ 14, 0, 23 },		// 111 bits per transform
+			{ 14, 1, 22 },		// 111 bits per transform
+			{ 14, 2, 21 },		// 111 bits per transform
+			{ 14, 3, 20 },		// 111 bits per transform
+			{ 14, 4, 19 },		// 111 bits per transform
+			{ 14, 5, 18 },		// 111 bits per transform
+			{ 14, 6, 17 },		// 111 bits per transform
+			{ 14, 7, 16 },		// 111 bits per transform
+			{ 14, 8, 15 },		// 111 bits per transform
+			{ 14, 9, 14 },		// 111 bits per transform
+			{ 14, 10, 13 },		// 111 bits per transform
+			{ 14, 11, 12 },		// 111 bits per transform
+			{ 14, 12, 11 },		// 111 bits per transform
+			{ 14, 13, 10 },		// 111 bits per transform
+			{ 14, 14, 9 },		// 111 bits per transform
+			{ 14, 15, 8 },		// 111 bits per transform
+			{ 14, 16, 7 },		// 111 bits per transform
+			{ 14, 17, 6 },		// 111 bits per transform
+			{ 14, 18, 5 },		// 111 bits per transform
+			{ 14, 19, 4 },		// 111 bits per transform
+			{ 14, 20, 3 },		// 111 bits per transform
+			{ 14, 21, 2 },		// 111 bits per transform
+			{ 14, 22, 1 },		// 111 bits per transform
+			{ 14, 23, 0 },		// 111 bits per transform
+			{ 15, 0, 22 },		// 111 bits per transform
+			{ 15, 1, 21 },		// 111 bits per transform
+			{ 15, 2, 20 },		// 111 bits per transform
+			{ 15, 3, 19 },		// 111 bits per transform
+			{ 15, 4, 18 },		// 111 bits per transform
+			{ 15, 5, 17 },		// 111 bits per transform
+			{ 15, 6, 16 },		// 111 bits per transform
+			{ 15, 7, 15 },		// 111 bits per transform
+			{ 15, 8, 14 },		// 111 bits per transform
+			{ 15, 9, 13 },		// 111 bits per transform
+			{ 15, 10, 12 },		// 111 bits per transform
+			{ 15, 11, 11 },		// 111 bits per transform
+			{ 15, 12, 10 },		// 111 bits per transform
+			{ 15, 13, 9 },		// 111 bits per transform
+			{ 15, 14, 8 },		// 111 bits per transform
+			{ 15, 15, 7 },		// 111 bits per transform
+			{ 15, 16, 6 },		// 111 bits per transform
+			{ 15, 17, 5 },		// 111 bits per transform
+			{ 15, 18, 4 },		// 111 bits per transform
+			{ 15, 19, 3 },		// 111 bits per transform
+			{ 15, 20, 2 },		// 111 bits per transform
+			{ 15, 21, 1 },		// 111 bits per transform
+			{ 15, 22, 0 },		// 111 bits per transform
+			{ 16, 0, 21 },		// 111 bits per transform
+			{ 16, 1, 20 },		// 111 bits per transform
+			{ 16, 2, 19 },		// 111 bits per transform
+			{ 16, 3, 18 },		// 111 bits per transform
+			{ 16, 4, 17 },		// 111 bits per transform
+			{ 16, 5, 16 },		// 111 bits per transform
+			{ 16, 6, 15 },		// 111 bits per transform
+			{ 16, 7, 14 },		// 111 bits per transform
+			{ 16, 8, 13 },		// 111 bits per transform
+			{ 16, 9, 12 },		// 111 bits per transform
+			{ 16, 10, 11 },		// 111 bits per transform
+			{ 16, 11, 10 },		// 111 bits per transform
+			{ 16, 12, 9 },		// 111 bits per transform
+			{ 16, 13, 8 },		// 111 bits per transform
+			{ 16, 14, 7 },		// 111 bits per transform
+			{ 16, 15, 6 },		// 111 bits per transform
+			{ 16, 16, 5 },		// 111 bits per transform
+			{ 16, 17, 4 },		// 111 bits per transform
+			{ 16, 18, 3 },		// 111 bits per transform
+			{ 16, 19, 2 },		// 111 bits per transform
+			{ 16, 20, 1 },		// 111 bits per transform
+			{ 16, 21, 0 },		// 111 bits per transform
+			{ 17, 0, 20 },		// 111 bits per transform
+			{ 17, 1, 19 },		// 111 bits per transform
+			{ 17, 2, 18 },		// 111 bits per transform
+			{ 17, 3, 17 },		// 111 bits per transform
+			{ 17, 4, 16 },		// 111 bits per transform
+			{ 17, 5, 15 },		// 111 bits per transform
+			{ 17, 6, 14 },		// 111 bits per transform
+			{ 17, 7, 13 },		// 111 bits per transform
+			{ 17, 8, 12 },		// 111 bits per transform
+			{ 17, 9, 11 },		// 111 bits per transform
+			{ 17, 10, 10 },		// 111 bits per transform
+			{ 17, 11, 9 },		// 111 bits per transform
+			{ 17, 12, 8 },		// 111 bits per transform
+			{ 17, 13, 7 },		// 111 bits per transform
+			{ 17, 14, 6 },		// 111 bits per transform
+			{ 17, 15, 5 },		// 111 bits per transform
+			{ 17, 16, 4 },		// 111 bits per transform
+			{ 17, 17, 3 },		// 111 bits per transform
+			{ 17, 18, 2 },		// 111 bits per transform
+			{ 17, 19, 1 },		// 111 bits per transform
+			{ 17, 20, 0 },		// 111 bits per transform
+			{ 18, 0, 19 },		// 111 bits per transform
+			{ 18, 1, 18 },		// 111 bits per transform
+			{ 18, 2, 17 },		// 111 bits per transform
+			{ 18, 3, 16 },		// 111 bits per transform
+			{ 18, 4, 15 },		// 111 bits per transform
+			{ 18, 5, 14 },		// 111 bits per transform
+			{ 18, 6, 13 },		// 111 bits per transform
+			{ 18, 7, 12 },		// 111 bits per transform
+			{ 18, 8, 11 },		// 111 bits per transform
+			{ 18, 9, 10 },		// 111 bits per transform
+			{ 18, 10, 9 },		// 111 bits per transform
+			{ 18, 11, 8 },		// 111 bits per transform
+			{ 18, 12, 7 },		// 111 bits per transform
+			{ 18, 13, 6 },		// 111 bits per transform
+			{ 18, 14, 5 },		// 111 bits per transform
+			{ 18, 15, 4 },		// 111 bits per transform
+			{ 18, 16, 3 },		// 111 bits per transform
+			{ 18, 17, 2 },		// 111 bits per transform
+			{ 18, 18, 1 },		// 111 bits per transform
+			{ 18, 19, 0 },		// 111 bits per transform
+			{ 19, 0, 18 },		// 111 bits per transform
+			{ 19, 1, 17 },		// 111 bits per transform
+			{ 19, 2, 16 },		// 111 bits per transform
+			{ 19, 3, 15 },		// 111 bits per transform
+			{ 19, 4, 14 },		// 111 bits per transform
+			{ 19, 5, 13 },		// 111 bits per transform
+			{ 19, 6, 12 },		// 111 bits per transform
+			{ 19, 7, 11 },		// 111 bits per transform
+			{ 19, 8, 10 },		// 111 bits per transform
+			{ 19, 9, 9 },		// 111 bits per transform
+			{ 19, 10, 8 },		// 111 bits per transform
+			{ 19, 11, 7 },		// 111 bits per transform
+			{ 19, 12, 6 },		// 111 bits per transform
+			{ 19, 13, 5 },		// 111 bits per transform
+			{ 19, 14, 4 },		// 111 bits per transform
+			{ 19, 15, 3 },		// 111 bits per transform
+			{ 19, 16, 2 },		// 111 bits per transform
+			{ 19, 17, 1 },		// 111 bits per transform
+			{ 19, 18, 0 },		// 111 bits per transform
+			{ 20, 0, 17 },		// 111 bits per transform
+			{ 20, 1, 16 },		// 111 bits per transform
+			{ 20, 2, 15 },		// 111 bits per transform
+			{ 20, 3, 14 },		// 111 bits per transform
+			{ 20, 4, 13 },		// 111 bits per transform
+			{ 20, 5, 12 },		// 111 bits per transform
+			{ 20, 6, 11 },		// 111 bits per transform
+			{ 20, 7, 10 },		// 111 bits per transform
+			{ 20, 8, 9 },		// 111 bits per transform
+			{ 20, 9, 8 },		// 111 bits per transform
+			{ 20, 10, 7 },		// 111 bits per transform
+			{ 20, 11, 6 },		// 111 bits per transform
+			{ 20, 12, 5 },		// 111 bits per transform
+			{ 20, 13, 4 },		// 111 bits per transform
+			{ 20, 14, 3 },		// 111 bits per transform
+			{ 20, 15, 2 },		// 111 bits per transform
+			{ 20, 16, 1 },		// 111 bits per transform
+			{ 20, 17, 0 },		// 111 bits per transform
+			{ 21, 0, 16 },		// 111 bits per transform
+			{ 21, 1, 15 },		// 111 bits per transform
+			{ 21, 2, 14 },		// 111 bits per transform
+			{ 21, 3, 13 },		// 111 bits per transform
+			{ 21, 4, 12 },		// 111 bits per transform
+			{ 21, 5, 11 },		// 111 bits per transform
+			{ 21, 6, 10 },		// 111 bits per transform
+			{ 21, 7, 9 },		// 111 bits per transform
+			{ 21, 8, 8 },		// 111 bits per transform
+			{ 21, 9, 7 },		// 111 bits per transform
+			{ 21, 10, 6 },		// 111 bits per transform
+			{ 21, 11, 5 },		// 111 bits per transform
+			{ 21, 12, 4 },		// 111 bits per transform
+			{ 21, 13, 3 },		// 111 bits per transform
+			{ 21, 14, 2 },		// 111 bits per transform
+			{ 21, 15, 1 },		// 111 bits per transform
+			{ 21, 16, 0 },		// 111 bits per transform
+			{ 22, 0, 15 },		// 111 bits per transform
+			{ 22, 1, 14 },		// 111 bits per transform
+			{ 22, 2, 13 },		// 111 bits per transform
+			{ 22, 3, 12 },		// 111 bits per transform
+			{ 22, 4, 11 },		// 111 bits per transform
+			{ 22, 5, 10 },		// 111 bits per transform
+			{ 22, 6, 9 },		// 111 bits per transform
+			{ 22, 7, 8 },		// 111 bits per transform
+			{ 22, 8, 7 },		// 111 bits per transform
+			{ 22, 9, 6 },		// 111 bits per transform
+			{ 22, 10, 5 },		// 111 bits per transform
+			{ 22, 11, 4 },		// 111 bits per transform
+			{ 22, 12, 3 },		// 111 bits per transform
+			{ 22, 13, 2 },		// 111 bits per transform
+			{ 22, 14, 1 },		// 111 bits per transform
+			{ 22, 15, 0 },		// 111 bits per transform
+			{ 23, 0, 14 },		// 111 bits per transform
+			{ 23, 1, 13 },		// 111 bits per transform
+			{ 23, 2, 12 },		// 111 bits per transform
+			{ 23, 3, 11 },		// 111 bits per transform
+			{ 23, 4, 10 },		// 111 bits per transform
+			{ 23, 5, 9 },		// 111 bits per transform
+			{ 23, 6, 8 },		// 111 bits per transform
+			{ 23, 7, 7 },		// 111 bits per transform
+			{ 23, 8, 6 },		// 111 bits per transform
+			{ 23, 9, 5 },		// 111 bits per transform
+			{ 23, 10, 4 },		// 111 bits per transform
+			{ 23, 11, 3 },		// 111 bits per transform
+			{ 23, 12, 2 },		// 111 bits per transform
+			{ 23, 13, 1 },		// 111 bits per transform
+			{ 23, 14, 0 },		// 111 bits per transform
+			{ 24, 0, 5 },		// 111 bits per transform
+			{ 24, 1, 4 },		// 111 bits per transform
+			{ 24, 2, 3 },		// 111 bits per transform
+			{ 24, 3, 2 },		// 111 bits per transform
+			{ 24, 4, 1 },		// 111 bits per transform
+			{ 24, 5, 0 },		// 111 bits per transform
+			{ 0, 6, 24 },		// 114 bits per transform
+			{ 0, 15, 23 },		// 114 bits per transform
+			{ 0, 16, 22 },		// 114 bits per transform
+			{ 0, 17, 21 },		// 114 bits per transform
+			{ 0, 18, 20 },		// 114 bits per transform
+			{ 0, 19, 19 },		// 114 bits per transform
+			{ 0, 20, 18 },		// 114 bits per transform
+			{ 0, 21, 17 },		// 114 bits per transform
+			{ 0, 22, 16 },		// 114 bits per transform
+			{ 0, 23, 15 },		// 114 bits per transform
+			{ 0, 24, 6 },		// 114 bits per transform
+			{ 1, 5, 24 },		// 114 bits per transform
+			{ 1, 14, 23 },		// 114 bits per transform
+			{ 1, 15, 22 },		// 114 bits per transform
+			{ 1, 16, 21 },		// 114 bits per transform
+			{ 1, 17, 20 },		// 114 bits per transform
+			{ 1, 18, 19 },		// 114 bits per transform
+			{ 1, 19, 18 },		// 114 bits per transform
+			{ 1, 20, 17 },		// 114 bits per transform
+			{ 1, 21, 16 },		// 114 bits per transform
+			{ 1, 22, 15 },		// 114 bits per transform
+			{ 1, 23, 14 },		// 114 bits per transform
+			{ 1, 24, 5 },		// 114 bits per transform
+			{ 2, 4, 24 },		// 114 bits per transform
+			{ 2, 13, 23 },		// 114 bits per transform
+			{ 2, 14, 22 },		// 114 bits per transform
+			{ 2, 15, 21 },		// 114 bits per transform
+			{ 2, 16, 20 },		// 114 bits per transform
+			{ 2, 17, 19 },		// 114 bits per transform
+			{ 2, 18, 18 },		// 114 bits per transform
+			{ 2, 19, 17 },		// 114 bits per transform
+			{ 2, 20, 16 },		// 114 bits per transform
+			{ 2, 21, 15 },		// 114 bits per transform
+			{ 2, 22, 14 },		// 114 bits per transform
+			{ 2, 23, 13 },		// 114 bits per transform
+			{ 2, 24, 4 },		// 114 bits per transform
+			{ 3, 3, 24 },		// 114 bits per transform
+			{ 3, 12, 23 },		// 114 bits per transform
+			{ 3, 13, 22 },		// 114 bits per transform
+			{ 3, 14, 21 },		// 114 bits per transform
+			{ 3, 15, 20 },		// 114 bits per transform
+			{ 3, 16, 19 },		// 114 bits per transform
+			{ 3, 17, 18 },		// 114 bits per transform
+			{ 3, 18, 17 },		// 114 bits per transform
+			{ 3, 19, 16 },		// 114 bits per transform
+			{ 3, 20, 15 },		// 114 bits per transform
+			{ 3, 21, 14 },		// 114 bits per transform
+			{ 3, 22, 13 },		// 114 bits per transform
+			{ 3, 23, 12 },		// 114 bits per transform
+			{ 3, 24, 3 },		// 114 bits per transform
+			{ 4, 2, 24 },		// 114 bits per transform
+			{ 4, 11, 23 },		// 114 bits per transform
+			{ 4, 12, 22 },		// 114 bits per transform
+			{ 4, 13, 21 },		// 114 bits per transform
+			{ 4, 14, 20 },		// 114 bits per transform
+			{ 4, 15, 19 },		// 114 bits per transform
+			{ 4, 16, 18 },		// 114 bits per transform
+			{ 4, 17, 17 },		// 114 bits per transform
+			{ 4, 18, 16 },		// 114 bits per transform
+			{ 4, 19, 15 },		// 114 bits per transform
+			{ 4, 20, 14 },		// 114 bits per transform
+			{ 4, 21, 13 },		// 114 bits per transform
+			{ 4, 22, 12 },		// 114 bits per transform
+			{ 4, 23, 11 },		// 114 bits per transform
+			{ 4, 24, 2 },		// 114 bits per transform
+			{ 5, 1, 24 },		// 114 bits per transform
+			{ 5, 10, 23 },		// 114 bits per transform
+			{ 5, 11, 22 },		// 114 bits per transform
+			{ 5, 12, 21 },		// 114 bits per transform
+			{ 5, 13, 20 },		// 114 bits per transform
+			{ 5, 14, 19 },		// 114 bits per transform
+			{ 5, 15, 18 },		// 114 bits per transform
+			{ 5, 16, 17 },		// 114 bits per transform
+			{ 5, 17, 16 },		// 114 bits per transform
+			{ 5, 18, 15 },		// 114 bits per transform
+			{ 5, 19, 14 },		// 114 bits per transform
+			{ 5, 20, 13 },		// 114 bits per transform
+			{ 5, 21, 12 },		// 114 bits per transform
+			{ 5, 22, 11 },		// 114 bits per transform
+			{ 5, 23, 10 },		// 114 bits per transform
+			{ 5, 24, 1 },		// 114 bits per transform
+			{ 6, 0, 24 },		// 114 bits per transform
+			{ 6, 9, 23 },		// 114 bits per transform
+			{ 6, 10, 22 },		// 114 bits per transform
+			{ 6, 11, 21 },		// 114 bits per transform
+			{ 6, 12, 20 },		// 114 bits per transform
+			{ 6, 13, 19 },		// 114 bits per transform
+			{ 6, 14, 18 },		// 114 bits per transform
+			{ 6, 15, 17 },		// 114 bits per transform
+			{ 6, 16, 16 },		// 114 bits per transform
+			{ 6, 17, 15 },		// 114 bits per transform
+			{ 6, 18, 14 },		// 114 bits per transform
+			{ 6, 19, 13 },		// 114 bits per transform
+			{ 6, 20, 12 },		// 114 bits per transform
+			{ 6, 21, 11 },		// 114 bits per transform
+			{ 6, 22, 10 },		// 114 bits per transform
+			{ 6, 23, 9 },		// 114 bits per transform
+			{ 6, 24, 0 },		// 114 bits per transform
+			{ 7, 8, 23 },		// 114 bits per transform
+			{ 7, 9, 22 },		// 114 bits per transform
+			{ 7, 10, 21 },		// 114 bits per transform
+			{ 7, 11, 20 },		// 114 bits per transform
+			{ 7, 12, 19 },		// 114 bits per transform
+			{ 7, 13, 18 },		// 114 bits per transform
+			{ 7, 14, 17 },		// 114 bits per transform
+			{ 7, 15, 16 },		// 114 bits per transform
+			{ 7, 16, 15 },		// 114 bits per transform
+			{ 7, 17, 14 },		// 114 bits per transform
+			{ 7, 18, 13 },		// 114 bits per transform
+			{ 7, 19, 12 },		// 114 bits per transform
+			{ 7, 20, 11 },		// 114 bits per transform
+			{ 7, 21, 10 },		// 114 bits per transform
+			{ 7, 22, 9 },		// 114 bits per transform
+			{ 7, 23, 8 },		// 114 bits per transform
+			{ 8, 7, 23 },		// 114 bits per transform
+			{ 8, 8, 22 },		// 114 bits per transform
+			{ 8, 9, 21 },		// 114 bits per transform
+			{ 8, 10, 20 },		// 114 bits per transform
+			{ 8, 11, 19 },		// 114 bits per transform
+			{ 8, 12, 18 },		// 114 bits per transform
+			{ 8, 13, 17 },		// 114 bits per transform
+			{ 8, 14, 16 },		// 114 bits per transform
+			{ 8, 15, 15 },		// 114 bits per transform
+			{ 8, 16, 14 },		// 114 bits per transform
+			{ 8, 17, 13 },		// 114 bits per transform
+			{ 8, 18, 12 },		// 114 bits per transform
+			{ 8, 19, 11 },		// 114 bits per transform
+			{ 8, 20, 10 },		// 114 bits per transform
+			{ 8, 21, 9 },		// 114 bits per transform
+			{ 8, 22, 8 },		// 114 bits per transform
+			{ 8, 23, 7 },		// 114 bits per transform
+			{ 9, 6, 23 },		// 114 bits per transform
+			{ 9, 7, 22 },		// 114 bits per transform
+			{ 9, 8, 21 },		// 114 bits per transform
+			{ 9, 9, 20 },		// 114 bits per transform
+			{ 9, 10, 19 },		// 114 bits per transform
+			{ 9, 11, 18 },		// 114 bits per transform
+			{ 9, 12, 17 },		// 114 bits per transform
+			{ 9, 13, 16 },		// 114 bits per transform
+			{ 9, 14, 15 },		// 114 bits per transform
+			{ 9, 15, 14 },		// 114 bits per transform
+			{ 9, 16, 13 },		// 114 bits per transform
+			{ 9, 17, 12 },		// 114 bits per transform
+			{ 9, 18, 11 },		// 114 bits per transform
+			{ 9, 19, 10 },		// 114 bits per transform
+			{ 9, 20, 9 },		// 114 bits per transform
+			{ 9, 21, 8 },		// 114 bits per transform
+			{ 9, 22, 7 },		// 114 bits per transform
+			{ 9, 23, 6 },		// 114 bits per transform
+			{ 10, 5, 23 },		// 114 bits per transform
+			{ 10, 6, 22 },		// 114 bits per transform
+			{ 10, 7, 21 },		// 114 bits per transform
+			{ 10, 8, 20 },		// 114 bits per transform
+			{ 10, 9, 19 },		// 114 bits per transform
+			{ 10, 10, 18 },		// 114 bits per transform
+			{ 10, 11, 17 },		// 114 bits per transform
+			{ 10, 12, 16 },		// 114 bits per transform
+			{ 10, 13, 15 },		// 114 bits per transform
+			{ 10, 14, 14 },		// 114 bits per transform
+			{ 10, 15, 13 },		// 114 bits per transform
+			{ 10, 16, 12 },		// 114 bits per transform
+			{ 10, 17, 11 },		// 114 bits per transform
+			{ 10, 18, 10 },		// 114 bits per transform
+			{ 10, 19, 9 },		// 114 bits per transform
+			{ 10, 20, 8 },		// 114 bits per transform
+			{ 10, 21, 7 },		// 114 bits per transform
+			{ 10, 22, 6 },		// 114 bits per transform
+			{ 10, 23, 5 },		// 114 bits per transform
+			{ 11, 4, 23 },		// 114 bits per transform
+			{ 11, 5, 22 },		// 114 bits per transform
+			{ 11, 6, 21 },		// 114 bits per transform
+			{ 11, 7, 20 },		// 114 bits per transform
+			{ 11, 8, 19 },		// 114 bits per transform
+			{ 11, 9, 18 },		// 114 bits per transform
+			{ 11, 10, 17 },		// 114 bits per transform
+			{ 11, 11, 16 },		// 114 bits per transform
+			{ 11, 12, 15 },		// 114 bits per transform
+			{ 11, 13, 14 },		// 114 bits per transform
+			{ 11, 14, 13 },		// 114 bits per transform
+			{ 11, 15, 12 },		// 114 bits per transform
+			{ 11, 16, 11 },		// 114 bits per transform
+			{ 11, 17, 10 },		// 114 bits per transform
+			{ 11, 18, 9 },		// 114 bits per transform
+			{ 11, 19, 8 },		// 114 bits per transform
+			{ 11, 20, 7 },		// 114 bits per transform
+			{ 11, 21, 6 },		// 114 bits per transform
+			{ 11, 22, 5 },		// 114 bits per transform
+			{ 11, 23, 4 },		// 114 bits per transform
+			{ 12, 3, 23 },		// 114 bits per transform
+			{ 12, 4, 22 },		// 114 bits per transform
+			{ 12, 5, 21 },		// 114 bits per transform
+			{ 12, 6, 20 },		// 114 bits per transform
+			{ 12, 7, 19 },		// 114 bits per transform
+			{ 12, 8, 18 },		// 114 bits per transform
+			{ 12, 9, 17 },		// 114 bits per transform
+			{ 12, 10, 16 },		// 114 bits per transform
+			{ 12, 11, 15 },		// 114 bits per transform
+			{ 12, 12, 14 },		// 114 bits per transform
+			{ 12, 13, 13 },		// 114 bits per transform
+			{ 12, 14, 12 },		// 114 bits per transform
+			{ 12, 15, 11 },		// 114 bits per transform
+			{ 12, 16, 10 },		// 114 bits per transform
+			{ 12, 17, 9 },		// 114 bits per transform
+			{ 12, 18, 8 },		// 114 bits per transform
+			{ 12, 19, 7 },		// 114 bits per transform
+			{ 12, 20, 6 },		// 114 bits per transform
+			{ 12, 21, 5 },		// 114 bits per transform
+			{ 12, 22, 4 },		// 114 bits per transform
+			{ 12, 23, 3 },		// 114 bits per transform
+			{ 13, 2, 23 },		// 114 bits per transform
+			{ 13, 3, 22 },		// 114 bits per transform
+			{ 13, 4, 21 },		// 114 bits per transform
+			{ 13, 5, 20 },		// 114 bits per transform
+			{ 13, 6, 19 },		// 114 bits per transform
+			{ 13, 7, 18 },		// 114 bits per transform
+			{ 13, 8, 17 },		// 114 bits per transform
+			{ 13, 9, 16 },		// 114 bits per transform
+			{ 13, 10, 15 },		// 114 bits per transform
+			{ 13, 11, 14 },		// 114 bits per transform
+			{ 13, 12, 13 },		// 114 bits per transform
+			{ 13, 13, 12 },		// 114 bits per transform
+			{ 13, 14, 11 },		// 114 bits per transform
+			{ 13, 15, 10 },		// 114 bits per transform
+			{ 13, 16, 9 },		// 114 bits per transform
+			{ 13, 17, 8 },		// 114 bits per transform
+			{ 13, 18, 7 },		// 114 bits per transform
+			{ 13, 19, 6 },		// 114 bits per transform
+			{ 13, 20, 5 },		// 114 bits per transform
+			{ 13, 21, 4 },		// 114 bits per transform
+			{ 13, 22, 3 },		// 114 bits per transform
+			{ 13, 23, 2 },		// 114 bits per transform
+			{ 14, 1, 23 },		// 114 bits per transform
+			{ 14, 2, 22 },		// 114 bits per transform
+			{ 14, 3, 21 },		// 114 bits per transform
+			{ 14, 4, 20 },		// 114 bits per transform
+			{ 14, 5, 19 },		// 114 bits per transform
+			{ 14, 6, 18 },		// 114 bits per transform
+			{ 14, 7, 17 },		// 114 bits per transform
+			{ 14, 8, 16 },		// 114 bits per transform
+			{ 14, 9, 15 },		// 114 bits per transform
+			{ 14, 10, 14 },		// 114 bits per transform
+			{ 14, 11, 13 },		// 114 bits per transform
+			{ 14, 12, 12 },		// 114 bits per transform
+			{ 14, 13, 11 },		// 114 bits per transform
+			{ 14, 14, 10 },		// 114 bits per transform
+			{ 14, 15, 9 },		// 114 bits per transform
+			{ 14, 16, 8 },		// 114 bits per transform
+			{ 14, 17, 7 },		// 114 bits per transform
+			{ 14, 18, 6 },		// 114 bits per transform
+			{ 14, 19, 5 },		// 114 bits per transform
+			{ 14, 20, 4 },		// 114 bits per transform
+			{ 14, 21, 3 },		// 114 bits per transform
+			{ 14, 22, 2 },		// 114 bits per transform
+			{ 14, 23, 1 },		// 114 bits per transform
+			{ 15, 0, 23 },		// 114 bits per transform
+			{ 15, 1, 22 },		// 114 bits per transform
+			{ 15, 2, 21 },		// 114 bits per transform
+			{ 15, 3, 20 },		// 114 bits per transform
+			{ 15, 4, 19 },		// 114 bits per transform
+			{ 15, 5, 18 },		// 114 bits per transform
+			{ 15, 6, 17 },		// 114 bits per transform
+			{ 15, 7, 16 },		// 114 bits per transform
+			{ 15, 8, 15 },		// 114 bits per transform
+			{ 15, 9, 14 },		// 114 bits per transform
+			{ 15, 10, 13 },		// 114 bits per transform
+			{ 15, 11, 12 },		// 114 bits per transform
+			{ 15, 12, 11 },		// 114 bits per transform
+			{ 15, 13, 10 },		// 114 bits per transform
+			{ 15, 14, 9 },		// 114 bits per transform
+			{ 15, 15, 8 },		// 114 bits per transform
+			{ 15, 16, 7 },		// 114 bits per transform
+			{ 15, 17, 6 },		// 114 bits per transform
+			{ 15, 18, 5 },		// 114 bits per transform
+			{ 15, 19, 4 },		// 114 bits per transform
+			{ 15, 20, 3 },		// 114 bits per transform
+			{ 15, 21, 2 },		// 114 bits per transform
+			{ 15, 22, 1 },		// 114 bits per transform
+			{ 15, 23, 0 },		// 114 bits per transform
+			{ 16, 0, 22 },		// 114 bits per transform
+			{ 16, 1, 21 },		// 114 bits per transform
+			{ 16, 2, 20 },		// 114 bits per transform
+			{ 16, 3, 19 },		// 114 bits per transform
+			{ 16, 4, 18 },		// 114 bits per transform
+			{ 16, 5, 17 },		// 114 bits per transform
+			{ 16, 6, 16 },		// 114 bits per transform
+			{ 16, 7, 15 },		// 114 bits per transform
+			{ 16, 8, 14 },		// 114 bits per transform
+			{ 16, 9, 13 },		// 114 bits per transform
+			{ 16, 10, 12 },		// 114 bits per transform
+			{ 16, 11, 11 },		// 114 bits per transform
+			{ 16, 12, 10 },		// 114 bits per transform
+			{ 16, 13, 9 },		// 114 bits per transform
+			{ 16, 14, 8 },		// 114 bits per transform
+			{ 16, 15, 7 },		// 114 bits per transform
+			{ 16, 16, 6 },		// 114 bits per transform
+			{ 16, 17, 5 },		// 114 bits per transform
+			{ 16, 18, 4 },		// 114 bits per transform
+			{ 16, 19, 3 },		// 114 bits per transform
+			{ 16, 20, 2 },		// 114 bits per transform
+			{ 16, 21, 1 },		// 114 bits per transform
+			{ 16, 22, 0 },		// 114 bits per transform
+			{ 17, 0, 21 },		// 114 bits per transform
+			{ 17, 1, 20 },		// 114 bits per transform
+			{ 17, 2, 19 },		// 114 bits per transform
+			{ 17, 3, 18 },		// 114 bits per transform
+			{ 17, 4, 17 },		// 114 bits per transform
+			{ 17, 5, 16 },		// 114 bits per transform
+			{ 17, 6, 15 },		// 114 bits per transform
+			{ 17, 7, 14 },		// 114 bits per transform
+			{ 17, 8, 13 },		// 114 bits per transform
+			{ 17, 9, 12 },		// 114 bits per transform
+			{ 17, 10, 11 },		// 114 bits per transform
+			{ 17, 11, 10 },		// 114 bits per transform
+			{ 17, 12, 9 },		// 114 bits per transform
+			{ 17, 13, 8 },		// 114 bits per transform
+			{ 17, 14, 7 },		// 114 bits per transform
+			{ 17, 15, 6 },		// 114 bits per transform
+			{ 17, 16, 5 },		// 114 bits per transform
+			{ 17, 17, 4 },		// 114 bits per transform
+			{ 17, 18, 3 },		// 114 bits per transform
+			{ 17, 19, 2 },		// 114 bits per transform
+			{ 17, 20, 1 },		// 114 bits per transform
+			{ 17, 21, 0 },		// 114 bits per transform
+			{ 18, 0, 20 },		// 114 bits per transform
+			{ 18, 1, 19 },		// 114 bits per transform
+			{ 18, 2, 18 },		// 114 bits per transform
+			{ 18, 3, 17 },		// 114 bits per transform
+			{ 18, 4, 16 },		// 114 bits per transform
+			{ 18, 5, 15 },		// 114 bits per transform
+			{ 18, 6, 14 },		// 114 bits per transform
+			{ 18, 7, 13 },		// 114 bits per transform
+			{ 18, 8, 12 },		// 114 bits per transform
+			{ 18, 9, 11 },		// 114 bits per transform
+			{ 18, 10, 10 },		// 114 bits per transform
+			{ 18, 11, 9 },		// 114 bits per transform
+			{ 18, 12, 8 },		// 114 bits per transform
+			{ 18, 13, 7 },		// 114 bits per transform
+			{ 18, 14, 6 },		// 114 bits per transform
+			{ 18, 15, 5 },		// 114 bits per transform
+			{ 18, 16, 4 },		// 114 bits per transform
+			{ 18, 17, 3 },		// 114 bits per transform
+			{ 18, 18, 2 },		// 114 bits per transform
+			{ 18, 19, 1 },		// 114 bits per transform
+			{ 18, 20, 0 },		// 114 bits per transform
+			{ 19, 0, 19 },		// 114 bits per transform
+			{ 19, 1, 18 },		// 114 bits per transform
+			{ 19, 2, 17 },		// 114 bits per transform
+			{ 19, 3, 16 },		// 114 bits per transform
+			{ 19, 4, 15 },		// 114 bits per transform
+			{ 19, 5, 14 },		// 114 bits per transform
+			{ 19, 6, 13 },		// 114 bits per transform
+			{ 19, 7, 12 },		// 114 bits per transform
+			{ 19, 8, 11 },		// 114 bits per transform
+			{ 19, 9, 10 },		// 114 bits per transform
+			{ 19, 10, 9 },		// 114 bits per transform
+			{ 19, 11, 8 },		// 114 bits per transform
+			{ 19, 12, 7 },		// 114 bits per transform
+			{ 19, 13, 6 },		// 114 bits per transform
+			{ 19, 14, 5 },		// 114 bits per transform
+			{ 19, 15, 4 },		// 114 bits per transform
+			{ 19, 16, 3 },		// 114 bits per transform
+			{ 19, 17, 2 },		// 114 bits per transform
+			{ 19, 18, 1 },		// 114 bits per transform
+			{ 19, 19, 0 },		// 114 bits per transform
+			{ 20, 0, 18 },		// 114 bits per transform
+			{ 20, 1, 17 },		// 114 bits per transform
+			{ 20, 2, 16 },		// 114 bits per transform
+			{ 20, 3, 15 },		// 114 bits per transform
+			{ 20, 4, 14 },		// 114 bits per transform
+			{ 20, 5, 13 },		// 114 bits per transform
+			{ 20, 6, 12 },		// 114 bits per transform
+			{ 20, 7, 11 },		// 114 bits per transform
+			{ 20, 8, 10 },		// 114 bits per transform
+			{ 20, 9, 9 },		// 114 bits per transform
+			{ 20, 10, 8 },		// 114 bits per transform
+			{ 20, 11, 7 },		// 114 bits per transform
+			{ 20, 12, 6 },		// 114 bits per transform
+			{ 20, 13, 5 },		// 114 bits per transform
+			{ 20, 14, 4 },		// 114 bits per transform
+			{ 20, 15, 3 },		// 114 bits per transform
+			{ 20, 16, 2 },		// 114 bits per transform
+			{ 20, 17, 1 },		// 114 bits per transform
+			{ 20, 18, 0 },		// 114 bits per transform
+			{ 21, 0, 17 },		// 114 bits per transform
+			{ 21, 1, 16 },		// 114 bits per transform
+			{ 21, 2, 15 },		// 114 bits per transform
+			{ 21, 3, 14 },		// 114 bits per transform
+			{ 21, 4, 13 },		// 114 bits per transform
+			{ 21, 5, 12 },		// 114 bits per transform
+			{ 21, 6, 11 },		// 114 bits per transform
+			{ 21, 7, 10 },		// 114 bits per transform
+			{ 21, 8, 9 },		// 114 bits per transform
+			{ 21, 9, 8 },		// 114 bits per transform
+			{ 21, 10, 7 },		// 114 bits per transform
+			{ 21, 11, 6 },		// 114 bits per transform
+			{ 21, 12, 5 },		// 114 bits per transform
+			{ 21, 13, 4 },		// 114 bits per transform
+			{ 21, 14, 3 },		// 114 bits per transform
+			{ 21, 15, 2 },		// 114 bits per transform
+			{ 21, 16, 1 },		// 114 bits per transform
+			{ 21, 17, 0 },		// 114 bits per transform
+			{ 22, 0, 16 },		// 114 bits per transform
+			{ 22, 1, 15 },		// 114 bits per transform
+			{ 22, 2, 14 },		// 114 bits per transform
+			{ 22, 3, 13 },		// 114 bits per transform
+			{ 22, 4, 12 },		// 114 bits per transform
+			{ 22, 5, 11 },		// 114 bits per transform
+			{ 22, 6, 10 },		// 114 bits per transform
+			{ 22, 7, 9 },		// 114 bits per transform
+			{ 22, 8, 8 },		// 114 bits per transform
+			{ 22, 9, 7 },		// 114 bits per transform
+			{ 22, 10, 6 },		// 114 bits per transform
+			{ 22, 11, 5 },		// 114 bits per transform
+			{ 22, 12, 4 },		// 114 bits per transform
+			{ 22, 13, 3 },		// 114 bits per transform
+			{ 22, 14, 2 },		// 114 bits per transform
+			{ 22, 15, 1 },		// 114 bits per transform
+			{ 22, 16, 0 },		// 114 bits per transform
+			{ 23, 0, 15 },		// 114 bits per transform
+			{ 23, 1, 14 },		// 114 bits per transform
+			{ 23, 2, 13 },		// 114 bits per transform
+			{ 23, 3, 12 },		// 114 bits per transform
+			{ 23, 4, 11 },		// 114 bits per transform
+			{ 23, 5, 10 },		// 114 bits per transform
+			{ 23, 6, 9 },		// 114 bits per transform
+			{ 23, 7, 8 },		// 114 bits per transform
+			{ 23, 8, 7 },		// 114 bits per transform
+			{ 23, 9, 6 },		// 114 bits per transform
+			{ 23, 10, 5 },		// 114 bits per transform
+			{ 23, 11, 4 },		// 114 bits per transform
+			{ 23, 12, 3 },		// 114 bits per transform
+			{ 23, 13, 2 },		// 114 bits per transform
+			{ 23, 14, 1 },		// 114 bits per transform
+			{ 23, 15, 0 },		// 114 bits per transform
+			{ 24, 0, 6 },		// 114 bits per transform
+			{ 24, 1, 5 },		// 114 bits per transform
+			{ 24, 2, 4 },		// 114 bits per transform
+			{ 24, 3, 3 },		// 114 bits per transform
+			{ 24, 4, 2 },		// 114 bits per transform
+			{ 24, 5, 1 },		// 114 bits per transform
+			{ 24, 6, 0 },		// 114 bits per transform
+			{ 0, 7, 24 },		// 117 bits per transform
+			{ 0, 16, 23 },		// 117 bits per transform
+			{ 0, 17, 22 },		// 117 bits per transform
+			{ 0, 18, 21 },		// 117 bits per transform
+			{ 0, 19, 20 },		// 117 bits per transform
+			{ 0, 20, 19 },		// 117 bits per transform
+			{ 0, 21, 18 },		// 117 bits per transform
+			{ 0, 22, 17 },		// 117 bits per transform
+			{ 0, 23, 16 },		// 117 bits per transform
+			{ 0, 24, 7 },		// 117 bits per transform
+			{ 1, 6, 24 },		// 117 bits per transform
+			{ 1, 15, 23 },		// 117 bits per transform
+			{ 1, 16, 22 },		// 117 bits per transform
+			{ 1, 17, 21 },		// 117 bits per transform
+			{ 1, 18, 20 },		// 117 bits per transform
+			{ 1, 19, 19 },		// 117 bits per transform
+			{ 1, 20, 18 },		// 117 bits per transform
+			{ 1, 21, 17 },		// 117 bits per transform
+			{ 1, 22, 16 },		// 117 bits per transform
+			{ 1, 23, 15 },		// 117 bits per transform
+			{ 1, 24, 6 },		// 117 bits per transform
+			{ 2, 5, 24 },		// 117 bits per transform
+			{ 2, 14, 23 },		// 117 bits per transform
+			{ 2, 15, 22 },		// 117 bits per transform
+			{ 2, 16, 21 },		// 117 bits per transform
+			{ 2, 17, 20 },		// 117 bits per transform
+			{ 2, 18, 19 },		// 117 bits per transform
+			{ 2, 19, 18 },		// 117 bits per transform
+			{ 2, 20, 17 },		// 117 bits per transform
+			{ 2, 21, 16 },		// 117 bits per transform
+			{ 2, 22, 15 },		// 117 bits per transform
+			{ 2, 23, 14 },		// 117 bits per transform
+			{ 2, 24, 5 },		// 117 bits per transform
+			{ 3, 4, 24 },		// 117 bits per transform
+			{ 3, 13, 23 },		// 117 bits per transform
+			{ 3, 14, 22 },		// 117 bits per transform
+			{ 3, 15, 21 },		// 117 bits per transform
+			{ 3, 16, 20 },		// 117 bits per transform
+			{ 3, 17, 19 },		// 117 bits per transform
+			{ 3, 18, 18 },		// 117 bits per transform
+			{ 3, 19, 17 },		// 117 bits per transform
+			{ 3, 20, 16 },		// 117 bits per transform
+			{ 3, 21, 15 },		// 117 bits per transform
+			{ 3, 22, 14 },		// 117 bits per transform
+			{ 3, 23, 13 },		// 117 bits per transform
+			{ 3, 24, 4 },		// 117 bits per transform
+			{ 4, 3, 24 },		// 117 bits per transform
+			{ 4, 12, 23 },		// 117 bits per transform
+			{ 4, 13, 22 },		// 117 bits per transform
+			{ 4, 14, 21 },		// 117 bits per transform
+			{ 4, 15, 20 },		// 117 bits per transform
+			{ 4, 16, 19 },		// 117 bits per transform
+			{ 4, 17, 18 },		// 117 bits per transform
+			{ 4, 18, 17 },		// 117 bits per transform
+			{ 4, 19, 16 },		// 117 bits per transform
+			{ 4, 20, 15 },		// 117 bits per transform
+			{ 4, 21, 14 },		// 117 bits per transform
+			{ 4, 22, 13 },		// 117 bits per transform
+			{ 4, 23, 12 },		// 117 bits per transform
+			{ 4, 24, 3 },		// 117 bits per transform
+			{ 5, 2, 24 },		// 117 bits per transform
+			{ 5, 11, 23 },		// 117 bits per transform
+			{ 5, 12, 22 },		// 117 bits per transform
+			{ 5, 13, 21 },		// 117 bits per transform
+			{ 5, 14, 20 },		// 117 bits per transform
+			{ 5, 15, 19 },		// 117 bits per transform
+			{ 5, 16, 18 },		// 117 bits per transform
+			{ 5, 17, 17 },		// 117 bits per transform
+			{ 5, 18, 16 },		// 117 bits per transform
+			{ 5, 19, 15 },		// 117 bits per transform
+			{ 5, 20, 14 },		// 117 bits per transform
+			{ 5, 21, 13 },		// 117 bits per transform
+			{ 5, 22, 12 },		// 117 bits per transform
+			{ 5, 23, 11 },		// 117 bits per transform
+			{ 5, 24, 2 },		// 117 bits per transform
+			{ 6, 1, 24 },		// 117 bits per transform
+			{ 6, 10, 23 },		// 117 bits per transform
+			{ 6, 11, 22 },		// 117 bits per transform
+			{ 6, 12, 21 },		// 117 bits per transform
+			{ 6, 13, 20 },		// 117 bits per transform
+			{ 6, 14, 19 },		// 117 bits per transform
+			{ 6, 15, 18 },		// 117 bits per transform
+			{ 6, 16, 17 },		// 117 bits per transform
+			{ 6, 17, 16 },		// 117 bits per transform
+			{ 6, 18, 15 },		// 117 bits per transform
+			{ 6, 19, 14 },		// 117 bits per transform
+			{ 6, 20, 13 },		// 117 bits per transform
+			{ 6, 21, 12 },		// 117 bits per transform
+			{ 6, 22, 11 },		// 117 bits per transform
+			{ 6, 23, 10 },		// 117 bits per transform
+			{ 6, 24, 1 },		// 117 bits per transform
+			{ 7, 0, 24 },		// 117 bits per transform
+			{ 7, 9, 23 },		// 117 bits per transform
+			{ 7, 10, 22 },		// 117 bits per transform
+			{ 7, 11, 21 },		// 117 bits per transform
+			{ 7, 12, 20 },		// 117 bits per transform
+			{ 7, 13, 19 },		// 117 bits per transform
+			{ 7, 14, 18 },		// 117 bits per transform
+			{ 7, 15, 17 },		// 117 bits per transform
+			{ 7, 16, 16 },		// 117 bits per transform
+			{ 7, 17, 15 },		// 117 bits per transform
+			{ 7, 18, 14 },		// 117 bits per transform
+			{ 7, 19, 13 },		// 117 bits per transform
+			{ 7, 20, 12 },		// 117 bits per transform
+			{ 7, 21, 11 },		// 117 bits per transform
+			{ 7, 22, 10 },		// 117 bits per transform
+			{ 7, 23, 9 },		// 117 bits per transform
+			{ 7, 24, 0 },		// 117 bits per transform
+			{ 8, 8, 23 },		// 117 bits per transform
+			{ 8, 9, 22 },		// 117 bits per transform
+			{ 8, 10, 21 },		// 117 bits per transform
+			{ 8, 11, 20 },		// 117 bits per transform
+			{ 8, 12, 19 },		// 117 bits per transform
+			{ 8, 13, 18 },		// 117 bits per transform
+			{ 8, 14, 17 },		// 117 bits per transform
+			{ 8, 15, 16 },		// 117 bits per transform
+			{ 8, 16, 15 },		// 117 bits per transform
+			{ 8, 17, 14 },		// 117 bits per transform
+			{ 8, 18, 13 },		// 117 bits per transform
+			{ 8, 19, 12 },		// 117 bits per transform
+			{ 8, 20, 11 },		// 117 bits per transform
+			{ 8, 21, 10 },		// 117 bits per transform
+			{ 8, 22, 9 },		// 117 bits per transform
+			{ 8, 23, 8 },		// 117 bits per transform
+			{ 9, 7, 23 },		// 117 bits per transform
+			{ 9, 8, 22 },		// 117 bits per transform
+			{ 9, 9, 21 },		// 117 bits per transform
+			{ 9, 10, 20 },		// 117 bits per transform
+			{ 9, 11, 19 },		// 117 bits per transform
+			{ 9, 12, 18 },		// 117 bits per transform
+			{ 9, 13, 17 },		// 117 bits per transform
+			{ 9, 14, 16 },		// 117 bits per transform
+			{ 9, 15, 15 },		// 117 bits per transform
+			{ 9, 16, 14 },		// 117 bits per transform
+			{ 9, 17, 13 },		// 117 bits per transform
+			{ 9, 18, 12 },		// 117 bits per transform
+			{ 9, 19, 11 },		// 117 bits per transform
+			{ 9, 20, 10 },		// 117 bits per transform
+			{ 9, 21, 9 },		// 117 bits per transform
+			{ 9, 22, 8 },		// 117 bits per transform
+			{ 9, 23, 7 },		// 117 bits per transform
+			{ 10, 6, 23 },		// 117 bits per transform
+			{ 10, 7, 22 },		// 117 bits per transform
+			{ 10, 8, 21 },		// 117 bits per transform
+			{ 10, 9, 20 },		// 117 bits per transform
+			{ 10, 10, 19 },		// 117 bits per transform
+			{ 10, 11, 18 },		// 117 bits per transform
+			{ 10, 12, 17 },		// 117 bits per transform
+			{ 10, 13, 16 },		// 117 bits per transform
+			{ 10, 14, 15 },		// 117 bits per transform
+			{ 10, 15, 14 },		// 117 bits per transform
+			{ 10, 16, 13 },		// 117 bits per transform
+			{ 10, 17, 12 },		// 117 bits per transform
+			{ 10, 18, 11 },		// 117 bits per transform
+			{ 10, 19, 10 },		// 117 bits per transform
+			{ 10, 20, 9 },		// 117 bits per transform
+			{ 10, 21, 8 },		// 117 bits per transform
+			{ 10, 22, 7 },		// 117 bits per transform
+			{ 10, 23, 6 },		// 117 bits per transform
+			{ 11, 5, 23 },		// 117 bits per transform
+			{ 11, 6, 22 },		// 117 bits per transform
+			{ 11, 7, 21 },		// 117 bits per transform
+			{ 11, 8, 20 },		// 117 bits per transform
+			{ 11, 9, 19 },		// 117 bits per transform
+			{ 11, 10, 18 },		// 117 bits per transform
+			{ 11, 11, 17 },		// 117 bits per transform
+			{ 11, 12, 16 },		// 117 bits per transform
+			{ 11, 13, 15 },		// 117 bits per transform
+			{ 11, 14, 14 },		// 117 bits per transform
+			{ 11, 15, 13 },		// 117 bits per transform
+			{ 11, 16, 12 },		// 117 bits per transform
+			{ 11, 17, 11 },		// 117 bits per transform
+			{ 11, 18, 10 },		// 117 bits per transform
+			{ 11, 19, 9 },		// 117 bits per transform
+			{ 11, 20, 8 },		// 117 bits per transform
+			{ 11, 21, 7 },		// 117 bits per transform
+			{ 11, 22, 6 },		// 117 bits per transform
+			{ 11, 23, 5 },		// 117 bits per transform
+			{ 12, 4, 23 },		// 117 bits per transform
+			{ 12, 5, 22 },		// 117 bits per transform
+			{ 12, 6, 21 },		// 117 bits per transform
+			{ 12, 7, 20 },		// 117 bits per transform
+			{ 12, 8, 19 },		// 117 bits per transform
+			{ 12, 9, 18 },		// 117 bits per transform
+			{ 12, 10, 17 },		// 117 bits per transform
+			{ 12, 11, 16 },		// 117 bits per transform
+			{ 12, 12, 15 },		// 117 bits per transform
+			{ 12, 13, 14 },		// 117 bits per transform
+			{ 12, 14, 13 },		// 117 bits per transform
+			{ 12, 15, 12 },		// 117 bits per transform
+			{ 12, 16, 11 },		// 117 bits per transform
+			{ 12, 17, 10 },		// 117 bits per transform
+			{ 12, 18, 9 },		// 117 bits per transform
+			{ 12, 19, 8 },		// 117 bits per transform
+			{ 12, 20, 7 },		// 117 bits per transform
+			{ 12, 21, 6 },		// 117 bits per transform
+			{ 12, 22, 5 },		// 117 bits per transform
+			{ 12, 23, 4 },		// 117 bits per transform
+			{ 13, 3, 23 },		// 117 bits per transform
+			{ 13, 4, 22 },		// 117 bits per transform
+			{ 13, 5, 21 },		// 117 bits per transform
+			{ 13, 6, 20 },		// 117 bits per transform
+			{ 13, 7, 19 },		// 117 bits per transform
+			{ 13, 8, 18 },		// 117 bits per transform
+			{ 13, 9, 17 },		// 117 bits per transform
+			{ 13, 10, 16 },		// 117 bits per transform
+			{ 13, 11, 15 },		// 117 bits per transform
+			{ 13, 12, 14 },		// 117 bits per transform
+			{ 13, 13, 13 },		// 117 bits per transform
+			{ 13, 14, 12 },		// 117 bits per transform
+			{ 13, 15, 11 },		// 117 bits per transform
+			{ 13, 16, 10 },		// 117 bits per transform
+			{ 13, 17, 9 },		// 117 bits per transform
+			{ 13, 18, 8 },		// 117 bits per transform
+			{ 13, 19, 7 },		// 117 bits per transform
+			{ 13, 20, 6 },		// 117 bits per transform
+			{ 13, 21, 5 },		// 117 bits per transform
+			{ 13, 22, 4 },		// 117 bits per transform
+			{ 13, 23, 3 },		// 117 bits per transform
+			{ 14, 2, 23 },		// 117 bits per transform
+			{ 14, 3, 22 },		// 117 bits per transform
+			{ 14, 4, 21 },		// 117 bits per transform
+			{ 14, 5, 20 },		// 117 bits per transform
+			{ 14, 6, 19 },		// 117 bits per transform
+			{ 14, 7, 18 },		// 117 bits per transform
+			{ 14, 8, 17 },		// 117 bits per transform
+			{ 14, 9, 16 },		// 117 bits per transform
+			{ 14, 10, 15 },		// 117 bits per transform
+			{ 14, 11, 14 },		// 117 bits per transform
+			{ 14, 12, 13 },		// 117 bits per transform
+			{ 14, 13, 12 },		// 117 bits per transform
+			{ 14, 14, 11 },		// 117 bits per transform
+			{ 14, 15, 10 },		// 117 bits per transform
+			{ 14, 16, 9 },		// 117 bits per transform
+			{ 14, 17, 8 },		// 117 bits per transform
+			{ 14, 18, 7 },		// 117 bits per transform
+			{ 14, 19, 6 },		// 117 bits per transform
+			{ 14, 20, 5 },		// 117 bits per transform
+			{ 14, 21, 4 },		// 117 bits per transform
+			{ 14, 22, 3 },		// 117 bits per transform
+			{ 14, 23, 2 },		// 117 bits per transform
+			{ 15, 1, 23 },		// 117 bits per transform
+			{ 15, 2, 22 },		// 117 bits per transform
+			{ 15, 3, 21 },		// 117 bits per transform
+			{ 15, 4, 20 },		// 117 bits per transform
+			{ 15, 5, 19 },		// 117 bits per transform
+			{ 15, 6, 18 },		// 117 bits per transform
+			{ 15, 7, 17 },		// 117 bits per transform
+			{ 15, 8, 16 },		// 117 bits per transform
+			{ 15, 9, 15 },		// 117 bits per transform
+			{ 15, 10, 14 },		// 117 bits per transform
+			{ 15, 11, 13 },		// 117 bits per transform
+			{ 15, 12, 12 },		// 117 bits per transform
+			{ 15, 13, 11 },		// 117 bits per transform
+			{ 15, 14, 10 },		// 117 bits per transform
+			{ 15, 15, 9 },		// 117 bits per transform
+			{ 15, 16, 8 },		// 117 bits per transform
+			{ 15, 17, 7 },		// 117 bits per transform
+			{ 15, 18, 6 },		// 117 bits per transform
+			{ 15, 19, 5 },		// 117 bits per transform
+			{ 15, 20, 4 },		// 117 bits per transform
+			{ 15, 21, 3 },		// 117 bits per transform
+			{ 15, 22, 2 },		// 117 bits per transform
+			{ 15, 23, 1 },		// 117 bits per transform
+			{ 16, 0, 23 },		// 117 bits per transform
+			{ 16, 1, 22 },		// 117 bits per transform
+			{ 16, 2, 21 },		// 117 bits per transform
+			{ 16, 3, 20 },		// 117 bits per transform
+			{ 16, 4, 19 },		// 117 bits per transform
+			{ 16, 5, 18 },		// 117 bits per transform
+			{ 16, 6, 17 },		// 117 bits per transform
+			{ 16, 7, 16 },		// 117 bits per transform
+			{ 16, 8, 15 },		// 117 bits per transform
+			{ 16, 9, 14 },		// 117 bits per transform
+			{ 16, 10, 13 },		// 117 bits per transform
+			{ 16, 11, 12 },		// 117 bits per transform
+			{ 16, 12, 11 },		// 117 bits per transform
+			{ 16, 13, 10 },		// 117 bits per transform
+			{ 16, 14, 9 },		// 117 bits per transform
+			{ 16, 15, 8 },		// 117 bits per transform
+			{ 16, 16, 7 },		// 117 bits per transform
+			{ 16, 17, 6 },		// 117 bits per transform
+			{ 16, 18, 5 },		// 117 bits per transform
+			{ 16, 19, 4 },		// 117 bits per transform
+			{ 16, 20, 3 },		// 117 bits per transform
+			{ 16, 21, 2 },		// 117 bits per transform
+			{ 16, 22, 1 },		// 117 bits per transform
+			{ 16, 23, 0 },		// 117 bits per transform
+			{ 17, 0, 22 },		// 117 bits per transform
+			{ 17, 1, 21 },		// 117 bits per transform
+			{ 17, 2, 20 },		// 117 bits per transform
+			{ 17, 3, 19 },		// 117 bits per transform
+			{ 17, 4, 18 },		// 117 bits per transform
+			{ 17, 5, 17 },		// 117 bits per transform
+			{ 17, 6, 16 },		// 117 bits per transform
+			{ 17, 7, 15 },		// 117 bits per transform
+			{ 17, 8, 14 },		// 117 bits per transform
+			{ 17, 9, 13 },		// 117 bits per transform
+			{ 17, 10, 12 },		// 117 bits per transform
+			{ 17, 11, 11 },		// 117 bits per transform
+			{ 17, 12, 10 },		// 117 bits per transform
+			{ 17, 13, 9 },		// 117 bits per transform
+			{ 17, 14, 8 },		// 117 bits per transform
+			{ 17, 15, 7 },		// 117 bits per transform
+			{ 17, 16, 6 },		// 117 bits per transform
+			{ 17, 17, 5 },		// 117 bits per transform
+			{ 17, 18, 4 },		// 117 bits per transform
+			{ 17, 19, 3 },		// 117 bits per transform
+			{ 17, 20, 2 },		// 117 bits per transform
+			{ 17, 21, 1 },		// 117 bits per transform
+			{ 17, 22, 0 },		// 117 bits per transform
+			{ 18, 0, 21 },		// 117 bits per transform
+			{ 18, 1, 20 },		// 117 bits per transform
+			{ 18, 2, 19 },		// 117 bits per transform
+			{ 18, 3, 18 },		// 117 bits per transform
+			{ 18, 4, 17 },		// 117 bits per transform
+			{ 18, 5, 16 },		// 117 bits per transform
+			{ 18, 6, 15 },		// 117 bits per transform
+			{ 18, 7, 14 },		// 117 bits per transform
+			{ 18, 8, 13 },		// 117 bits per transform
+			{ 18, 9, 12 },		// 117 bits per transform
+			{ 18, 10, 11 },		// 117 bits per transform
+			{ 18, 11, 10 },		// 117 bits per transform
+			{ 18, 12, 9 },		// 117 bits per transform
+			{ 18, 13, 8 },		// 117 bits per transform
+			{ 18, 14, 7 },		// 117 bits per transform
+			{ 18, 15, 6 },		// 117 bits per transform
+			{ 18, 16, 5 },		// 117 bits per transform
+			{ 18, 17, 4 },		// 117 bits per transform
+			{ 18, 18, 3 },		// 117 bits per transform
+			{ 18, 19, 2 },		// 117 bits per transform
+			{ 18, 20, 1 },		// 117 bits per transform
+			{ 18, 21, 0 },		// 117 bits per transform
+			{ 19, 0, 20 },		// 117 bits per transform
+			{ 19, 1, 19 },		// 117 bits per transform
+			{ 19, 2, 18 },		// 117 bits per transform
+			{ 19, 3, 17 },		// 117 bits per transform
+			{ 19, 4, 16 },		// 117 bits per transform
+			{ 19, 5, 15 },		// 117 bits per transform
+			{ 19, 6, 14 },		// 117 bits per transform
+			{ 19, 7, 13 },		// 117 bits per transform
+			{ 19, 8, 12 },		// 117 bits per transform
+			{ 19, 9, 11 },		// 117 bits per transform
+			{ 19, 10, 10 },		// 117 bits per transform
+			{ 19, 11, 9 },		// 117 bits per transform
+			{ 19, 12, 8 },		// 117 bits per transform
+			{ 19, 13, 7 },		// 117 bits per transform
+			{ 19, 14, 6 },		// 117 bits per transform
+			{ 19, 15, 5 },		// 117 bits per transform
+			{ 19, 16, 4 },		// 117 bits per transform
+			{ 19, 17, 3 },		// 117 bits per transform
+			{ 19, 18, 2 },		// 117 bits per transform
+			{ 19, 19, 1 },		// 117 bits per transform
+			{ 19, 20, 0 },		// 117 bits per transform
+			{ 20, 0, 19 },		// 117 bits per transform
+			{ 20, 1, 18 },		// 117 bits per transform
+			{ 20, 2, 17 },		// 117 bits per transform
+			{ 20, 3, 16 },		// 117 bits per transform
+			{ 20, 4, 15 },		// 117 bits per transform
+			{ 20, 5, 14 },		// 117 bits per transform
+			{ 20, 6, 13 },		// 117 bits per transform
+			{ 20, 7, 12 },		// 117 bits per transform
+			{ 20, 8, 11 },		// 117 bits per transform
+			{ 20, 9, 10 },		// 117 bits per transform
+			{ 20, 10, 9 },		// 117 bits per transform
+			{ 20, 11, 8 },		// 117 bits per transform
+			{ 20, 12, 7 },		// 117 bits per transform
+			{ 20, 13, 6 },		// 117 bits per transform
+			{ 20, 14, 5 },		// 117 bits per transform
+			{ 20, 15, 4 },		// 117 bits per transform
+			{ 20, 16, 3 },		// 117 bits per transform
+			{ 20, 17, 2 },		// 117 bits per transform
+			{ 20, 18, 1 },		// 117 bits per transform
+			{ 20, 19, 0 },		// 117 bits per transform
+			{ 21, 0, 18 },		// 117 bits per transform
+			{ 21, 1, 17 },		// 117 bits per transform
+			{ 21, 2, 16 },		// 117 bits per transform
+			{ 21, 3, 15 },		// 117 bits per transform
+			{ 21, 4, 14 },		// 117 bits per transform
+			{ 21, 5, 13 },		// 117 bits per transform
+			{ 21, 6, 12 },		// 117 bits per transform
+			{ 21, 7, 11 },		// 117 bits per transform
+			{ 21, 8, 10 },		// 117 bits per transform
+			{ 21, 9, 9 },		// 117 bits per transform
+			{ 21, 10, 8 },		// 117 bits per transform
+			{ 21, 11, 7 },		// 117 bits per transform
+			{ 21, 12, 6 },		// 117 bits per transform
+			{ 21, 13, 5 },		// 117 bits per transform
+			{ 21, 14, 4 },		// 117 bits per transform
+			{ 21, 15, 3 },		// 117 bits per transform
+			{ 21, 16, 2 },		// 117 bits per transform
+			{ 21, 17, 1 },		// 117 bits per transform
+			{ 21, 18, 0 },		// 117 bits per transform
+			{ 22, 0, 17 },		// 117 bits per transform
+			{ 22, 1, 16 },		// 117 bits per transform
+			{ 22, 2, 15 },		// 117 bits per transform
+			{ 22, 3, 14 },		// 117 bits per transform
+			{ 22, 4, 13 },		// 117 bits per transform
+			{ 22, 5, 12 },		// 117 bits per transform
+			{ 22, 6, 11 },		// 117 bits per transform
+			{ 22, 7, 10 },		// 117 bits per transform
+			{ 22, 8, 9 },		// 117 bits per transform
+			{ 22, 9, 8 },		// 117 bits per transform
+			{ 22, 10, 7 },		// 117 bits per transform
+			{ 22, 11, 6 },		// 117 bits per transform
+			{ 22, 12, 5 },		// 117 bits per transform
+			{ 22, 13, 4 },		// 117 bits per transform
+			{ 22, 14, 3 },		// 117 bits per transform
+			{ 22, 15, 2 },		// 117 bits per transform
+			{ 22, 16, 1 },		// 117 bits per transform
+			{ 22, 17, 0 },		// 117 bits per transform
+			{ 23, 0, 16 },		// 117 bits per transform
+			{ 23, 1, 15 },		// 117 bits per transform
+			{ 23, 2, 14 },		// 117 bits per transform
+			{ 23, 3, 13 },		// 117 bits per transform
+			{ 23, 4, 12 },		// 117 bits per transform
+			{ 23, 5, 11 },		// 117 bits per transform
+			{ 23, 6, 10 },		// 117 bits per transform
+			{ 23, 7, 9 },		// 117 bits per transform
+			{ 23, 8, 8 },		// 117 bits per transform
+			{ 23, 9, 7 },		// 117 bits per transform
+			{ 23, 10, 6 },		// 117 bits per transform
+			{ 23, 11, 5 },		// 117 bits per transform
+			{ 23, 12, 4 },		// 117 bits per transform
+			{ 23, 13, 3 },		// 117 bits per transform
+			{ 23, 14, 2 },		// 117 bits per transform
+			{ 23, 15, 1 },		// 117 bits per transform
+			{ 23, 16, 0 },		// 117 bits per transform
+			{ 24, 0, 7 },		// 117 bits per transform
+			{ 24, 1, 6 },		// 117 bits per transform
+			{ 24, 2, 5 },		// 117 bits per transform
+			{ 24, 3, 4 },		// 117 bits per transform
+			{ 24, 4, 3 },		// 117 bits per transform
+			{ 24, 5, 2 },		// 117 bits per transform
+			{ 24, 6, 1 },		// 117 bits per transform
+			{ 24, 7, 0 },		// 117 bits per transform
+			{ 0, 8, 24 },		// 120 bits per transform
+			{ 0, 17, 23 },		// 120 bits per transform
+			{ 0, 18, 22 },		// 120 bits per transform
+			{ 0, 19, 21 },		// 120 bits per transform
+			{ 0, 20, 20 },		// 120 bits per transform
+			{ 0, 21, 19 },		// 120 bits per transform
+			{ 0, 22, 18 },		// 120 bits per transform
+			{ 0, 23, 17 },		// 120 bits per transform
+			{ 0, 24, 8 },		// 120 bits per transform
+			{ 1, 7, 24 },		// 120 bits per transform
+			{ 1, 16, 23 },		// 120 bits per transform
+			{ 1, 17, 22 },		// 120 bits per transform
+			{ 1, 18, 21 },		// 120 bits per transform
+			{ 1, 19, 20 },		// 120 bits per transform
+			{ 1, 20, 19 },		// 120 bits per transform
+			{ 1, 21, 18 },		// 120 bits per transform
+			{ 1, 22, 17 },		// 120 bits per transform
+			{ 1, 23, 16 },		// 120 bits per transform
+			{ 1, 24, 7 },		// 120 bits per transform
+			{ 2, 6, 24 },		// 120 bits per transform
+			{ 2, 15, 23 },		// 120 bits per transform
+			{ 2, 16, 22 },		// 120 bits per transform
+			{ 2, 17, 21 },		// 120 bits per transform
+			{ 2, 18, 20 },		// 120 bits per transform
+			{ 2, 19, 19 },		// 120 bits per transform
+			{ 2, 20, 18 },		// 120 bits per transform
+			{ 2, 21, 17 },		// 120 bits per transform
+			{ 2, 22, 16 },		// 120 bits per transform
+			{ 2, 23, 15 },		// 120 bits per transform
+			{ 2, 24, 6 },		// 120 bits per transform
+			{ 3, 5, 24 },		// 120 bits per transform
+			{ 3, 14, 23 },		// 120 bits per transform
+			{ 3, 15, 22 },		// 120 bits per transform
+			{ 3, 16, 21 },		// 120 bits per transform
+			{ 3, 17, 20 },		// 120 bits per transform
+			{ 3, 18, 19 },		// 120 bits per transform
+			{ 3, 19, 18 },		// 120 bits per transform
+			{ 3, 20, 17 },		// 120 bits per transform
+			{ 3, 21, 16 },		// 120 bits per transform
+			{ 3, 22, 15 },		// 120 bits per transform
+			{ 3, 23, 14 },		// 120 bits per transform
+			{ 3, 24, 5 },		// 120 bits per transform
+			{ 4, 4, 24 },		// 120 bits per transform
+			{ 4, 13, 23 },		// 120 bits per transform
+			{ 4, 14, 22 },		// 120 bits per transform
+			{ 4, 15, 21 },		// 120 bits per transform
+			{ 4, 16, 20 },		// 120 bits per transform
+			{ 4, 17, 19 },		// 120 bits per transform
+			{ 4, 18, 18 },		// 120 bits per transform
+			{ 4, 19, 17 },		// 120 bits per transform
+			{ 4, 20, 16 },		// 120 bits per transform
+			{ 4, 21, 15 },		// 120 bits per transform
+			{ 4, 22, 14 },		// 120 bits per transform
+			{ 4, 23, 13 },		// 120 bits per transform
+			{ 4, 24, 4 },		// 120 bits per transform
+			{ 5, 3, 24 },		// 120 bits per transform
+			{ 5, 12, 23 },		// 120 bits per transform
+			{ 5, 13, 22 },		// 120 bits per transform
+			{ 5, 14, 21 },		// 120 bits per transform
+			{ 5, 15, 20 },		// 120 bits per transform
+			{ 5, 16, 19 },		// 120 bits per transform
+			{ 5, 17, 18 },		// 120 bits per transform
+			{ 5, 18, 17 },		// 120 bits per transform
+			{ 5, 19, 16 },		// 120 bits per transform
+			{ 5, 20, 15 },		// 120 bits per transform
+			{ 5, 21, 14 },		// 120 bits per transform
+			{ 5, 22, 13 },		// 120 bits per transform
+			{ 5, 23, 12 },		// 120 bits per transform
+			{ 5, 24, 3 },		// 120 bits per transform
+			{ 6, 2, 24 },		// 120 bits per transform
+			{ 6, 11, 23 },		// 120 bits per transform
+			{ 6, 12, 22 },		// 120 bits per transform
+			{ 6, 13, 21 },		// 120 bits per transform
+			{ 6, 14, 20 },		// 120 bits per transform
+			{ 6, 15, 19 },		// 120 bits per transform
+			{ 6, 16, 18 },		// 120 bits per transform
+			{ 6, 17, 17 },		// 120 bits per transform
+			{ 6, 18, 16 },		// 120 bits per transform
+			{ 6, 19, 15 },		// 120 bits per transform
+			{ 6, 20, 14 },		// 120 bits per transform
+			{ 6, 21, 13 },		// 120 bits per transform
+			{ 6, 22, 12 },		// 120 bits per transform
+			{ 6, 23, 11 },		// 120 bits per transform
+			{ 6, 24, 2 },		// 120 bits per transform
+			{ 7, 1, 24 },		// 120 bits per transform
+			{ 7, 10, 23 },		// 120 bits per transform
+			{ 7, 11, 22 },		// 120 bits per transform
+			{ 7, 12, 21 },		// 120 bits per transform
+			{ 7, 13, 20 },		// 120 bits per transform
+			{ 7, 14, 19 },		// 120 bits per transform
+			{ 7, 15, 18 },		// 120 bits per transform
+			{ 7, 16, 17 },		// 120 bits per transform
+			{ 7, 17, 16 },		// 120 bits per transform
+			{ 7, 18, 15 },		// 120 bits per transform
+			{ 7, 19, 14 },		// 120 bits per transform
+			{ 7, 20, 13 },		// 120 bits per transform
+			{ 7, 21, 12 },		// 120 bits per transform
+			{ 7, 22, 11 },		// 120 bits per transform
+			{ 7, 23, 10 },		// 120 bits per transform
+			{ 7, 24, 1 },		// 120 bits per transform
+			{ 8, 0, 24 },		// 120 bits per transform
+			{ 8, 9, 23 },		// 120 bits per transform
+			{ 8, 10, 22 },		// 120 bits per transform
+			{ 8, 11, 21 },		// 120 bits per transform
+			{ 8, 12, 20 },		// 120 bits per transform
+			{ 8, 13, 19 },		// 120 bits per transform
+			{ 8, 14, 18 },		// 120 bits per transform
+			{ 8, 15, 17 },		// 120 bits per transform
+			{ 8, 16, 16 },		// 120 bits per transform
+			{ 8, 17, 15 },		// 120 bits per transform
+			{ 8, 18, 14 },		// 120 bits per transform
+			{ 8, 19, 13 },		// 120 bits per transform
+			{ 8, 20, 12 },		// 120 bits per transform
+			{ 8, 21, 11 },		// 120 bits per transform
+			{ 8, 22, 10 },		// 120 bits per transform
+			{ 8, 23, 9 },		// 120 bits per transform
+			{ 8, 24, 0 },		// 120 bits per transform
+			{ 9, 8, 23 },		// 120 bits per transform
+			{ 9, 9, 22 },		// 120 bits per transform
+			{ 9, 10, 21 },		// 120 bits per transform
+			{ 9, 11, 20 },		// 120 bits per transform
+			{ 9, 12, 19 },		// 120 bits per transform
+			{ 9, 13, 18 },		// 120 bits per transform
+			{ 9, 14, 17 },		// 120 bits per transform
+			{ 9, 15, 16 },		// 120 bits per transform
+			{ 9, 16, 15 },		// 120 bits per transform
+			{ 9, 17, 14 },		// 120 bits per transform
+			{ 9, 18, 13 },		// 120 bits per transform
+			{ 9, 19, 12 },		// 120 bits per transform
+			{ 9, 20, 11 },		// 120 bits per transform
+			{ 9, 21, 10 },		// 120 bits per transform
+			{ 9, 22, 9 },		// 120 bits per transform
+			{ 9, 23, 8 },		// 120 bits per transform
+			{ 10, 7, 23 },		// 120 bits per transform
+			{ 10, 8, 22 },		// 120 bits per transform
+			{ 10, 9, 21 },		// 120 bits per transform
+			{ 10, 10, 20 },		// 120 bits per transform
+			{ 10, 11, 19 },		// 120 bits per transform
+			{ 10, 12, 18 },		// 120 bits per transform
+			{ 10, 13, 17 },		// 120 bits per transform
+			{ 10, 14, 16 },		// 120 bits per transform
+			{ 10, 15, 15 },		// 120 bits per transform
+			{ 10, 16, 14 },		// 120 bits per transform
+			{ 10, 17, 13 },		// 120 bits per transform
+			{ 10, 18, 12 },		// 120 bits per transform
+			{ 10, 19, 11 },		// 120 bits per transform
+			{ 10, 20, 10 },		// 120 bits per transform
+			{ 10, 21, 9 },		// 120 bits per transform
+			{ 10, 22, 8 },		// 120 bits per transform
+			{ 10, 23, 7 },		// 120 bits per transform
+			{ 11, 6, 23 },		// 120 bits per transform
+			{ 11, 7, 22 },		// 120 bits per transform
+			{ 11, 8, 21 },		// 120 bits per transform
+			{ 11, 9, 20 },		// 120 bits per transform
+			{ 11, 10, 19 },		// 120 bits per transform
+			{ 11, 11, 18 },		// 120 bits per transform
+			{ 11, 12, 17 },		// 120 bits per transform
+			{ 11, 13, 16 },		// 120 bits per transform
+			{ 11, 14, 15 },		// 120 bits per transform
+			{ 11, 15, 14 },		// 120 bits per transform
+			{ 11, 16, 13 },		// 120 bits per transform
+			{ 11, 17, 12 },		// 120 bits per transform
+			{ 11, 18, 11 },		// 120 bits per transform
+			{ 11, 19, 10 },		// 120 bits per transform
+			{ 11, 20, 9 },		// 120 bits per transform
+			{ 11, 21, 8 },		// 120 bits per transform
+			{ 11, 22, 7 },		// 120 bits per transform
+			{ 11, 23, 6 },		// 120 bits per transform
+			{ 12, 5, 23 },		// 120 bits per transform
+			{ 12, 6, 22 },		// 120 bits per transform
+			{ 12, 7, 21 },		// 120 bits per transform
+			{ 12, 8, 20 },		// 120 bits per transform
+			{ 12, 9, 19 },		// 120 bits per transform
+			{ 12, 10, 18 },		// 120 bits per transform
+			{ 12, 11, 17 },		// 120 bits per transform
+			{ 12, 12, 16 },		// 120 bits per transform
+			{ 12, 13, 15 },		// 120 bits per transform
+			{ 12, 14, 14 },		// 120 bits per transform
+			{ 12, 15, 13 },		// 120 bits per transform
+			{ 12, 16, 12 },		// 120 bits per transform
+			{ 12, 17, 11 },		// 120 bits per transform
+			{ 12, 18, 10 },		// 120 bits per transform
+			{ 12, 19, 9 },		// 120 bits per transform
+			{ 12, 20, 8 },		// 120 bits per transform
+			{ 12, 21, 7 },		// 120 bits per transform
+			{ 12, 22, 6 },		// 120 bits per transform
+			{ 12, 23, 5 },		// 120 bits per transform
+			{ 13, 4, 23 },		// 120 bits per transform
+			{ 13, 5, 22 },		// 120 bits per transform
+			{ 13, 6, 21 },		// 120 bits per transform
+			{ 13, 7, 20 },		// 120 bits per transform
+			{ 13, 8, 19 },		// 120 bits per transform
+			{ 13, 9, 18 },		// 120 bits per transform
+			{ 13, 10, 17 },		// 120 bits per transform
+			{ 13, 11, 16 },		// 120 bits per transform
+			{ 13, 12, 15 },		// 120 bits per transform
+			{ 13, 13, 14 },		// 120 bits per transform
+			{ 13, 14, 13 },		// 120 bits per transform
+			{ 13, 15, 12 },		// 120 bits per transform
+			{ 13, 16, 11 },		// 120 bits per transform
+			{ 13, 17, 10 },		// 120 bits per transform
+			{ 13, 18, 9 },		// 120 bits per transform
+			{ 13, 19, 8 },		// 120 bits per transform
+			{ 13, 20, 7 },		// 120 bits per transform
+			{ 13, 21, 6 },		// 120 bits per transform
+			{ 13, 22, 5 },		// 120 bits per transform
+			{ 13, 23, 4 },		// 120 bits per transform
+			{ 14, 3, 23 },		// 120 bits per transform
+			{ 14, 4, 22 },		// 120 bits per transform
+			{ 14, 5, 21 },		// 120 bits per transform
+			{ 14, 6, 20 },		// 120 bits per transform
+			{ 14, 7, 19 },		// 120 bits per transform
+			{ 14, 8, 18 },		// 120 bits per transform
+			{ 14, 9, 17 },		// 120 bits per transform
+			{ 14, 10, 16 },		// 120 bits per transform
+			{ 14, 11, 15 },		// 120 bits per transform
+			{ 14, 12, 14 },		// 120 bits per transform
+			{ 14, 13, 13 },		// 120 bits per transform
+			{ 14, 14, 12 },		// 120 bits per transform
+			{ 14, 15, 11 },		// 120 bits per transform
+			{ 14, 16, 10 },		// 120 bits per transform
+			{ 14, 17, 9 },		// 120 bits per transform
+			{ 14, 18, 8 },		// 120 bits per transform
+			{ 14, 19, 7 },		// 120 bits per transform
+			{ 14, 20, 6 },		// 120 bits per transform
+			{ 14, 21, 5 },		// 120 bits per transform
+			{ 14, 22, 4 },		// 120 bits per transform
+			{ 14, 23, 3 },		// 120 bits per transform
+			{ 15, 2, 23 },		// 120 bits per transform
+			{ 15, 3, 22 },		// 120 bits per transform
+			{ 15, 4, 21 },		// 120 bits per transform
+			{ 15, 5, 20 },		// 120 bits per transform
+			{ 15, 6, 19 },		// 120 bits per transform
+			{ 15, 7, 18 },		// 120 bits per transform
+			{ 15, 8, 17 },		// 120 bits per transform
+			{ 15, 9, 16 },		// 120 bits per transform
+			{ 15, 10, 15 },		// 120 bits per transform
+			{ 15, 11, 14 },		// 120 bits per transform
+			{ 15, 12, 13 },		// 120 bits per transform
+			{ 15, 13, 12 },		// 120 bits per transform
+			{ 15, 14, 11 },		// 120 bits per transform
+			{ 15, 15, 10 },		// 120 bits per transform
+			{ 15, 16, 9 },		// 120 bits per transform
+			{ 15, 17, 8 },		// 120 bits per transform
+			{ 15, 18, 7 },		// 120 bits per transform
+			{ 15, 19, 6 },		// 120 bits per transform
+			{ 15, 20, 5 },		// 120 bits per transform
+			{ 15, 21, 4 },		// 120 bits per transform
+			{ 15, 22, 3 },		// 120 bits per transform
+			{ 15, 23, 2 },		// 120 bits per transform
+			{ 16, 1, 23 },		// 120 bits per transform
+			{ 16, 2, 22 },		// 120 bits per transform
+			{ 16, 3, 21 },		// 120 bits per transform
+			{ 16, 4, 20 },		// 120 bits per transform
+			{ 16, 5, 19 },		// 120 bits per transform
+			{ 16, 6, 18 },		// 120 bits per transform
+			{ 16, 7, 17 },		// 120 bits per transform
+			{ 16, 8, 16 },		// 120 bits per transform
+			{ 16, 9, 15 },		// 120 bits per transform
+			{ 16, 10, 14 },		// 120 bits per transform
+			{ 16, 11, 13 },		// 120 bits per transform
+			{ 16, 12, 12 },		// 120 bits per transform
+			{ 16, 13, 11 },		// 120 bits per transform
+			{ 16, 14, 10 },		// 120 bits per transform
+			{ 16, 15, 9 },		// 120 bits per transform
+			{ 16, 16, 8 },		// 120 bits per transform
+			{ 16, 17, 7 },		// 120 bits per transform
+			{ 16, 18, 6 },		// 120 bits per transform
+			{ 16, 19, 5 },		// 120 bits per transform
+			{ 16, 20, 4 },		// 120 bits per transform
+			{ 16, 21, 3 },		// 120 bits per transform
+			{ 16, 22, 2 },		// 120 bits per transform
+			{ 16, 23, 1 },		// 120 bits per transform
+			{ 17, 0, 23 },		// 120 bits per transform
+			{ 17, 1, 22 },		// 120 bits per transform
+			{ 17, 2, 21 },		// 120 bits per transform
+			{ 17, 3, 20 },		// 120 bits per transform
+			{ 17, 4, 19 },		// 120 bits per transform
+			{ 17, 5, 18 },		// 120 bits per transform
+			{ 17, 6, 17 },		// 120 bits per transform
+			{ 17, 7, 16 },		// 120 bits per transform
+			{ 17, 8, 15 },		// 120 bits per transform
+			{ 17, 9, 14 },		// 120 bits per transform
+			{ 17, 10, 13 },		// 120 bits per transform
+			{ 17, 11, 12 },		// 120 bits per transform
+			{ 17, 12, 11 },		// 120 bits per transform
+			{ 17, 13, 10 },		// 120 bits per transform
+			{ 17, 14, 9 },		// 120 bits per transform
+			{ 17, 15, 8 },		// 120 bits per transform
+			{ 17, 16, 7 },		// 120 bits per transform
+			{ 17, 17, 6 },		// 120 bits per transform
+			{ 17, 18, 5 },		// 120 bits per transform
+			{ 17, 19, 4 },		// 120 bits per transform
+			{ 17, 20, 3 },		// 120 bits per transform
+			{ 17, 21, 2 },		// 120 bits per transform
+			{ 17, 22, 1 },		// 120 bits per transform
+			{ 17, 23, 0 },		// 120 bits per transform
+			{ 18, 0, 22 },		// 120 bits per transform
+			{ 18, 1, 21 },		// 120 bits per transform
+			{ 18, 2, 20 },		// 120 bits per transform
+			{ 18, 3, 19 },		// 120 bits per transform
+			{ 18, 4, 18 },		// 120 bits per transform
+			{ 18, 5, 17 },		// 120 bits per transform
+			{ 18, 6, 16 },		// 120 bits per transform
+			{ 18, 7, 15 },		// 120 bits per transform
+			{ 18, 8, 14 },		// 120 bits per transform
+			{ 18, 9, 13 },		// 120 bits per transform
+			{ 18, 10, 12 },		// 120 bits per transform
+			{ 18, 11, 11 },		// 120 bits per transform
+			{ 18, 12, 10 },		// 120 bits per transform
+			{ 18, 13, 9 },		// 120 bits per transform
+			{ 18, 14, 8 },		// 120 bits per transform
+			{ 18, 15, 7 },		// 120 bits per transform
+			{ 18, 16, 6 },		// 120 bits per transform
+			{ 18, 17, 5 },		// 120 bits per transform
+			{ 18, 18, 4 },		// 120 bits per transform
+			{ 18, 19, 3 },		// 120 bits per transform
+			{ 18, 20, 2 },		// 120 bits per transform
+			{ 18, 21, 1 },		// 120 bits per transform
+			{ 18, 22, 0 },		// 120 bits per transform
+			{ 19, 0, 21 },		// 120 bits per transform
+			{ 19, 1, 20 },		// 120 bits per transform
+			{ 19, 2, 19 },		// 120 bits per transform
+			{ 19, 3, 18 },		// 120 bits per transform
+			{ 19, 4, 17 },		// 120 bits per transform
+			{ 19, 5, 16 },		// 120 bits per transform
+			{ 19, 6, 15 },		// 120 bits per transform
+			{ 19, 7, 14 },		// 120 bits per transform
+			{ 19, 8, 13 },		// 120 bits per transform
+			{ 19, 9, 12 },		// 120 bits per transform
+			{ 19, 10, 11 },		// 120 bits per transform
+			{ 19, 11, 10 },		// 120 bits per transform
+			{ 19, 12, 9 },		// 120 bits per transform
+			{ 19, 13, 8 },		// 120 bits per transform
+			{ 19, 14, 7 },		// 120 bits per transform
+			{ 19, 15, 6 },		// 120 bits per transform
+			{ 19, 16, 5 },		// 120 bits per transform
+			{ 19, 17, 4 },		// 120 bits per transform
+			{ 19, 18, 3 },		// 120 bits per transform
+			{ 19, 19, 2 },		// 120 bits per transform
+			{ 19, 20, 1 },		// 120 bits per transform
+			{ 19, 21, 0 },		// 120 bits per transform
+			{ 20, 0, 20 },		// 120 bits per transform
+			{ 20, 1, 19 },		// 120 bits per transform
+			{ 20, 2, 18 },		// 120 bits per transform
+			{ 20, 3, 17 },		// 120 bits per transform
+			{ 20, 4, 16 },		// 120 bits per transform
+			{ 20, 5, 15 },		// 120 bits per transform
+			{ 20, 6, 14 },		// 120 bits per transform
+			{ 20, 7, 13 },		// 120 bits per transform
+			{ 20, 8, 12 },		// 120 bits per transform
+			{ 20, 9, 11 },		// 120 bits per transform
+			{ 20, 10, 10 },		// 120 bits per transform
+			{ 20, 11, 9 },		// 120 bits per transform
+			{ 20, 12, 8 },		// 120 bits per transform
+			{ 20, 13, 7 },		// 120 bits per transform
+			{ 20, 14, 6 },		// 120 bits per transform
+			{ 20, 15, 5 },		// 120 bits per transform
+			{ 20, 16, 4 },		// 120 bits per transform
+			{ 20, 17, 3 },		// 120 bits per transform
+			{ 20, 18, 2 },		// 120 bits per transform
+			{ 20, 19, 1 },		// 120 bits per transform
+			{ 20, 20, 0 },		// 120 bits per transform
+			{ 21, 0, 19 },		// 120 bits per transform
+			{ 21, 1, 18 },		// 120 bits per transform
+			{ 21, 2, 17 },		// 120 bits per transform
+			{ 21, 3, 16 },		// 120 bits per transform
+			{ 21, 4, 15 },		// 120 bits per transform
+			{ 21, 5, 14 },		// 120 bits per transform
+			{ 21, 6, 13 },		// 120 bits per transform
+			{ 21, 7, 12 },		// 120 bits per transform
+			{ 21, 8, 11 },		// 120 bits per transform
+			{ 21, 9, 10 },		// 120 bits per transform
+			{ 21, 10, 9 },		// 120 bits per transform
+			{ 21, 11, 8 },		// 120 bits per transform
+			{ 21, 12, 7 },		// 120 bits per transform
+			{ 21, 13, 6 },		// 120 bits per transform
+			{ 21, 14, 5 },		// 120 bits per transform
+			{ 21, 15, 4 },		// 120 bits per transform
+			{ 21, 16, 3 },		// 120 bits per transform
+			{ 21, 17, 2 },		// 120 bits per transform
+			{ 21, 18, 1 },		// 120 bits per transform
+			{ 21, 19, 0 },		// 120 bits per transform
+			{ 22, 0, 18 },		// 120 bits per transform
+			{ 22, 1, 17 },		// 120 bits per transform
+			{ 22, 2, 16 },		// 120 bits per transform
+			{ 22, 3, 15 },		// 120 bits per transform
+			{ 22, 4, 14 },		// 120 bits per transform
+			{ 22, 5, 13 },		// 120 bits per transform
+			{ 22, 6, 12 },		// 120 bits per transform
+			{ 22, 7, 11 },		// 120 bits per transform
+			{ 22, 8, 10 },		// 120 bits per transform
+			{ 22, 9, 9 },		// 120 bits per transform
+			{ 22, 10, 8 },		// 120 bits per transform
+			{ 22, 11, 7 },		// 120 bits per transform
+			{ 22, 12, 6 },		// 120 bits per transform
+			{ 22, 13, 5 },		// 120 bits per transform
+			{ 22, 14, 4 },		// 120 bits per transform
+			{ 22, 15, 3 },		// 120 bits per transform
+			{ 22, 16, 2 },		// 120 bits per transform
+			{ 22, 17, 1 },		// 120 bits per transform
+			{ 22, 18, 0 },		// 120 bits per transform
+			{ 23, 0, 17 },		// 120 bits per transform
+			{ 23, 1, 16 },		// 120 bits per transform
+			{ 23, 2, 15 },		// 120 bits per transform
+			{ 23, 3, 14 },		// 120 bits per transform
+			{ 23, 4, 13 },		// 120 bits per transform
+			{ 23, 5, 12 },		// 120 bits per transform
+			{ 23, 6, 11 },		// 120 bits per transform
+			{ 23, 7, 10 },		// 120 bits per transform
+			{ 23, 8, 9 },		// 120 bits per transform
+			{ 23, 9, 8 },		// 120 bits per transform
+			{ 23, 10, 7 },		// 120 bits per transform
+			{ 23, 11, 6 },		// 120 bits per transform
+			{ 23, 12, 5 },		// 120 bits per transform
+			{ 23, 13, 4 },		// 120 bits per transform
+			{ 23, 14, 3 },		// 120 bits per transform
+			{ 23, 15, 2 },		// 120 bits per transform
+			{ 23, 16, 1 },		// 120 bits per transform
+			{ 23, 17, 0 },		// 120 bits per transform
+			{ 24, 0, 8 },		// 120 bits per transform
+			{ 24, 1, 7 },		// 120 bits per transform
+			{ 24, 2, 6 },		// 120 bits per transform
+			{ 24, 3, 5 },		// 120 bits per transform
+			{ 24, 4, 4 },		// 120 bits per transform
+			{ 24, 5, 3 },		// 120 bits per transform
+			{ 24, 6, 2 },		// 120 bits per transform
+			{ 24, 7, 1 },		// 120 bits per transform
+			{ 24, 8, 0 },		// 120 bits per transform
+			{ 0, 9, 24 },		// 123 bits per transform
+			{ 0, 18, 23 },		// 123 bits per transform
+			{ 0, 19, 22 },		// 123 bits per transform
+			{ 0, 20, 21 },		// 123 bits per transform
+			{ 0, 21, 20 },		// 123 bits per transform
+			{ 0, 22, 19 },		// 123 bits per transform
+			{ 0, 23, 18 },		// 123 bits per transform
+			{ 0, 24, 9 },		// 123 bits per transform
+			{ 1, 8, 24 },		// 123 bits per transform
+			{ 1, 17, 23 },		// 123 bits per transform
+			{ 1, 18, 22 },		// 123 bits per transform
+			{ 1, 19, 21 },		// 123 bits per transform
+			{ 1, 20, 20 },		// 123 bits per transform
+			{ 1, 21, 19 },		// 123 bits per transform
+			{ 1, 22, 18 },		// 123 bits per transform
+			{ 1, 23, 17 },		// 123 bits per transform
+			{ 1, 24, 8 },		// 123 bits per transform
+			{ 2, 7, 24 },		// 123 bits per transform
+			{ 2, 16, 23 },		// 123 bits per transform
+			{ 2, 17, 22 },		// 123 bits per transform
+			{ 2, 18, 21 },		// 123 bits per transform
+			{ 2, 19, 20 },		// 123 bits per transform
+			{ 2, 20, 19 },		// 123 bits per transform
+			{ 2, 21, 18 },		// 123 bits per transform
+			{ 2, 22, 17 },		// 123 bits per transform
+			{ 2, 23, 16 },		// 123 bits per transform
+			{ 2, 24, 7 },		// 123 bits per transform
+			{ 3, 6, 24 },		// 123 bits per transform
+			{ 3, 15, 23 },		// 123 bits per transform
+			{ 3, 16, 22 },		// 123 bits per transform
+			{ 3, 17, 21 },		// 123 bits per transform
+			{ 3, 18, 20 },		// 123 bits per transform
+			{ 3, 19, 19 },		// 123 bits per transform
+			{ 3, 20, 18 },		// 123 bits per transform
+			{ 3, 21, 17 },		// 123 bits per transform
+			{ 3, 22, 16 },		// 123 bits per transform
+			{ 3, 23, 15 },		// 123 bits per transform
+			{ 3, 24, 6 },		// 123 bits per transform
+			{ 4, 5, 24 },		// 123 bits per transform
+			{ 4, 14, 23 },		// 123 bits per transform
+			{ 4, 15, 22 },		// 123 bits per transform
+			{ 4, 16, 21 },		// 123 bits per transform
+			{ 4, 17, 20 },		// 123 bits per transform
+			{ 4, 18, 19 },		// 123 bits per transform
+			{ 4, 19, 18 },		// 123 bits per transform
+			{ 4, 20, 17 },		// 123 bits per transform
+			{ 4, 21, 16 },		// 123 bits per transform
+			{ 4, 22, 15 },		// 123 bits per transform
+			{ 4, 23, 14 },		// 123 bits per transform
+			{ 4, 24, 5 },		// 123 bits per transform
+			{ 5, 4, 24 },		// 123 bits per transform
+			{ 5, 13, 23 },		// 123 bits per transform
+			{ 5, 14, 22 },		// 123 bits per transform
+			{ 5, 15, 21 },		// 123 bits per transform
+			{ 5, 16, 20 },		// 123 bits per transform
+			{ 5, 17, 19 },		// 123 bits per transform
+			{ 5, 18, 18 },		// 123 bits per transform
+			{ 5, 19, 17 },		// 123 bits per transform
+			{ 5, 20, 16 },		// 123 bits per transform
+			{ 5, 21, 15 },		// 123 bits per transform
+			{ 5, 22, 14 },		// 123 bits per transform
+			{ 5, 23, 13 },		// 123 bits per transform
+			{ 5, 24, 4 },		// 123 bits per transform
+			{ 6, 3, 24 },		// 123 bits per transform
+			{ 6, 12, 23 },		// 123 bits per transform
+			{ 6, 13, 22 },		// 123 bits per transform
+			{ 6, 14, 21 },		// 123 bits per transform
+			{ 6, 15, 20 },		// 123 bits per transform
+			{ 6, 16, 19 },		// 123 bits per transform
+			{ 6, 17, 18 },		// 123 bits per transform
+			{ 6, 18, 17 },		// 123 bits per transform
+			{ 6, 19, 16 },		// 123 bits per transform
+			{ 6, 20, 15 },		// 123 bits per transform
+			{ 6, 21, 14 },		// 123 bits per transform
+			{ 6, 22, 13 },		// 123 bits per transform
+			{ 6, 23, 12 },		// 123 bits per transform
+			{ 6, 24, 3 },		// 123 bits per transform
+			{ 7, 2, 24 },		// 123 bits per transform
+			{ 7, 11, 23 },		// 123 bits per transform
+			{ 7, 12, 22 },		// 123 bits per transform
+			{ 7, 13, 21 },		// 123 bits per transform
+			{ 7, 14, 20 },		// 123 bits per transform
+			{ 7, 15, 19 },		// 123 bits per transform
+			{ 7, 16, 18 },		// 123 bits per transform
+			{ 7, 17, 17 },		// 123 bits per transform
+			{ 7, 18, 16 },		// 123 bits per transform
+			{ 7, 19, 15 },		// 123 bits per transform
+			{ 7, 20, 14 },		// 123 bits per transform
+			{ 7, 21, 13 },		// 123 bits per transform
+			{ 7, 22, 12 },		// 123 bits per transform
+			{ 7, 23, 11 },		// 123 bits per transform
+			{ 7, 24, 2 },		// 123 bits per transform
+			{ 8, 1, 24 },		// 123 bits per transform
+			{ 8, 10, 23 },		// 123 bits per transform
+			{ 8, 11, 22 },		// 123 bits per transform
+			{ 8, 12, 21 },		// 123 bits per transform
+			{ 8, 13, 20 },		// 123 bits per transform
+			{ 8, 14, 19 },		// 123 bits per transform
+			{ 8, 15, 18 },		// 123 bits per transform
+			{ 8, 16, 17 },		// 123 bits per transform
+			{ 8, 17, 16 },		// 123 bits per transform
+			{ 8, 18, 15 },		// 123 bits per transform
+			{ 8, 19, 14 },		// 123 bits per transform
+			{ 8, 20, 13 },		// 123 bits per transform
+			{ 8, 21, 12 },		// 123 bits per transform
+			{ 8, 22, 11 },		// 123 bits per transform
+			{ 8, 23, 10 },		// 123 bits per transform
+			{ 8, 24, 1 },		// 123 bits per transform
+			{ 9, 0, 24 },		// 123 bits per transform
+			{ 9, 9, 23 },		// 123 bits per transform
+			{ 9, 10, 22 },		// 123 bits per transform
+			{ 9, 11, 21 },		// 123 bits per transform
+			{ 9, 12, 20 },		// 123 bits per transform
+			{ 9, 13, 19 },		// 123 bits per transform
+			{ 9, 14, 18 },		// 123 bits per transform
+			{ 9, 15, 17 },		// 123 bits per transform
+			{ 9, 16, 16 },		// 123 bits per transform
+			{ 9, 17, 15 },		// 123 bits per transform
+			{ 9, 18, 14 },		// 123 bits per transform
+			{ 9, 19, 13 },		// 123 bits per transform
+			{ 9, 20, 12 },		// 123 bits per transform
+			{ 9, 21, 11 },		// 123 bits per transform
+			{ 9, 22, 10 },		// 123 bits per transform
+			{ 9, 23, 9 },		// 123 bits per transform
+			{ 9, 24, 0 },		// 123 bits per transform
+			{ 10, 8, 23 },		// 123 bits per transform
+			{ 10, 9, 22 },		// 123 bits per transform
+			{ 10, 10, 21 },		// 123 bits per transform
+			{ 10, 11, 20 },		// 123 bits per transform
+			{ 10, 12, 19 },		// 123 bits per transform
+			{ 10, 13, 18 },		// 123 bits per transform
+			{ 10, 14, 17 },		// 123 bits per transform
+			{ 10, 15, 16 },		// 123 bits per transform
+			{ 10, 16, 15 },		// 123 bits per transform
+			{ 10, 17, 14 },		// 123 bits per transform
+			{ 10, 18, 13 },		// 123 bits per transform
+			{ 10, 19, 12 },		// 123 bits per transform
+			{ 10, 20, 11 },		// 123 bits per transform
+			{ 10, 21, 10 },		// 123 bits per transform
+			{ 10, 22, 9 },		// 123 bits per transform
+			{ 10, 23, 8 },		// 123 bits per transform
+			{ 11, 7, 23 },		// 123 bits per transform
+			{ 11, 8, 22 },		// 123 bits per transform
+			{ 11, 9, 21 },		// 123 bits per transform
+			{ 11, 10, 20 },		// 123 bits per transform
+			{ 11, 11, 19 },		// 123 bits per transform
+			{ 11, 12, 18 },		// 123 bits per transform
+			{ 11, 13, 17 },		// 123 bits per transform
+			{ 11, 14, 16 },		// 123 bits per transform
+			{ 11, 15, 15 },		// 123 bits per transform
+			{ 11, 16, 14 },		// 123 bits per transform
+			{ 11, 17, 13 },		// 123 bits per transform
+			{ 11, 18, 12 },		// 123 bits per transform
+			{ 11, 19, 11 },		// 123 bits per transform
+			{ 11, 20, 10 },		// 123 bits per transform
+			{ 11, 21, 9 },		// 123 bits per transform
+			{ 11, 22, 8 },		// 123 bits per transform
+			{ 11, 23, 7 },		// 123 bits per transform
+			{ 12, 6, 23 },		// 123 bits per transform
+			{ 12, 7, 22 },		// 123 bits per transform
+			{ 12, 8, 21 },		// 123 bits per transform
+			{ 12, 9, 20 },		// 123 bits per transform
+			{ 12, 10, 19 },		// 123 bits per transform
+			{ 12, 11, 18 },		// 123 bits per transform
+			{ 12, 12, 17 },		// 123 bits per transform
+			{ 12, 13, 16 },		// 123 bits per transform
+			{ 12, 14, 15 },		// 123 bits per transform
+			{ 12, 15, 14 },		// 123 bits per transform
+			{ 12, 16, 13 },		// 123 bits per transform
+			{ 12, 17, 12 },		// 123 bits per transform
+			{ 12, 18, 11 },		// 123 bits per transform
+			{ 12, 19, 10 },		// 123 bits per transform
+			{ 12, 20, 9 },		// 123 bits per transform
+			{ 12, 21, 8 },		// 123 bits per transform
+			{ 12, 22, 7 },		// 123 bits per transform
+			{ 12, 23, 6 },		// 123 bits per transform
+			{ 13, 5, 23 },		// 123 bits per transform
+			{ 13, 6, 22 },		// 123 bits per transform
+			{ 13, 7, 21 },		// 123 bits per transform
+			{ 13, 8, 20 },		// 123 bits per transform
+			{ 13, 9, 19 },		// 123 bits per transform
+			{ 13, 10, 18 },		// 123 bits per transform
+			{ 13, 11, 17 },		// 123 bits per transform
+			{ 13, 12, 16 },		// 123 bits per transform
+			{ 13, 13, 15 },		// 123 bits per transform
+			{ 13, 14, 14 },		// 123 bits per transform
+			{ 13, 15, 13 },		// 123 bits per transform
+			{ 13, 16, 12 },		// 123 bits per transform
+			{ 13, 17, 11 },		// 123 bits per transform
+			{ 13, 18, 10 },		// 123 bits per transform
+			{ 13, 19, 9 },		// 123 bits per transform
+			{ 13, 20, 8 },		// 123 bits per transform
+			{ 13, 21, 7 },		// 123 bits per transform
+			{ 13, 22, 6 },		// 123 bits per transform
+			{ 13, 23, 5 },		// 123 bits per transform
+			{ 14, 4, 23 },		// 123 bits per transform
+			{ 14, 5, 22 },		// 123 bits per transform
+			{ 14, 6, 21 },		// 123 bits per transform
+			{ 14, 7, 20 },		// 123 bits per transform
+			{ 14, 8, 19 },		// 123 bits per transform
+			{ 14, 9, 18 },		// 123 bits per transform
+			{ 14, 10, 17 },		// 123 bits per transform
+			{ 14, 11, 16 },		// 123 bits per transform
+			{ 14, 12, 15 },		// 123 bits per transform
+			{ 14, 13, 14 },		// 123 bits per transform
+			{ 14, 14, 13 },		// 123 bits per transform
+			{ 14, 15, 12 },		// 123 bits per transform
+			{ 14, 16, 11 },		// 123 bits per transform
+			{ 14, 17, 10 },		// 123 bits per transform
+			{ 14, 18, 9 },		// 123 bits per transform
+			{ 14, 19, 8 },		// 123 bits per transform
+			{ 14, 20, 7 },		// 123 bits per transform
+			{ 14, 21, 6 },		// 123 bits per transform
+			{ 14, 22, 5 },		// 123 bits per transform
+			{ 14, 23, 4 },		// 123 bits per transform
+			{ 15, 3, 23 },		// 123 bits per transform
+			{ 15, 4, 22 },		// 123 bits per transform
+			{ 15, 5, 21 },		// 123 bits per transform
+			{ 15, 6, 20 },		// 123 bits per transform
+			{ 15, 7, 19 },		// 123 bits per transform
+			{ 15, 8, 18 },		// 123 bits per transform
+			{ 15, 9, 17 },		// 123 bits per transform
+			{ 15, 10, 16 },		// 123 bits per transform
+			{ 15, 11, 15 },		// 123 bits per transform
+			{ 15, 12, 14 },		// 123 bits per transform
+			{ 15, 13, 13 },		// 123 bits per transform
+			{ 15, 14, 12 },		// 123 bits per transform
+			{ 15, 15, 11 },		// 123 bits per transform
+			{ 15, 16, 10 },		// 123 bits per transform
+			{ 15, 17, 9 },		// 123 bits per transform
+			{ 15, 18, 8 },		// 123 bits per transform
+			{ 15, 19, 7 },		// 123 bits per transform
+			{ 15, 20, 6 },		// 123 bits per transform
+			{ 15, 21, 5 },		// 123 bits per transform
+			{ 15, 22, 4 },		// 123 bits per transform
+			{ 15, 23, 3 },		// 123 bits per transform
+			{ 16, 2, 23 },		// 123 bits per transform
+			{ 16, 3, 22 },		// 123 bits per transform
+			{ 16, 4, 21 },		// 123 bits per transform
+			{ 16, 5, 20 },		// 123 bits per transform
+			{ 16, 6, 19 },		// 123 bits per transform
+			{ 16, 7, 18 },		// 123 bits per transform
+			{ 16, 8, 17 },		// 123 bits per transform
+			{ 16, 9, 16 },		// 123 bits per transform
+			{ 16, 10, 15 },		// 123 bits per transform
+			{ 16, 11, 14 },		// 123 bits per transform
+			{ 16, 12, 13 },		// 123 bits per transform
+			{ 16, 13, 12 },		// 123 bits per transform
+			{ 16, 14, 11 },		// 123 bits per transform
+			{ 16, 15, 10 },		// 123 bits per transform
+			{ 16, 16, 9 },		// 123 bits per transform
+			{ 16, 17, 8 },		// 123 bits per transform
+			{ 16, 18, 7 },		// 123 bits per transform
+			{ 16, 19, 6 },		// 123 bits per transform
+			{ 16, 20, 5 },		// 123 bits per transform
+			{ 16, 21, 4 },		// 123 bits per transform
+			{ 16, 22, 3 },		// 123 bits per transform
+			{ 16, 23, 2 },		// 123 bits per transform
+			{ 17, 1, 23 },		// 123 bits per transform
+			{ 17, 2, 22 },		// 123 bits per transform
+			{ 17, 3, 21 },		// 123 bits per transform
+			{ 17, 4, 20 },		// 123 bits per transform
+			{ 17, 5, 19 },		// 123 bits per transform
+			{ 17, 6, 18 },		// 123 bits per transform
+			{ 17, 7, 17 },		// 123 bits per transform
+			{ 17, 8, 16 },		// 123 bits per transform
+			{ 17, 9, 15 },		// 123 bits per transform
+			{ 17, 10, 14 },		// 123 bits per transform
+			{ 17, 11, 13 },		// 123 bits per transform
+			{ 17, 12, 12 },		// 123 bits per transform
+			{ 17, 13, 11 },		// 123 bits per transform
+			{ 17, 14, 10 },		// 123 bits per transform
+			{ 17, 15, 9 },		// 123 bits per transform
+			{ 17, 16, 8 },		// 123 bits per transform
+			{ 17, 17, 7 },		// 123 bits per transform
+			{ 17, 18, 6 },		// 123 bits per transform
+			{ 17, 19, 5 },		// 123 bits per transform
+			{ 17, 20, 4 },		// 123 bits per transform
+			{ 17, 21, 3 },		// 123 bits per transform
+			{ 17, 22, 2 },		// 123 bits per transform
+			{ 17, 23, 1 },		// 123 bits per transform
+			{ 18, 0, 23 },		// 123 bits per transform
+			{ 18, 1, 22 },		// 123 bits per transform
+			{ 18, 2, 21 },		// 123 bits per transform
+			{ 18, 3, 20 },		// 123 bits per transform
+			{ 18, 4, 19 },		// 123 bits per transform
+			{ 18, 5, 18 },		// 123 bits per transform
+			{ 18, 6, 17 },		// 123 bits per transform
+			{ 18, 7, 16 },		// 123 bits per transform
+			{ 18, 8, 15 },		// 123 bits per transform
+			{ 18, 9, 14 },		// 123 bits per transform
+			{ 18, 10, 13 },		// 123 bits per transform
+			{ 18, 11, 12 },		// 123 bits per transform
+			{ 18, 12, 11 },		// 123 bits per transform
+			{ 18, 13, 10 },		// 123 bits per transform
+			{ 18, 14, 9 },		// 123 bits per transform
+			{ 18, 15, 8 },		// 123 bits per transform
+			{ 18, 16, 7 },		// 123 bits per transform
+			{ 18, 17, 6 },		// 123 bits per transform
+			{ 18, 18, 5 },		// 123 bits per transform
+			{ 18, 19, 4 },		// 123 bits per transform
+			{ 18, 20, 3 },		// 123 bits per transform
+			{ 18, 21, 2 },		// 123 bits per transform
+			{ 18, 22, 1 },		// 123 bits per transform
+			{ 18, 23, 0 },		// 123 bits per transform
+			{ 19, 0, 22 },		// 123 bits per transform
+			{ 19, 1, 21 },		// 123 bits per transform
+			{ 19, 2, 20 },		// 123 bits per transform
+			{ 19, 3, 19 },		// 123 bits per transform
+			{ 19, 4, 18 },		// 123 bits per transform
+			{ 19, 5, 17 },		// 123 bits per transform
+			{ 19, 6, 16 },		// 123 bits per transform
+			{ 19, 7, 15 },		// 123 bits per transform
+			{ 19, 8, 14 },		// 123 bits per transform
+			{ 19, 9, 13 },		// 123 bits per transform
+			{ 19, 10, 12 },		// 123 bits per transform
+			{ 19, 11, 11 },		// 123 bits per transform
+			{ 19, 12, 10 },		// 123 bits per transform
+			{ 19, 13, 9 },		// 123 bits per transform
+			{ 19, 14, 8 },		// 123 bits per transform
+			{ 19, 15, 7 },		// 123 bits per transform
+			{ 19, 16, 6 },		// 123 bits per transform
+			{ 19, 17, 5 },		// 123 bits per transform
+			{ 19, 18, 4 },		// 123 bits per transform
+			{ 19, 19, 3 },		// 123 bits per transform
+			{ 19, 20, 2 },		// 123 bits per transform
+			{ 19, 21, 1 },		// 123 bits per transform
+			{ 19, 22, 0 },		// 123 bits per transform
+			{ 20, 0, 21 },		// 123 bits per transform
+			{ 20, 1, 20 },		// 123 bits per transform
+			{ 20, 2, 19 },		// 123 bits per transform
+			{ 20, 3, 18 },		// 123 bits per transform
+			{ 20, 4, 17 },		// 123 bits per transform
+			{ 20, 5, 16 },		// 123 bits per transform
+			{ 20, 6, 15 },		// 123 bits per transform
+			{ 20, 7, 14 },		// 123 bits per transform
+			{ 20, 8, 13 },		// 123 bits per transform
+			{ 20, 9, 12 },		// 123 bits per transform
+			{ 20, 10, 11 },		// 123 bits per transform
+			{ 20, 11, 10 },		// 123 bits per transform
+			{ 20, 12, 9 },		// 123 bits per transform
+			{ 20, 13, 8 },		// 123 bits per transform
+			{ 20, 14, 7 },		// 123 bits per transform
+			{ 20, 15, 6 },		// 123 bits per transform
+			{ 20, 16, 5 },		// 123 bits per transform
+			{ 20, 17, 4 },		// 123 bits per transform
+			{ 20, 18, 3 },		// 123 bits per transform
+			{ 20, 19, 2 },		// 123 bits per transform
+			{ 20, 20, 1 },		// 123 bits per transform
+			{ 20, 21, 0 },		// 123 bits per transform
+			{ 21, 0, 20 },		// 123 bits per transform
+			{ 21, 1, 19 },		// 123 bits per transform
+			{ 21, 2, 18 },		// 123 bits per transform
+			{ 21, 3, 17 },		// 123 bits per transform
+			{ 21, 4, 16 },		// 123 bits per transform
+			{ 21, 5, 15 },		// 123 bits per transform
+			{ 21, 6, 14 },		// 123 bits per transform
+			{ 21, 7, 13 },		// 123 bits per transform
+			{ 21, 8, 12 },		// 123 bits per transform
+			{ 21, 9, 11 },		// 123 bits per transform
+			{ 21, 10, 10 },		// 123 bits per transform
+			{ 21, 11, 9 },		// 123 bits per transform
+			{ 21, 12, 8 },		// 123 bits per transform
+			{ 21, 13, 7 },		// 123 bits per transform
+			{ 21, 14, 6 },		// 123 bits per transform
+			{ 21, 15, 5 },		// 123 bits per transform
+			{ 21, 16, 4 },		// 123 bits per transform
+			{ 21, 17, 3 },		// 123 bits per transform
+			{ 21, 18, 2 },		// 123 bits per transform
+			{ 21, 19, 1 },		// 123 bits per transform
+			{ 21, 20, 0 },		// 123 bits per transform
+			{ 22, 0, 19 },		// 123 bits per transform
+			{ 22, 1, 18 },		// 123 bits per transform
+			{ 22, 2, 17 },		// 123 bits per transform
+			{ 22, 3, 16 },		// 123 bits per transform
+			{ 22, 4, 15 },		// 123 bits per transform
+			{ 22, 5, 14 },		// 123 bits per transform
+			{ 22, 6, 13 },		// 123 bits per transform
+			{ 22, 7, 12 },		// 123 bits per transform
+			{ 22, 8, 11 },		// 123 bits per transform
+			{ 22, 9, 10 },		// 123 bits per transform
+			{ 22, 10, 9 },		// 123 bits per transform
+			{ 22, 11, 8 },		// 123 bits per transform
+			{ 22, 12, 7 },		// 123 bits per transform
+			{ 22, 13, 6 },		// 123 bits per transform
+			{ 22, 14, 5 },		// 123 bits per transform
+			{ 22, 15, 4 },		// 123 bits per transform
+			{ 22, 16, 3 },		// 123 bits per transform
+			{ 22, 17, 2 },		// 123 bits per transform
+			{ 22, 18, 1 },		// 123 bits per transform
+			{ 22, 19, 0 },		// 123 bits per transform
+			{ 23, 0, 18 },		// 123 bits per transform
+			{ 23, 1, 17 },		// 123 bits per transform
+			{ 23, 2, 16 },		// 123 bits per transform
+			{ 23, 3, 15 },		// 123 bits per transform
+			{ 23, 4, 14 },		// 123 bits per transform
+			{ 23, 5, 13 },		// 123 bits per transform
+			{ 23, 6, 12 },		// 123 bits per transform
+			{ 23, 7, 11 },		// 123 bits per transform
+			{ 23, 8, 10 },		// 123 bits per transform
+			{ 23, 9, 9 },		// 123 bits per transform
+			{ 23, 10, 8 },		// 123 bits per transform
+			{ 23, 11, 7 },		// 123 bits per transform
+			{ 23, 12, 6 },		// 123 bits per transform
+			{ 23, 13, 5 },		// 123 bits per transform
+			{ 23, 14, 4 },		// 123 bits per transform
+			{ 23, 15, 3 },		// 123 bits per transform
+			{ 23, 16, 2 },		// 123 bits per transform
+			{ 23, 17, 1 },		// 123 bits per transform
+			{ 23, 18, 0 },		// 123 bits per transform
+			{ 24, 0, 9 },		// 123 bits per transform
+			{ 24, 1, 8 },		// 123 bits per transform
+			{ 24, 2, 7 },		// 123 bits per transform
+			{ 24, 3, 6 },		// 123 bits per transform
+			{ 24, 4, 5 },		// 123 bits per transform
+			{ 24, 5, 4 },		// 123 bits per transform
+			{ 24, 6, 3 },		// 123 bits per transform
+			{ 24, 7, 2 },		// 123 bits per transform
+			{ 24, 8, 1 },		// 123 bits per transform
+			{ 24, 9, 0 },		// 123 bits per transform
+			{ 0, 10, 24 },		// 126 bits per transform
+			{ 0, 19, 23 },		// 126 bits per transform
+			{ 0, 20, 22 },		// 126 bits per transform
+			{ 0, 21, 21 },		// 126 bits per transform
+			{ 0, 22, 20 },		// 126 bits per transform
+			{ 0, 23, 19 },		// 126 bits per transform
+			{ 0, 24, 10 },		// 126 bits per transform
+			{ 1, 9, 24 },		// 126 bits per transform
+			{ 1, 18, 23 },		// 126 bits per transform
+			{ 1, 19, 22 },		// 126 bits per transform
+			{ 1, 20, 21 },		// 126 bits per transform
+			{ 1, 21, 20 },		// 126 bits per transform
+			{ 1, 22, 19 },		// 126 bits per transform
+			{ 1, 23, 18 },		// 126 bits per transform
+			{ 1, 24, 9 },		// 126 bits per transform
+			{ 2, 8, 24 },		// 126 bits per transform
+			{ 2, 17, 23 },		// 126 bits per transform
+			{ 2, 18, 22 },		// 126 bits per transform
+			{ 2, 19, 21 },		// 126 bits per transform
+			{ 2, 20, 20 },		// 126 bits per transform
+			{ 2, 21, 19 },		// 126 bits per transform
+			{ 2, 22, 18 },		// 126 bits per transform
+			{ 2, 23, 17 },		// 126 bits per transform
+			{ 2, 24, 8 },		// 126 bits per transform
+			{ 3, 7, 24 },		// 126 bits per transform
+			{ 3, 16, 23 },		// 126 bits per transform
+			{ 3, 17, 22 },		// 126 bits per transform
+			{ 3, 18, 21 },		// 126 bits per transform
+			{ 3, 19, 20 },		// 126 bits per transform
+			{ 3, 20, 19 },		// 126 bits per transform
+			{ 3, 21, 18 },		// 126 bits per transform
+			{ 3, 22, 17 },		// 126 bits per transform
+			{ 3, 23, 16 },		// 126 bits per transform
+			{ 3, 24, 7 },		// 126 bits per transform
+			{ 4, 6, 24 },		// 126 bits per transform
+			{ 4, 15, 23 },		// 126 bits per transform
+			{ 4, 16, 22 },		// 126 bits per transform
+			{ 4, 17, 21 },		// 126 bits per transform
+			{ 4, 18, 20 },		// 126 bits per transform
+			{ 4, 19, 19 },		// 126 bits per transform
+			{ 4, 20, 18 },		// 126 bits per transform
+			{ 4, 21, 17 },		// 126 bits per transform
+			{ 4, 22, 16 },		// 126 bits per transform
+			{ 4, 23, 15 },		// 126 bits per transform
+			{ 4, 24, 6 },		// 126 bits per transform
+			{ 5, 5, 24 },		// 126 bits per transform
+			{ 5, 14, 23 },		// 126 bits per transform
+			{ 5, 15, 22 },		// 126 bits per transform
+			{ 5, 16, 21 },		// 126 bits per transform
+			{ 5, 17, 20 },		// 126 bits per transform
+			{ 5, 18, 19 },		// 126 bits per transform
+			{ 5, 19, 18 },		// 126 bits per transform
+			{ 5, 20, 17 },		// 126 bits per transform
+			{ 5, 21, 16 },		// 126 bits per transform
+			{ 5, 22, 15 },		// 126 bits per transform
+			{ 5, 23, 14 },		// 126 bits per transform
+			{ 5, 24, 5 },		// 126 bits per transform
+			{ 6, 4, 24 },		// 126 bits per transform
+			{ 6, 13, 23 },		// 126 bits per transform
+			{ 6, 14, 22 },		// 126 bits per transform
+			{ 6, 15, 21 },		// 126 bits per transform
+			{ 6, 16, 20 },		// 126 bits per transform
+			{ 6, 17, 19 },		// 126 bits per transform
+			{ 6, 18, 18 },		// 126 bits per transform
+			{ 6, 19, 17 },		// 126 bits per transform
+			{ 6, 20, 16 },		// 126 bits per transform
+			{ 6, 21, 15 },		// 126 bits per transform
+			{ 6, 22, 14 },		// 126 bits per transform
+			{ 6, 23, 13 },		// 126 bits per transform
+			{ 6, 24, 4 },		// 126 bits per transform
+			{ 7, 3, 24 },		// 126 bits per transform
+			{ 7, 12, 23 },		// 126 bits per transform
+			{ 7, 13, 22 },		// 126 bits per transform
+			{ 7, 14, 21 },		// 126 bits per transform
+			{ 7, 15, 20 },		// 126 bits per transform
+			{ 7, 16, 19 },		// 126 bits per transform
+			{ 7, 17, 18 },		// 126 bits per transform
+			{ 7, 18, 17 },		// 126 bits per transform
+			{ 7, 19, 16 },		// 126 bits per transform
+			{ 7, 20, 15 },		// 126 bits per transform
+			{ 7, 21, 14 },		// 126 bits per transform
+			{ 7, 22, 13 },		// 126 bits per transform
+			{ 7, 23, 12 },		// 126 bits per transform
+			{ 7, 24, 3 },		// 126 bits per transform
+			{ 8, 2, 24 },		// 126 bits per transform
+			{ 8, 11, 23 },		// 126 bits per transform
+			{ 8, 12, 22 },		// 126 bits per transform
+			{ 8, 13, 21 },		// 126 bits per transform
+			{ 8, 14, 20 },		// 126 bits per transform
+			{ 8, 15, 19 },		// 126 bits per transform
+			{ 8, 16, 18 },		// 126 bits per transform
+			{ 8, 17, 17 },		// 126 bits per transform
+			{ 8, 18, 16 },		// 126 bits per transform
+			{ 8, 19, 15 },		// 126 bits per transform
+			{ 8, 20, 14 },		// 126 bits per transform
+			{ 8, 21, 13 },		// 126 bits per transform
+			{ 8, 22, 12 },		// 126 bits per transform
+			{ 8, 23, 11 },		// 126 bits per transform
+			{ 8, 24, 2 },		// 126 bits per transform
+			{ 9, 1, 24 },		// 126 bits per transform
+			{ 9, 10, 23 },		// 126 bits per transform
+			{ 9, 11, 22 },		// 126 bits per transform
+			{ 9, 12, 21 },		// 126 bits per transform
+			{ 9, 13, 20 },		// 126 bits per transform
+			{ 9, 14, 19 },		// 126 bits per transform
+			{ 9, 15, 18 },		// 126 bits per transform
+			{ 9, 16, 17 },		// 126 bits per transform
+			{ 9, 17, 16 },		// 126 bits per transform
+			{ 9, 18, 15 },		// 126 bits per transform
+			{ 9, 19, 14 },		// 126 bits per transform
+			{ 9, 20, 13 },		// 126 bits per transform
+			{ 9, 21, 12 },		// 126 bits per transform
+			{ 9, 22, 11 },		// 126 bits per transform
+			{ 9, 23, 10 },		// 126 bits per transform
+			{ 9, 24, 1 },		// 126 bits per transform
+			{ 10, 0, 24 },		// 126 bits per transform
+			{ 10, 9, 23 },		// 126 bits per transform
+			{ 10, 10, 22 },		// 126 bits per transform
+			{ 10, 11, 21 },		// 126 bits per transform
+			{ 10, 12, 20 },		// 126 bits per transform
+			{ 10, 13, 19 },		// 126 bits per transform
+			{ 10, 14, 18 },		// 126 bits per transform
+			{ 10, 15, 17 },		// 126 bits per transform
+			{ 10, 16, 16 },		// 126 bits per transform
+			{ 10, 17, 15 },		// 126 bits per transform
+			{ 10, 18, 14 },		// 126 bits per transform
+			{ 10, 19, 13 },		// 126 bits per transform
+			{ 10, 20, 12 },		// 126 bits per transform
+			{ 10, 21, 11 },		// 126 bits per transform
+			{ 10, 22, 10 },		// 126 bits per transform
+			{ 10, 23, 9 },		// 126 bits per transform
+			{ 10, 24, 0 },		// 126 bits per transform
+			{ 11, 8, 23 },		// 126 bits per transform
+			{ 11, 9, 22 },		// 126 bits per transform
+			{ 11, 10, 21 },		// 126 bits per transform
+			{ 11, 11, 20 },		// 126 bits per transform
+			{ 11, 12, 19 },		// 126 bits per transform
+			{ 11, 13, 18 },		// 126 bits per transform
+			{ 11, 14, 17 },		// 126 bits per transform
+			{ 11, 15, 16 },		// 126 bits per transform
+			{ 11, 16, 15 },		// 126 bits per transform
+			{ 11, 17, 14 },		// 126 bits per transform
+			{ 11, 18, 13 },		// 126 bits per transform
+			{ 11, 19, 12 },		// 126 bits per transform
+			{ 11, 20, 11 },		// 126 bits per transform
+			{ 11, 21, 10 },		// 126 bits per transform
+			{ 11, 22, 9 },		// 126 bits per transform
+			{ 11, 23, 8 },		// 126 bits per transform
+			{ 12, 7, 23 },		// 126 bits per transform
+			{ 12, 8, 22 },		// 126 bits per transform
+			{ 12, 9, 21 },		// 126 bits per transform
+			{ 12, 10, 20 },		// 126 bits per transform
+			{ 12, 11, 19 },		// 126 bits per transform
+			{ 12, 12, 18 },		// 126 bits per transform
+			{ 12, 13, 17 },		// 126 bits per transform
+			{ 12, 14, 16 },		// 126 bits per transform
+			{ 12, 15, 15 },		// 126 bits per transform
+			{ 12, 16, 14 },		// 126 bits per transform
+			{ 12, 17, 13 },		// 126 bits per transform
+			{ 12, 18, 12 },		// 126 bits per transform
+			{ 12, 19, 11 },		// 126 bits per transform
+			{ 12, 20, 10 },		// 126 bits per transform
+			{ 12, 21, 9 },		// 126 bits per transform
+			{ 12, 22, 8 },		// 126 bits per transform
+			{ 12, 23, 7 },		// 126 bits per transform
+			{ 13, 6, 23 },		// 126 bits per transform
+			{ 13, 7, 22 },		// 126 bits per transform
+			{ 13, 8, 21 },		// 126 bits per transform
+			{ 13, 9, 20 },		// 126 bits per transform
+			{ 13, 10, 19 },		// 126 bits per transform
+			{ 13, 11, 18 },		// 126 bits per transform
+			{ 13, 12, 17 },		// 126 bits per transform
+			{ 13, 13, 16 },		// 126 bits per transform
+			{ 13, 14, 15 },		// 126 bits per transform
+			{ 13, 15, 14 },		// 126 bits per transform
+			{ 13, 16, 13 },		// 126 bits per transform
+			{ 13, 17, 12 },		// 126 bits per transform
+			{ 13, 18, 11 },		// 126 bits per transform
+			{ 13, 19, 10 },		// 126 bits per transform
+			{ 13, 20, 9 },		// 126 bits per transform
+			{ 13, 21, 8 },		// 126 bits per transform
+			{ 13, 22, 7 },		// 126 bits per transform
+			{ 13, 23, 6 },		// 126 bits per transform
+			{ 14, 5, 23 },		// 126 bits per transform
+			{ 14, 6, 22 },		// 126 bits per transform
+			{ 14, 7, 21 },		// 126 bits per transform
+			{ 14, 8, 20 },		// 126 bits per transform
+			{ 14, 9, 19 },		// 126 bits per transform
+			{ 14, 10, 18 },		// 126 bits per transform
+			{ 14, 11, 17 },		// 126 bits per transform
+			{ 14, 12, 16 },		// 126 bits per transform
+			{ 14, 13, 15 },		// 126 bits per transform
+			{ 14, 14, 14 },		// 126 bits per transform
+			{ 14, 15, 13 },		// 126 bits per transform
+			{ 14, 16, 12 },		// 126 bits per transform
+			{ 14, 17, 11 },		// 126 bits per transform
+			{ 14, 18, 10 },		// 126 bits per transform
+			{ 14, 19, 9 },		// 126 bits per transform
+			{ 14, 20, 8 },		// 126 bits per transform
+			{ 14, 21, 7 },		// 126 bits per transform
+			{ 14, 22, 6 },		// 126 bits per transform
+			{ 14, 23, 5 },		// 126 bits per transform
+			{ 15, 4, 23 },		// 126 bits per transform
+			{ 15, 5, 22 },		// 126 bits per transform
+			{ 15, 6, 21 },		// 126 bits per transform
+			{ 15, 7, 20 },		// 126 bits per transform
+			{ 15, 8, 19 },		// 126 bits per transform
+			{ 15, 9, 18 },		// 126 bits per transform
+			{ 15, 10, 17 },		// 126 bits per transform
+			{ 15, 11, 16 },		// 126 bits per transform
+			{ 15, 12, 15 },		// 126 bits per transform
+			{ 15, 13, 14 },		// 126 bits per transform
+			{ 15, 14, 13 },		// 126 bits per transform
+			{ 15, 15, 12 },		// 126 bits per transform
+			{ 15, 16, 11 },		// 126 bits per transform
+			{ 15, 17, 10 },		// 126 bits per transform
+			{ 15, 18, 9 },		// 126 bits per transform
+			{ 15, 19, 8 },		// 126 bits per transform
+			{ 15, 20, 7 },		// 126 bits per transform
+			{ 15, 21, 6 },		// 126 bits per transform
+			{ 15, 22, 5 },		// 126 bits per transform
+			{ 15, 23, 4 },		// 126 bits per transform
+			{ 16, 3, 23 },		// 126 bits per transform
+			{ 16, 4, 22 },		// 126 bits per transform
+			{ 16, 5, 21 },		// 126 bits per transform
+			{ 16, 6, 20 },		// 126 bits per transform
+			{ 16, 7, 19 },		// 126 bits per transform
+			{ 16, 8, 18 },		// 126 bits per transform
+			{ 16, 9, 17 },		// 126 bits per transform
+			{ 16, 10, 16 },		// 126 bits per transform
+			{ 16, 11, 15 },		// 126 bits per transform
+			{ 16, 12, 14 },		// 126 bits per transform
+			{ 16, 13, 13 },		// 126 bits per transform
+			{ 16, 14, 12 },		// 126 bits per transform
+			{ 16, 15, 11 },		// 126 bits per transform
+			{ 16, 16, 10 },		// 126 bits per transform
+			{ 16, 17, 9 },		// 126 bits per transform
+			{ 16, 18, 8 },		// 126 bits per transform
+			{ 16, 19, 7 },		// 126 bits per transform
+			{ 16, 20, 6 },		// 126 bits per transform
+			{ 16, 21, 5 },		// 126 bits per transform
+			{ 16, 22, 4 },		// 126 bits per transform
+			{ 16, 23, 3 },		// 126 bits per transform
+			{ 17, 2, 23 },		// 126 bits per transform
+			{ 17, 3, 22 },		// 126 bits per transform
+			{ 17, 4, 21 },		// 126 bits per transform
+			{ 17, 5, 20 },		// 126 bits per transform
+			{ 17, 6, 19 },		// 126 bits per transform
+			{ 17, 7, 18 },		// 126 bits per transform
+			{ 17, 8, 17 },		// 126 bits per transform
+			{ 17, 9, 16 },		// 126 bits per transform
+			{ 17, 10, 15 },		// 126 bits per transform
+			{ 17, 11, 14 },		// 126 bits per transform
+			{ 17, 12, 13 },		// 126 bits per transform
+			{ 17, 13, 12 },		// 126 bits per transform
+			{ 17, 14, 11 },		// 126 bits per transform
+			{ 17, 15, 10 },		// 126 bits per transform
+			{ 17, 16, 9 },		// 126 bits per transform
+			{ 17, 17, 8 },		// 126 bits per transform
+			{ 17, 18, 7 },		// 126 bits per transform
+			{ 17, 19, 6 },		// 126 bits per transform
+			{ 17, 20, 5 },		// 126 bits per transform
+			{ 17, 21, 4 },		// 126 bits per transform
+			{ 17, 22, 3 },		// 126 bits per transform
+			{ 17, 23, 2 },		// 126 bits per transform
+			{ 18, 1, 23 },		// 126 bits per transform
+			{ 18, 2, 22 },		// 126 bits per transform
+			{ 18, 3, 21 },		// 126 bits per transform
+			{ 18, 4, 20 },		// 126 bits per transform
+			{ 18, 5, 19 },		// 126 bits per transform
+			{ 18, 6, 18 },		// 126 bits per transform
+			{ 18, 7, 17 },		// 126 bits per transform
+			{ 18, 8, 16 },		// 126 bits per transform
+			{ 18, 9, 15 },		// 126 bits per transform
+			{ 18, 10, 14 },		// 126 bits per transform
+			{ 18, 11, 13 },		// 126 bits per transform
+			{ 18, 12, 12 },		// 126 bits per transform
+			{ 18, 13, 11 },		// 126 bits per transform
+			{ 18, 14, 10 },		// 126 bits per transform
+			{ 18, 15, 9 },		// 126 bits per transform
+			{ 18, 16, 8 },		// 126 bits per transform
+			{ 18, 17, 7 },		// 126 bits per transform
+			{ 18, 18, 6 },		// 126 bits per transform
+			{ 18, 19, 5 },		// 126 bits per transform
+			{ 18, 20, 4 },		// 126 bits per transform
+			{ 18, 21, 3 },		// 126 bits per transform
+			{ 18, 22, 2 },		// 126 bits per transform
+			{ 18, 23, 1 },		// 126 bits per transform
+			{ 19, 0, 23 },		// 126 bits per transform
+			{ 19, 1, 22 },		// 126 bits per transform
+			{ 19, 2, 21 },		// 126 bits per transform
+			{ 19, 3, 20 },		// 126 bits per transform
+			{ 19, 4, 19 },		// 126 bits per transform
+			{ 19, 5, 18 },		// 126 bits per transform
+			{ 19, 6, 17 },		// 126 bits per transform
+			{ 19, 7, 16 },		// 126 bits per transform
+			{ 19, 8, 15 },		// 126 bits per transform
+			{ 19, 9, 14 },		// 126 bits per transform
+			{ 19, 10, 13 },		// 126 bits per transform
+			{ 19, 11, 12 },		// 126 bits per transform
+			{ 19, 12, 11 },		// 126 bits per transform
+			{ 19, 13, 10 },		// 126 bits per transform
+			{ 19, 14, 9 },		// 126 bits per transform
+			{ 19, 15, 8 },		// 126 bits per transform
+			{ 19, 16, 7 },		// 126 bits per transform
+			{ 19, 17, 6 },		// 126 bits per transform
+			{ 19, 18, 5 },		// 126 bits per transform
+			{ 19, 19, 4 },		// 126 bits per transform
+			{ 19, 20, 3 },		// 126 bits per transform
+			{ 19, 21, 2 },		// 126 bits per transform
+			{ 19, 22, 1 },		// 126 bits per transform
+			{ 19, 23, 0 },		// 126 bits per transform
+			{ 20, 0, 22 },		// 126 bits per transform
+			{ 20, 1, 21 },		// 126 bits per transform
+			{ 20, 2, 20 },		// 126 bits per transform
+			{ 20, 3, 19 },		// 126 bits per transform
+			{ 20, 4, 18 },		// 126 bits per transform
+			{ 20, 5, 17 },		// 126 bits per transform
+			{ 20, 6, 16 },		// 126 bits per transform
+			{ 20, 7, 15 },		// 126 bits per transform
+			{ 20, 8, 14 },		// 126 bits per transform
+			{ 20, 9, 13 },		// 126 bits per transform
+			{ 20, 10, 12 },		// 126 bits per transform
+			{ 20, 11, 11 },		// 126 bits per transform
+			{ 20, 12, 10 },		// 126 bits per transform
+			{ 20, 13, 9 },		// 126 bits per transform
+			{ 20, 14, 8 },		// 126 bits per transform
+			{ 20, 15, 7 },		// 126 bits per transform
+			{ 20, 16, 6 },		// 126 bits per transform
+			{ 20, 17, 5 },		// 126 bits per transform
+			{ 20, 18, 4 },		// 126 bits per transform
+			{ 20, 19, 3 },		// 126 bits per transform
+			{ 20, 20, 2 },		// 126 bits per transform
+			{ 20, 21, 1 },		// 126 bits per transform
+			{ 20, 22, 0 },		// 126 bits per transform
+			{ 21, 0, 21 },		// 126 bits per transform
+			{ 21, 1, 20 },		// 126 bits per transform
+			{ 21, 2, 19 },		// 126 bits per transform
+			{ 21, 3, 18 },		// 126 bits per transform
+			{ 21, 4, 17 },		// 126 bits per transform
+			{ 21, 5, 16 },		// 126 bits per transform
+			{ 21, 6, 15 },		// 126 bits per transform
+			{ 21, 7, 14 },		// 126 bits per transform
+			{ 21, 8, 13 },		// 126 bits per transform
+			{ 21, 9, 12 },		// 126 bits per transform
+			{ 21, 10, 11 },		// 126 bits per transform
+			{ 21, 11, 10 },		// 126 bits per transform
+			{ 21, 12, 9 },		// 126 bits per transform
+			{ 21, 13, 8 },		// 126 bits per transform
+			{ 21, 14, 7 },		// 126 bits per transform
+			{ 21, 15, 6 },		// 126 bits per transform
+			{ 21, 16, 5 },		// 126 bits per transform
+			{ 21, 17, 4 },		// 126 bits per transform
+			{ 21, 18, 3 },		// 126 bits per transform
+			{ 21, 19, 2 },		// 126 bits per transform
+			{ 21, 20, 1 },		// 126 bits per transform
+			{ 21, 21, 0 },		// 126 bits per transform
+			{ 22, 0, 20 },		// 126 bits per transform
+			{ 22, 1, 19 },		// 126 bits per transform
+			{ 22, 2, 18 },		// 126 bits per transform
+			{ 22, 3, 17 },		// 126 bits per transform
+			{ 22, 4, 16 },		// 126 bits per transform
+			{ 22, 5, 15 },		// 126 bits per transform
+			{ 22, 6, 14 },		// 126 bits per transform
+			{ 22, 7, 13 },		// 126 bits per transform
+			{ 22, 8, 12 },		// 126 bits per transform
+			{ 22, 9, 11 },		// 126 bits per transform
+			{ 22, 10, 10 },		// 126 bits per transform
+			{ 22, 11, 9 },		// 126 bits per transform
+			{ 22, 12, 8 },		// 126 bits per transform
+			{ 22, 13, 7 },		// 126 bits per transform
+			{ 22, 14, 6 },		// 126 bits per transform
+			{ 22, 15, 5 },		// 126 bits per transform
+			{ 22, 16, 4 },		// 126 bits per transform
+			{ 22, 17, 3 },		// 126 bits per transform
+			{ 22, 18, 2 },		// 126 bits per transform
+			{ 22, 19, 1 },		// 126 bits per transform
+			{ 22, 20, 0 },		// 126 bits per transform
+			{ 23, 0, 19 },		// 126 bits per transform
+			{ 23, 1, 18 },		// 126 bits per transform
+			{ 23, 2, 17 },		// 126 bits per transform
+			{ 23, 3, 16 },		// 126 bits per transform
+			{ 23, 4, 15 },		// 126 bits per transform
+			{ 23, 5, 14 },		// 126 bits per transform
+			{ 23, 6, 13 },		// 126 bits per transform
+			{ 23, 7, 12 },		// 126 bits per transform
+			{ 23, 8, 11 },		// 126 bits per transform
+			{ 23, 9, 10 },		// 126 bits per transform
+			{ 23, 10, 9 },		// 126 bits per transform
+			{ 23, 11, 8 },		// 126 bits per transform
+			{ 23, 12, 7 },		// 126 bits per transform
+			{ 23, 13, 6 },		// 126 bits per transform
+			{ 23, 14, 5 },		// 126 bits per transform
+			{ 23, 15, 4 },		// 126 bits per transform
+			{ 23, 16, 3 },		// 126 bits per transform
+			{ 23, 17, 2 },		// 126 bits per transform
+			{ 23, 18, 1 },		// 126 bits per transform
+			{ 23, 19, 0 },		// 126 bits per transform
+			{ 24, 0, 10 },		// 126 bits per transform
+			{ 24, 1, 9 },		// 126 bits per transform
+			{ 24, 2, 8 },		// 126 bits per transform
+			{ 24, 3, 7 },		// 126 bits per transform
+			{ 24, 4, 6 },		// 126 bits per transform
+			{ 24, 5, 5 },		// 126 bits per transform
+			{ 24, 6, 4 },		// 126 bits per transform
+			{ 24, 7, 3 },		// 126 bits per transform
+			{ 24, 8, 2 },		// 126 bits per transform
+			{ 24, 9, 1 },		// 126 bits per transform
+			{ 24, 10, 0 },		// 126 bits per transform
+			{ 0, 11, 24 },		// 129 bits per transform
+			{ 0, 20, 23 },		// 129 bits per transform
+			{ 0, 21, 22 },		// 129 bits per transform
+			{ 0, 22, 21 },		// 129 bits per transform
+			{ 0, 23, 20 },		// 129 bits per transform
+			{ 0, 24, 11 },		// 129 bits per transform
+			{ 1, 10, 24 },		// 129 bits per transform
+			{ 1, 19, 23 },		// 129 bits per transform
+			{ 1, 20, 22 },		// 129 bits per transform
+			{ 1, 21, 21 },		// 129 bits per transform
+			{ 1, 22, 20 },		// 129 bits per transform
+			{ 1, 23, 19 },		// 129 bits per transform
+			{ 1, 24, 10 },		// 129 bits per transform
+			{ 2, 9, 24 },		// 129 bits per transform
+			{ 2, 18, 23 },		// 129 bits per transform
+			{ 2, 19, 22 },		// 129 bits per transform
+			{ 2, 20, 21 },		// 129 bits per transform
+			{ 2, 21, 20 },		// 129 bits per transform
+			{ 2, 22, 19 },		// 129 bits per transform
+			{ 2, 23, 18 },		// 129 bits per transform
+			{ 2, 24, 9 },		// 129 bits per transform
+			{ 3, 8, 24 },		// 129 bits per transform
+			{ 3, 17, 23 },		// 129 bits per transform
+			{ 3, 18, 22 },		// 129 bits per transform
+			{ 3, 19, 21 },		// 129 bits per transform
+			{ 3, 20, 20 },		// 129 bits per transform
+			{ 3, 21, 19 },		// 129 bits per transform
+			{ 3, 22, 18 },		// 129 bits per transform
+			{ 3, 23, 17 },		// 129 bits per transform
+			{ 3, 24, 8 },		// 129 bits per transform
+			{ 4, 7, 24 },		// 129 bits per transform
+			{ 4, 16, 23 },		// 129 bits per transform
+			{ 4, 17, 22 },		// 129 bits per transform
+			{ 4, 18, 21 },		// 129 bits per transform
+			{ 4, 19, 20 },		// 129 bits per transform
+			{ 4, 20, 19 },		// 129 bits per transform
+			{ 4, 21, 18 },		// 129 bits per transform
+			{ 4, 22, 17 },		// 129 bits per transform
+			{ 4, 23, 16 },		// 129 bits per transform
+			{ 4, 24, 7 },		// 129 bits per transform
+			{ 5, 6, 24 },		// 129 bits per transform
+			{ 5, 15, 23 },		// 129 bits per transform
+			{ 5, 16, 22 },		// 129 bits per transform
+			{ 5, 17, 21 },		// 129 bits per transform
+			{ 5, 18, 20 },		// 129 bits per transform
+			{ 5, 19, 19 },		// 129 bits per transform
+			{ 5, 20, 18 },		// 129 bits per transform
+			{ 5, 21, 17 },		// 129 bits per transform
+			{ 5, 22, 16 },		// 129 bits per transform
+			{ 5, 23, 15 },		// 129 bits per transform
+			{ 5, 24, 6 },		// 129 bits per transform
+			{ 6, 5, 24 },		// 129 bits per transform
+			{ 6, 14, 23 },		// 129 bits per transform
+			{ 6, 15, 22 },		// 129 bits per transform
+			{ 6, 16, 21 },		// 129 bits per transform
+			{ 6, 17, 20 },		// 129 bits per transform
+			{ 6, 18, 19 },		// 129 bits per transform
+			{ 6, 19, 18 },		// 129 bits per transform
+			{ 6, 20, 17 },		// 129 bits per transform
+			{ 6, 21, 16 },		// 129 bits per transform
+			{ 6, 22, 15 },		// 129 bits per transform
+			{ 6, 23, 14 },		// 129 bits per transform
+			{ 6, 24, 5 },		// 129 bits per transform
+			{ 7, 4, 24 },		// 129 bits per transform
+			{ 7, 13, 23 },		// 129 bits per transform
+			{ 7, 14, 22 },		// 129 bits per transform
+			{ 7, 15, 21 },		// 129 bits per transform
+			{ 7, 16, 20 },		// 129 bits per transform
+			{ 7, 17, 19 },		// 129 bits per transform
+			{ 7, 18, 18 },		// 129 bits per transform
+			{ 7, 19, 17 },		// 129 bits per transform
+			{ 7, 20, 16 },		// 129 bits per transform
+			{ 7, 21, 15 },		// 129 bits per transform
+			{ 7, 22, 14 },		// 129 bits per transform
+			{ 7, 23, 13 },		// 129 bits per transform
+			{ 7, 24, 4 },		// 129 bits per transform
+			{ 8, 3, 24 },		// 129 bits per transform
+			{ 8, 12, 23 },		// 129 bits per transform
+			{ 8, 13, 22 },		// 129 bits per transform
+			{ 8, 14, 21 },		// 129 bits per transform
+			{ 8, 15, 20 },		// 129 bits per transform
+			{ 8, 16, 19 },		// 129 bits per transform
+			{ 8, 17, 18 },		// 129 bits per transform
+			{ 8, 18, 17 },		// 129 bits per transform
+			{ 8, 19, 16 },		// 129 bits per transform
+			{ 8, 20, 15 },		// 129 bits per transform
+			{ 8, 21, 14 },		// 129 bits per transform
+			{ 8, 22, 13 },		// 129 bits per transform
+			{ 8, 23, 12 },		// 129 bits per transform
+			{ 8, 24, 3 },		// 129 bits per transform
+			{ 9, 2, 24 },		// 129 bits per transform
+			{ 9, 11, 23 },		// 129 bits per transform
+			{ 9, 12, 22 },		// 129 bits per transform
+			{ 9, 13, 21 },		// 129 bits per transform
+			{ 9, 14, 20 },		// 129 bits per transform
+			{ 9, 15, 19 },		// 129 bits per transform
+			{ 9, 16, 18 },		// 129 bits per transform
+			{ 9, 17, 17 },		// 129 bits per transform
+			{ 9, 18, 16 },		// 129 bits per transform
+			{ 9, 19, 15 },		// 129 bits per transform
+			{ 9, 20, 14 },		// 129 bits per transform
+			{ 9, 21, 13 },		// 129 bits per transform
+			{ 9, 22, 12 },		// 129 bits per transform
+			{ 9, 23, 11 },		// 129 bits per transform
+			{ 9, 24, 2 },		// 129 bits per transform
+			{ 10, 1, 24 },		// 129 bits per transform
+			{ 10, 10, 23 },		// 129 bits per transform
+			{ 10, 11, 22 },		// 129 bits per transform
+			{ 10, 12, 21 },		// 129 bits per transform
+			{ 10, 13, 20 },		// 129 bits per transform
+			{ 10, 14, 19 },		// 129 bits per transform
+			{ 10, 15, 18 },		// 129 bits per transform
+			{ 10, 16, 17 },		// 129 bits per transform
+			{ 10, 17, 16 },		// 129 bits per transform
+			{ 10, 18, 15 },		// 129 bits per transform
+			{ 10, 19, 14 },		// 129 bits per transform
+			{ 10, 20, 13 },		// 129 bits per transform
+			{ 10, 21, 12 },		// 129 bits per transform
+			{ 10, 22, 11 },		// 129 bits per transform
+			{ 10, 23, 10 },		// 129 bits per transform
+			{ 10, 24, 1 },		// 129 bits per transform
+			{ 11, 0, 24 },		// 129 bits per transform
+			{ 11, 9, 23 },		// 129 bits per transform
+			{ 11, 10, 22 },		// 129 bits per transform
+			{ 11, 11, 21 },		// 129 bits per transform
+			{ 11, 12, 20 },		// 129 bits per transform
+			{ 11, 13, 19 },		// 129 bits per transform
+			{ 11, 14, 18 },		// 129 bits per transform
+			{ 11, 15, 17 },		// 129 bits per transform
+			{ 11, 16, 16 },		// 129 bits per transform
+			{ 11, 17, 15 },		// 129 bits per transform
+			{ 11, 18, 14 },		// 129 bits per transform
+			{ 11, 19, 13 },		// 129 bits per transform
+			{ 11, 20, 12 },		// 129 bits per transform
+			{ 11, 21, 11 },		// 129 bits per transform
+			{ 11, 22, 10 },		// 129 bits per transform
+			{ 11, 23, 9 },		// 129 bits per transform
+			{ 11, 24, 0 },		// 129 bits per transform
+			{ 12, 8, 23 },		// 129 bits per transform
+			{ 12, 9, 22 },		// 129 bits per transform
+			{ 12, 10, 21 },		// 129 bits per transform
+			{ 12, 11, 20 },		// 129 bits per transform
+			{ 12, 12, 19 },		// 129 bits per transform
+			{ 12, 13, 18 },		// 129 bits per transform
+			{ 12, 14, 17 },		// 129 bits per transform
+			{ 12, 15, 16 },		// 129 bits per transform
+			{ 12, 16, 15 },		// 129 bits per transform
+			{ 12, 17, 14 },		// 129 bits per transform
+			{ 12, 18, 13 },		// 129 bits per transform
+			{ 12, 19, 12 },		// 129 bits per transform
+			{ 12, 20, 11 },		// 129 bits per transform
+			{ 12, 21, 10 },		// 129 bits per transform
+			{ 12, 22, 9 },		// 129 bits per transform
+			{ 12, 23, 8 },		// 129 bits per transform
+			{ 13, 7, 23 },		// 129 bits per transform
+			{ 13, 8, 22 },		// 129 bits per transform
+			{ 13, 9, 21 },		// 129 bits per transform
+			{ 13, 10, 20 },		// 129 bits per transform
+			{ 13, 11, 19 },		// 129 bits per transform
+			{ 13, 12, 18 },		// 129 bits per transform
+			{ 13, 13, 17 },		// 129 bits per transform
+			{ 13, 14, 16 },		// 129 bits per transform
+			{ 13, 15, 15 },		// 129 bits per transform
+			{ 13, 16, 14 },		// 129 bits per transform
+			{ 13, 17, 13 },		// 129 bits per transform
+			{ 13, 18, 12 },		// 129 bits per transform
+			{ 13, 19, 11 },		// 129 bits per transform
+			{ 13, 20, 10 },		// 129 bits per transform
+			{ 13, 21, 9 },		// 129 bits per transform
+			{ 13, 22, 8 },		// 129 bits per transform
+			{ 13, 23, 7 },		// 129 bits per transform
+			{ 14, 6, 23 },		// 129 bits per transform
+			{ 14, 7, 22 },		// 129 bits per transform
+			{ 14, 8, 21 },		// 129 bits per transform
+			{ 14, 9, 20 },		// 129 bits per transform
+			{ 14, 10, 19 },		// 129 bits per transform
+			{ 14, 11, 18 },		// 129 bits per transform
+			{ 14, 12, 17 },		// 129 bits per transform
+			{ 14, 13, 16 },		// 129 bits per transform
+			{ 14, 14, 15 },		// 129 bits per transform
+			{ 14, 15, 14 },		// 129 bits per transform
+			{ 14, 16, 13 },		// 129 bits per transform
+			{ 14, 17, 12 },		// 129 bits per transform
+			{ 14, 18, 11 },		// 129 bits per transform
+			{ 14, 19, 10 },		// 129 bits per transform
+			{ 14, 20, 9 },		// 129 bits per transform
+			{ 14, 21, 8 },		// 129 bits per transform
+			{ 14, 22, 7 },		// 129 bits per transform
+			{ 14, 23, 6 },		// 129 bits per transform
+			{ 15, 5, 23 },		// 129 bits per transform
+			{ 15, 6, 22 },		// 129 bits per transform
+			{ 15, 7, 21 },		// 129 bits per transform
+			{ 15, 8, 20 },		// 129 bits per transform
+			{ 15, 9, 19 },		// 129 bits per transform
+			{ 15, 10, 18 },		// 129 bits per transform
+			{ 15, 11, 17 },		// 129 bits per transform
+			{ 15, 12, 16 },		// 129 bits per transform
+			{ 15, 13, 15 },		// 129 bits per transform
+			{ 15, 14, 14 },		// 129 bits per transform
+			{ 15, 15, 13 },		// 129 bits per transform
+			{ 15, 16, 12 },		// 129 bits per transform
+			{ 15, 17, 11 },		// 129 bits per transform
+			{ 15, 18, 10 },		// 129 bits per transform
+			{ 15, 19, 9 },		// 129 bits per transform
+			{ 15, 20, 8 },		// 129 bits per transform
+			{ 15, 21, 7 },		// 129 bits per transform
+			{ 15, 22, 6 },		// 129 bits per transform
+			{ 15, 23, 5 },		// 129 bits per transform
+			{ 16, 4, 23 },		// 129 bits per transform
+			{ 16, 5, 22 },		// 129 bits per transform
+			{ 16, 6, 21 },		// 129 bits per transform
+			{ 16, 7, 20 },		// 129 bits per transform
+			{ 16, 8, 19 },		// 129 bits per transform
+			{ 16, 9, 18 },		// 129 bits per transform
+			{ 16, 10, 17 },		// 129 bits per transform
+			{ 16, 11, 16 },		// 129 bits per transform
+			{ 16, 12, 15 },		// 129 bits per transform
+			{ 16, 13, 14 },		// 129 bits per transform
+			{ 16, 14, 13 },		// 129 bits per transform
+			{ 16, 15, 12 },		// 129 bits per transform
+			{ 16, 16, 11 },		// 129 bits per transform
+			{ 16, 17, 10 },		// 129 bits per transform
+			{ 16, 18, 9 },		// 129 bits per transform
+			{ 16, 19, 8 },		// 129 bits per transform
+			{ 16, 20, 7 },		// 129 bits per transform
+			{ 16, 21, 6 },		// 129 bits per transform
+			{ 16, 22, 5 },		// 129 bits per transform
+			{ 16, 23, 4 },		// 129 bits per transform
+			{ 17, 3, 23 },		// 129 bits per transform
+			{ 17, 4, 22 },		// 129 bits per transform
+			{ 17, 5, 21 },		// 129 bits per transform
+			{ 17, 6, 20 },		// 129 bits per transform
+			{ 17, 7, 19 },		// 129 bits per transform
+			{ 17, 8, 18 },		// 129 bits per transform
+			{ 17, 9, 17 },		// 129 bits per transform
+			{ 17, 10, 16 },		// 129 bits per transform
+			{ 17, 11, 15 },		// 129 bits per transform
+			{ 17, 12, 14 },		// 129 bits per transform
+			{ 17, 13, 13 },		// 129 bits per transform
+			{ 17, 14, 12 },		// 129 bits per transform
+			{ 17, 15, 11 },		// 129 bits per transform
+			{ 17, 16, 10 },		// 129 bits per transform
+			{ 17, 17, 9 },		// 129 bits per transform
+			{ 17, 18, 8 },		// 129 bits per transform
+			{ 17, 19, 7 },		// 129 bits per transform
+			{ 17, 20, 6 },		// 129 bits per transform
+			{ 17, 21, 5 },		// 129 bits per transform
+			{ 17, 22, 4 },		// 129 bits per transform
+			{ 17, 23, 3 },		// 129 bits per transform
+			{ 18, 2, 23 },		// 129 bits per transform
+			{ 18, 3, 22 },		// 129 bits per transform
+			{ 18, 4, 21 },		// 129 bits per transform
+			{ 18, 5, 20 },		// 129 bits per transform
+			{ 18, 6, 19 },		// 129 bits per transform
+			{ 18, 7, 18 },		// 129 bits per transform
+			{ 18, 8, 17 },		// 129 bits per transform
+			{ 18, 9, 16 },		// 129 bits per transform
+			{ 18, 10, 15 },		// 129 bits per transform
+			{ 18, 11, 14 },		// 129 bits per transform
+			{ 18, 12, 13 },		// 129 bits per transform
+			{ 18, 13, 12 },		// 129 bits per transform
+			{ 18, 14, 11 },		// 129 bits per transform
+			{ 18, 15, 10 },		// 129 bits per transform
+			{ 18, 16, 9 },		// 129 bits per transform
+			{ 18, 17, 8 },		// 129 bits per transform
+			{ 18, 18, 7 },		// 129 bits per transform
+			{ 18, 19, 6 },		// 129 bits per transform
+			{ 18, 20, 5 },		// 129 bits per transform
+			{ 18, 21, 4 },		// 129 bits per transform
+			{ 18, 22, 3 },		// 129 bits per transform
+			{ 18, 23, 2 },		// 129 bits per transform
+			{ 19, 1, 23 },		// 129 bits per transform
+			{ 19, 2, 22 },		// 129 bits per transform
+			{ 19, 3, 21 },		// 129 bits per transform
+			{ 19, 4, 20 },		// 129 bits per transform
+			{ 19, 5, 19 },		// 129 bits per transform
+			{ 19, 6, 18 },		// 129 bits per transform
+			{ 19, 7, 17 },		// 129 bits per transform
+			{ 19, 8, 16 },		// 129 bits per transform
+			{ 19, 9, 15 },		// 129 bits per transform
+			{ 19, 10, 14 },		// 129 bits per transform
+			{ 19, 11, 13 },		// 129 bits per transform
+			{ 19, 12, 12 },		// 129 bits per transform
+			{ 19, 13, 11 },		// 129 bits per transform
+			{ 19, 14, 10 },		// 129 bits per transform
+			{ 19, 15, 9 },		// 129 bits per transform
+			{ 19, 16, 8 },		// 129 bits per transform
+			{ 19, 17, 7 },		// 129 bits per transform
+			{ 19, 18, 6 },		// 129 bits per transform
+			{ 19, 19, 5 },		// 129 bits per transform
+			{ 19, 20, 4 },		// 129 bits per transform
+			{ 19, 21, 3 },		// 129 bits per transform
+			{ 19, 22, 2 },		// 129 bits per transform
+			{ 19, 23, 1 },		// 129 bits per transform
+			{ 20, 0, 23 },		// 129 bits per transform
+			{ 20, 1, 22 },		// 129 bits per transform
+			{ 20, 2, 21 },		// 129 bits per transform
+			{ 20, 3, 20 },		// 129 bits per transform
+			{ 20, 4, 19 },		// 129 bits per transform
+			{ 20, 5, 18 },		// 129 bits per transform
+			{ 20, 6, 17 },		// 129 bits per transform
+			{ 20, 7, 16 },		// 129 bits per transform
+			{ 20, 8, 15 },		// 129 bits per transform
+			{ 20, 9, 14 },		// 129 bits per transform
+			{ 20, 10, 13 },		// 129 bits per transform
+			{ 20, 11, 12 },		// 129 bits per transform
+			{ 20, 12, 11 },		// 129 bits per transform
+			{ 20, 13, 10 },		// 129 bits per transform
+			{ 20, 14, 9 },		// 129 bits per transform
+			{ 20, 15, 8 },		// 129 bits per transform
+			{ 20, 16, 7 },		// 129 bits per transform
+			{ 20, 17, 6 },		// 129 bits per transform
+			{ 20, 18, 5 },		// 129 bits per transform
+			{ 20, 19, 4 },		// 129 bits per transform
+			{ 20, 20, 3 },		// 129 bits per transform
+			{ 20, 21, 2 },		// 129 bits per transform
+			{ 20, 22, 1 },		// 129 bits per transform
+			{ 20, 23, 0 },		// 129 bits per transform
+			{ 21, 0, 22 },		// 129 bits per transform
+			{ 21, 1, 21 },		// 129 bits per transform
+			{ 21, 2, 20 },		// 129 bits per transform
+			{ 21, 3, 19 },		// 129 bits per transform
+			{ 21, 4, 18 },		// 129 bits per transform
+			{ 21, 5, 17 },		// 129 bits per transform
+			{ 21, 6, 16 },		// 129 bits per transform
+			{ 21, 7, 15 },		// 129 bits per transform
+			{ 21, 8, 14 },		// 129 bits per transform
+			{ 21, 9, 13 },		// 129 bits per transform
+			{ 21, 10, 12 },		// 129 bits per transform
+			{ 21, 11, 11 },		// 129 bits per transform
+			{ 21, 12, 10 },		// 129 bits per transform
+			{ 21, 13, 9 },		// 129 bits per transform
+			{ 21, 14, 8 },		// 129 bits per transform
+			{ 21, 15, 7 },		// 129 bits per transform
+			{ 21, 16, 6 },		// 129 bits per transform
+			{ 21, 17, 5 },		// 129 bits per transform
+			{ 21, 18, 4 },		// 129 bits per transform
+			{ 21, 19, 3 },		// 129 bits per transform
+			{ 21, 20, 2 },		// 129 bits per transform
+			{ 21, 21, 1 },		// 129 bits per transform
+			{ 21, 22, 0 },		// 129 bits per transform
+			{ 22, 0, 21 },		// 129 bits per transform
+			{ 22, 1, 20 },		// 129 bits per transform
+			{ 22, 2, 19 },		// 129 bits per transform
+			{ 22, 3, 18 },		// 129 bits per transform
+			{ 22, 4, 17 },		// 129 bits per transform
+			{ 22, 5, 16 },		// 129 bits per transform
+			{ 22, 6, 15 },		// 129 bits per transform
+			{ 22, 7, 14 },		// 129 bits per transform
+			{ 22, 8, 13 },		// 129 bits per transform
+			{ 22, 9, 12 },		// 129 bits per transform
+			{ 22, 10, 11 },		// 129 bits per transform
+			{ 22, 11, 10 },		// 129 bits per transform
+			{ 22, 12, 9 },		// 129 bits per transform
+			{ 22, 13, 8 },		// 129 bits per transform
+			{ 22, 14, 7 },		// 129 bits per transform
+			{ 22, 15, 6 },		// 129 bits per transform
+			{ 22, 16, 5 },		// 129 bits per transform
+			{ 22, 17, 4 },		// 129 bits per transform
+			{ 22, 18, 3 },		// 129 bits per transform
+			{ 22, 19, 2 },		// 129 bits per transform
+			{ 22, 20, 1 },		// 129 bits per transform
+			{ 22, 21, 0 },		// 129 bits per transform
+			{ 23, 0, 20 },		// 129 bits per transform
+			{ 23, 1, 19 },		// 129 bits per transform
+			{ 23, 2, 18 },		// 129 bits per transform
+			{ 23, 3, 17 },		// 129 bits per transform
+			{ 23, 4, 16 },		// 129 bits per transform
+			{ 23, 5, 15 },		// 129 bits per transform
+			{ 23, 6, 14 },		// 129 bits per transform
+			{ 23, 7, 13 },		// 129 bits per transform
+			{ 23, 8, 12 },		// 129 bits per transform
+			{ 23, 9, 11 },		// 129 bits per transform
+			{ 23, 10, 10 },		// 129 bits per transform
+			{ 23, 11, 9 },		// 129 bits per transform
+			{ 23, 12, 8 },		// 129 bits per transform
+			{ 23, 13, 7 },		// 129 bits per transform
+			{ 23, 14, 6 },		// 129 bits per transform
+			{ 23, 15, 5 },		// 129 bits per transform
+			{ 23, 16, 4 },		// 129 bits per transform
+			{ 23, 17, 3 },		// 129 bits per transform
+			{ 23, 18, 2 },		// 129 bits per transform
+			{ 23, 19, 1 },		// 129 bits per transform
+			{ 23, 20, 0 },		// 129 bits per transform
+			{ 24, 0, 11 },		// 129 bits per transform
+			{ 24, 1, 10 },		// 129 bits per transform
+			{ 24, 2, 9 },		// 129 bits per transform
+			{ 24, 3, 8 },		// 129 bits per transform
+			{ 24, 4, 7 },		// 129 bits per transform
+			{ 24, 5, 6 },		// 129 bits per transform
+			{ 24, 6, 5 },		// 129 bits per transform
+			{ 24, 7, 4 },		// 129 bits per transform
+			{ 24, 8, 3 },		// 129 bits per transform
+			{ 24, 9, 2 },		// 129 bits per transform
+			{ 24, 10, 1 },		// 129 bits per transform
+			{ 24, 11, 0 },		// 129 bits per transform
+			{ 0, 12, 24 },		// 132 bits per transform
+			{ 0, 21, 23 },		// 132 bits per transform
+			{ 0, 22, 22 },		// 132 bits per transform
+			{ 0, 23, 21 },		// 132 bits per transform
+			{ 0, 24, 12 },		// 132 bits per transform
+			{ 1, 11, 24 },		// 132 bits per transform
+			{ 1, 20, 23 },		// 132 bits per transform
+			{ 1, 21, 22 },		// 132 bits per transform
+			{ 1, 22, 21 },		// 132 bits per transform
+			{ 1, 23, 20 },		// 132 bits per transform
+			{ 1, 24, 11 },		// 132 bits per transform
+			{ 2, 10, 24 },		// 132 bits per transform
+			{ 2, 19, 23 },		// 132 bits per transform
+			{ 2, 20, 22 },		// 132 bits per transform
+			{ 2, 21, 21 },		// 132 bits per transform
+			{ 2, 22, 20 },		// 132 bits per transform
+			{ 2, 23, 19 },		// 132 bits per transform
+			{ 2, 24, 10 },		// 132 bits per transform
+			{ 3, 9, 24 },		// 132 bits per transform
+			{ 3, 18, 23 },		// 132 bits per transform
+			{ 3, 19, 22 },		// 132 bits per transform
+			{ 3, 20, 21 },		// 132 bits per transform
+			{ 3, 21, 20 },		// 132 bits per transform
+			{ 3, 22, 19 },		// 132 bits per transform
+			{ 3, 23, 18 },		// 132 bits per transform
+			{ 3, 24, 9 },		// 132 bits per transform
+			{ 4, 8, 24 },		// 132 bits per transform
+			{ 4, 17, 23 },		// 132 bits per transform
+			{ 4, 18, 22 },		// 132 bits per transform
+			{ 4, 19, 21 },		// 132 bits per transform
+			{ 4, 20, 20 },		// 132 bits per transform
+			{ 4, 21, 19 },		// 132 bits per transform
+			{ 4, 22, 18 },		// 132 bits per transform
+			{ 4, 23, 17 },		// 132 bits per transform
+			{ 4, 24, 8 },		// 132 bits per transform
+			{ 5, 7, 24 },		// 132 bits per transform
+			{ 5, 16, 23 },		// 132 bits per transform
+			{ 5, 17, 22 },		// 132 bits per transform
+			{ 5, 18, 21 },		// 132 bits per transform
+			{ 5, 19, 20 },		// 132 bits per transform
+			{ 5, 20, 19 },		// 132 bits per transform
+			{ 5, 21, 18 },		// 132 bits per transform
+			{ 5, 22, 17 },		// 132 bits per transform
+			{ 5, 23, 16 },		// 132 bits per transform
+			{ 5, 24, 7 },		// 132 bits per transform
+			{ 6, 6, 24 },		// 132 bits per transform
+			{ 6, 15, 23 },		// 132 bits per transform
+			{ 6, 16, 22 },		// 132 bits per transform
+			{ 6, 17, 21 },		// 132 bits per transform
+			{ 6, 18, 20 },		// 132 bits per transform
+			{ 6, 19, 19 },		// 132 bits per transform
+			{ 6, 20, 18 },		// 132 bits per transform
+			{ 6, 21, 17 },		// 132 bits per transform
+			{ 6, 22, 16 },		// 132 bits per transform
+			{ 6, 23, 15 },		// 132 bits per transform
+			{ 6, 24, 6 },		// 132 bits per transform
+			{ 7, 5, 24 },		// 132 bits per transform
+			{ 7, 14, 23 },		// 132 bits per transform
+			{ 7, 15, 22 },		// 132 bits per transform
+			{ 7, 16, 21 },		// 132 bits per transform
+			{ 7, 17, 20 },		// 132 bits per transform
+			{ 7, 18, 19 },		// 132 bits per transform
+			{ 7, 19, 18 },		// 132 bits per transform
+			{ 7, 20, 17 },		// 132 bits per transform
+			{ 7, 21, 16 },		// 132 bits per transform
+			{ 7, 22, 15 },		// 132 bits per transform
+			{ 7, 23, 14 },		// 132 bits per transform
+			{ 7, 24, 5 },		// 132 bits per transform
+			{ 8, 4, 24 },		// 132 bits per transform
+			{ 8, 13, 23 },		// 132 bits per transform
+			{ 8, 14, 22 },		// 132 bits per transform
+			{ 8, 15, 21 },		// 132 bits per transform
+			{ 8, 16, 20 },		// 132 bits per transform
+			{ 8, 17, 19 },		// 132 bits per transform
+			{ 8, 18, 18 },		// 132 bits per transform
+			{ 8, 19, 17 },		// 132 bits per transform
+			{ 8, 20, 16 },		// 132 bits per transform
+			{ 8, 21, 15 },		// 132 bits per transform
+			{ 8, 22, 14 },		// 132 bits per transform
+			{ 8, 23, 13 },		// 132 bits per transform
+			{ 8, 24, 4 },		// 132 bits per transform
+			{ 9, 3, 24 },		// 132 bits per transform
+			{ 9, 12, 23 },		// 132 bits per transform
+			{ 9, 13, 22 },		// 132 bits per transform
+			{ 9, 14, 21 },		// 132 bits per transform
+			{ 9, 15, 20 },		// 132 bits per transform
+			{ 9, 16, 19 },		// 132 bits per transform
+			{ 9, 17, 18 },		// 132 bits per transform
+			{ 9, 18, 17 },		// 132 bits per transform
+			{ 9, 19, 16 },		// 132 bits per transform
+			{ 9, 20, 15 },		// 132 bits per transform
+			{ 9, 21, 14 },		// 132 bits per transform
+			{ 9, 22, 13 },		// 132 bits per transform
+			{ 9, 23, 12 },		// 132 bits per transform
+			{ 9, 24, 3 },		// 132 bits per transform
+			{ 10, 2, 24 },		// 132 bits per transform
+			{ 10, 11, 23 },		// 132 bits per transform
+			{ 10, 12, 22 },		// 132 bits per transform
+			{ 10, 13, 21 },		// 132 bits per transform
+			{ 10, 14, 20 },		// 132 bits per transform
+			{ 10, 15, 19 },		// 132 bits per transform
+			{ 10, 16, 18 },		// 132 bits per transform
+			{ 10, 17, 17 },		// 132 bits per transform
+			{ 10, 18, 16 },		// 132 bits per transform
+			{ 10, 19, 15 },		// 132 bits per transform
+			{ 10, 20, 14 },		// 132 bits per transform
+			{ 10, 21, 13 },		// 132 bits per transform
+			{ 10, 22, 12 },		// 132 bits per transform
+			{ 10, 23, 11 },		// 132 bits per transform
+			{ 10, 24, 2 },		// 132 bits per transform
+			{ 11, 1, 24 },		// 132 bits per transform
+			{ 11, 10, 23 },		// 132 bits per transform
+			{ 11, 11, 22 },		// 132 bits per transform
+			{ 11, 12, 21 },		// 132 bits per transform
+			{ 11, 13, 20 },		// 132 bits per transform
+			{ 11, 14, 19 },		// 132 bits per transform
+			{ 11, 15, 18 },		// 132 bits per transform
+			{ 11, 16, 17 },		// 132 bits per transform
+			{ 11, 17, 16 },		// 132 bits per transform
+			{ 11, 18, 15 },		// 132 bits per transform
+			{ 11, 19, 14 },		// 132 bits per transform
+			{ 11, 20, 13 },		// 132 bits per transform
+			{ 11, 21, 12 },		// 132 bits per transform
+			{ 11, 22, 11 },		// 132 bits per transform
+			{ 11, 23, 10 },		// 132 bits per transform
+			{ 11, 24, 1 },		// 132 bits per transform
+			{ 12, 0, 24 },		// 132 bits per transform
+			{ 12, 9, 23 },		// 132 bits per transform
+			{ 12, 10, 22 },		// 132 bits per transform
+			{ 12, 11, 21 },		// 132 bits per transform
+			{ 12, 12, 20 },		// 132 bits per transform
+			{ 12, 13, 19 },		// 132 bits per transform
+			{ 12, 14, 18 },		// 132 bits per transform
+			{ 12, 15, 17 },		// 132 bits per transform
+			{ 12, 16, 16 },		// 132 bits per transform
+			{ 12, 17, 15 },		// 132 bits per transform
+			{ 12, 18, 14 },		// 132 bits per transform
+			{ 12, 19, 13 },		// 132 bits per transform
+			{ 12, 20, 12 },		// 132 bits per transform
+			{ 12, 21, 11 },		// 132 bits per transform
+			{ 12, 22, 10 },		// 132 bits per transform
+			{ 12, 23, 9 },		// 132 bits per transform
+			{ 12, 24, 0 },		// 132 bits per transform
+			{ 13, 8, 23 },		// 132 bits per transform
+			{ 13, 9, 22 },		// 132 bits per transform
+			{ 13, 10, 21 },		// 132 bits per transform
+			{ 13, 11, 20 },		// 132 bits per transform
+			{ 13, 12, 19 },		// 132 bits per transform
+			{ 13, 13, 18 },		// 132 bits per transform
+			{ 13, 14, 17 },		// 132 bits per transform
+			{ 13, 15, 16 },		// 132 bits per transform
+			{ 13, 16, 15 },		// 132 bits per transform
+			{ 13, 17, 14 },		// 132 bits per transform
+			{ 13, 18, 13 },		// 132 bits per transform
+			{ 13, 19, 12 },		// 132 bits per transform
+			{ 13, 20, 11 },		// 132 bits per transform
+			{ 13, 21, 10 },		// 132 bits per transform
+			{ 13, 22, 9 },		// 132 bits per transform
+			{ 13, 23, 8 },		// 132 bits per transform
+			{ 14, 7, 23 },		// 132 bits per transform
+			{ 14, 8, 22 },		// 132 bits per transform
+			{ 14, 9, 21 },		// 132 bits per transform
+			{ 14, 10, 20 },		// 132 bits per transform
+			{ 14, 11, 19 },		// 132 bits per transform
+			{ 14, 12, 18 },		// 132 bits per transform
+			{ 14, 13, 17 },		// 132 bits per transform
+			{ 14, 14, 16 },		// 132 bits per transform
+			{ 14, 15, 15 },		// 132 bits per transform
+			{ 14, 16, 14 },		// 132 bits per transform
+			{ 14, 17, 13 },		// 132 bits per transform
+			{ 14, 18, 12 },		// 132 bits per transform
+			{ 14, 19, 11 },		// 132 bits per transform
+			{ 14, 20, 10 },		// 132 bits per transform
+			{ 14, 21, 9 },		// 132 bits per transform
+			{ 14, 22, 8 },		// 132 bits per transform
+			{ 14, 23, 7 },		// 132 bits per transform
+			{ 15, 6, 23 },		// 132 bits per transform
+			{ 15, 7, 22 },		// 132 bits per transform
+			{ 15, 8, 21 },		// 132 bits per transform
+			{ 15, 9, 20 },		// 132 bits per transform
+			{ 15, 10, 19 },		// 132 bits per transform
+			{ 15, 11, 18 },		// 132 bits per transform
+			{ 15, 12, 17 },		// 132 bits per transform
+			{ 15, 13, 16 },		// 132 bits per transform
+			{ 15, 14, 15 },		// 132 bits per transform
+			{ 15, 15, 14 },		// 132 bits per transform
+			{ 15, 16, 13 },		// 132 bits per transform
+			{ 15, 17, 12 },		// 132 bits per transform
+			{ 15, 18, 11 },		// 132 bits per transform
+			{ 15, 19, 10 },		// 132 bits per transform
+			{ 15, 20, 9 },		// 132 bits per transform
+			{ 15, 21, 8 },		// 132 bits per transform
+			{ 15, 22, 7 },		// 132 bits per transform
+			{ 15, 23, 6 },		// 132 bits per transform
+			{ 16, 5, 23 },		// 132 bits per transform
+			{ 16, 6, 22 },		// 132 bits per transform
+			{ 16, 7, 21 },		// 132 bits per transform
+			{ 16, 8, 20 },		// 132 bits per transform
+			{ 16, 9, 19 },		// 132 bits per transform
+			{ 16, 10, 18 },		// 132 bits per transform
+			{ 16, 11, 17 },		// 132 bits per transform
+			{ 16, 12, 16 },		// 132 bits per transform
+			{ 16, 13, 15 },		// 132 bits per transform
+			{ 16, 14, 14 },		// 132 bits per transform
+			{ 16, 15, 13 },		// 132 bits per transform
+			{ 16, 16, 12 },		// 132 bits per transform
+			{ 16, 17, 11 },		// 132 bits per transform
+			{ 16, 18, 10 },		// 132 bits per transform
+			{ 16, 19, 9 },		// 132 bits per transform
+			{ 16, 20, 8 },		// 132 bits per transform
+			{ 16, 21, 7 },		// 132 bits per transform
+			{ 16, 22, 6 },		// 132 bits per transform
+			{ 16, 23, 5 },		// 132 bits per transform
+			{ 17, 4, 23 },		// 132 bits per transform
+			{ 17, 5, 22 },		// 132 bits per transform
+			{ 17, 6, 21 },		// 132 bits per transform
+			{ 17, 7, 20 },		// 132 bits per transform
+			{ 17, 8, 19 },		// 132 bits per transform
+			{ 17, 9, 18 },		// 132 bits per transform
+			{ 17, 10, 17 },		// 132 bits per transform
+			{ 17, 11, 16 },		// 132 bits per transform
+			{ 17, 12, 15 },		// 132 bits per transform
+			{ 17, 13, 14 },		// 132 bits per transform
+			{ 17, 14, 13 },		// 132 bits per transform
+			{ 17, 15, 12 },		// 132 bits per transform
+			{ 17, 16, 11 },		// 132 bits per transform
+			{ 17, 17, 10 },		// 132 bits per transform
+			{ 17, 18, 9 },		// 132 bits per transform
+			{ 17, 19, 8 },		// 132 bits per transform
+			{ 17, 20, 7 },		// 132 bits per transform
+			{ 17, 21, 6 },		// 132 bits per transform
+			{ 17, 22, 5 },		// 132 bits per transform
+			{ 17, 23, 4 },		// 132 bits per transform
+			{ 18, 3, 23 },		// 132 bits per transform
+			{ 18, 4, 22 },		// 132 bits per transform
+			{ 18, 5, 21 },		// 132 bits per transform
+			{ 18, 6, 20 },		// 132 bits per transform
+			{ 18, 7, 19 },		// 132 bits per transform
+			{ 18, 8, 18 },		// 132 bits per transform
+			{ 18, 9, 17 },		// 132 bits per transform
+			{ 18, 10, 16 },		// 132 bits per transform
+			{ 18, 11, 15 },		// 132 bits per transform
+			{ 18, 12, 14 },		// 132 bits per transform
+			{ 18, 13, 13 },		// 132 bits per transform
+			{ 18, 14, 12 },		// 132 bits per transform
+			{ 18, 15, 11 },		// 132 bits per transform
+			{ 18, 16, 10 },		// 132 bits per transform
+			{ 18, 17, 9 },		// 132 bits per transform
+			{ 18, 18, 8 },		// 132 bits per transform
+			{ 18, 19, 7 },		// 132 bits per transform
+			{ 18, 20, 6 },		// 132 bits per transform
+			{ 18, 21, 5 },		// 132 bits per transform
+			{ 18, 22, 4 },		// 132 bits per transform
+			{ 18, 23, 3 },		// 132 bits per transform
+			{ 19, 2, 23 },		// 132 bits per transform
+			{ 19, 3, 22 },		// 132 bits per transform
+			{ 19, 4, 21 },		// 132 bits per transform
+			{ 19, 5, 20 },		// 132 bits per transform
+			{ 19, 6, 19 },		// 132 bits per transform
+			{ 19, 7, 18 },		// 132 bits per transform
+			{ 19, 8, 17 },		// 132 bits per transform
+			{ 19, 9, 16 },		// 132 bits per transform
+			{ 19, 10, 15 },		// 132 bits per transform
+			{ 19, 11, 14 },		// 132 bits per transform
+			{ 19, 12, 13 },		// 132 bits per transform
+			{ 19, 13, 12 },		// 132 bits per transform
+			{ 19, 14, 11 },		// 132 bits per transform
+			{ 19, 15, 10 },		// 132 bits per transform
+			{ 19, 16, 9 },		// 132 bits per transform
+			{ 19, 17, 8 },		// 132 bits per transform
+			{ 19, 18, 7 },		// 132 bits per transform
+			{ 19, 19, 6 },		// 132 bits per transform
+			{ 19, 20, 5 },		// 132 bits per transform
+			{ 19, 21, 4 },		// 132 bits per transform
+			{ 19, 22, 3 },		// 132 bits per transform
+			{ 19, 23, 2 },		// 132 bits per transform
+			{ 20, 1, 23 },		// 132 bits per transform
+			{ 20, 2, 22 },		// 132 bits per transform
+			{ 20, 3, 21 },		// 132 bits per transform
+			{ 20, 4, 20 },		// 132 bits per transform
+			{ 20, 5, 19 },		// 132 bits per transform
+			{ 20, 6, 18 },		// 132 bits per transform
+			{ 20, 7, 17 },		// 132 bits per transform
+			{ 20, 8, 16 },		// 132 bits per transform
+			{ 20, 9, 15 },		// 132 bits per transform
+			{ 20, 10, 14 },		// 132 bits per transform
+			{ 20, 11, 13 },		// 132 bits per transform
+			{ 20, 12, 12 },		// 132 bits per transform
+			{ 20, 13, 11 },		// 132 bits per transform
+			{ 20, 14, 10 },		// 132 bits per transform
+			{ 20, 15, 9 },		// 132 bits per transform
+			{ 20, 16, 8 },		// 132 bits per transform
+			{ 20, 17, 7 },		// 132 bits per transform
+			{ 20, 18, 6 },		// 132 bits per transform
+			{ 20, 19, 5 },		// 132 bits per transform
+			{ 20, 20, 4 },		// 132 bits per transform
+			{ 20, 21, 3 },		// 132 bits per transform
+			{ 20, 22, 2 },		// 132 bits per transform
+			{ 20, 23, 1 },		// 132 bits per transform
+			{ 21, 0, 23 },		// 132 bits per transform
+			{ 21, 1, 22 },		// 132 bits per transform
+			{ 21, 2, 21 },		// 132 bits per transform
+			{ 21, 3, 20 },		// 132 bits per transform
+			{ 21, 4, 19 },		// 132 bits per transform
+			{ 21, 5, 18 },		// 132 bits per transform
+			{ 21, 6, 17 },		// 132 bits per transform
+			{ 21, 7, 16 },		// 132 bits per transform
+			{ 21, 8, 15 },		// 132 bits per transform
+			{ 21, 9, 14 },		// 132 bits per transform
+			{ 21, 10, 13 },		// 132 bits per transform
+			{ 21, 11, 12 },		// 132 bits per transform
+			{ 21, 12, 11 },		// 132 bits per transform
+			{ 21, 13, 10 },		// 132 bits per transform
+			{ 21, 14, 9 },		// 132 bits per transform
+			{ 21, 15, 8 },		// 132 bits per transform
+			{ 21, 16, 7 },		// 132 bits per transform
+			{ 21, 17, 6 },		// 132 bits per transform
+			{ 21, 18, 5 },		// 132 bits per transform
+			{ 21, 19, 4 },		// 132 bits per transform
+			{ 21, 20, 3 },		// 132 bits per transform
+			{ 21, 21, 2 },		// 132 bits per transform
+			{ 21, 22, 1 },		// 132 bits per transform
+			{ 21, 23, 0 },		// 132 bits per transform
+			{ 22, 0, 22 },		// 132 bits per transform
+			{ 22, 1, 21 },		// 132 bits per transform
+			{ 22, 2, 20 },		// 132 bits per transform
+			{ 22, 3, 19 },		// 132 bits per transform
+			{ 22, 4, 18 },		// 132 bits per transform
+			{ 22, 5, 17 },		// 132 bits per transform
+			{ 22, 6, 16 },		// 132 bits per transform
+			{ 22, 7, 15 },		// 132 bits per transform
+			{ 22, 8, 14 },		// 132 bits per transform
+			{ 22, 9, 13 },		// 132 bits per transform
+			{ 22, 10, 12 },		// 132 bits per transform
+			{ 22, 11, 11 },		// 132 bits per transform
+			{ 22, 12, 10 },		// 132 bits per transform
+			{ 22, 13, 9 },		// 132 bits per transform
+			{ 22, 14, 8 },		// 132 bits per transform
+			{ 22, 15, 7 },		// 132 bits per transform
+			{ 22, 16, 6 },		// 132 bits per transform
+			{ 22, 17, 5 },		// 132 bits per transform
+			{ 22, 18, 4 },		// 132 bits per transform
+			{ 22, 19, 3 },		// 132 bits per transform
+			{ 22, 20, 2 },		// 132 bits per transform
+			{ 22, 21, 1 },		// 132 bits per transform
+			{ 22, 22, 0 },		// 132 bits per transform
+			{ 23, 0, 21 },		// 132 bits per transform
+			{ 23, 1, 20 },		// 132 bits per transform
+			{ 23, 2, 19 },		// 132 bits per transform
+			{ 23, 3, 18 },		// 132 bits per transform
+			{ 23, 4, 17 },		// 132 bits per transform
+			{ 23, 5, 16 },		// 132 bits per transform
+			{ 23, 6, 15 },		// 132 bits per transform
+			{ 23, 7, 14 },		// 132 bits per transform
+			{ 23, 8, 13 },		// 132 bits per transform
+			{ 23, 9, 12 },		// 132 bits per transform
+			{ 23, 10, 11 },		// 132 bits per transform
+			{ 23, 11, 10 },		// 132 bits per transform
+			{ 23, 12, 9 },		// 132 bits per transform
+			{ 23, 13, 8 },		// 132 bits per transform
+			{ 23, 14, 7 },		// 132 bits per transform
+			{ 23, 15, 6 },		// 132 bits per transform
+			{ 23, 16, 5 },		// 132 bits per transform
+			{ 23, 17, 4 },		// 132 bits per transform
+			{ 23, 18, 3 },		// 132 bits per transform
+			{ 23, 19, 2 },		// 132 bits per transform
+			{ 23, 20, 1 },		// 132 bits per transform
+			{ 23, 21, 0 },		// 132 bits per transform
+			{ 24, 0, 12 },		// 132 bits per transform
+			{ 24, 1, 11 },		// 132 bits per transform
+			{ 24, 2, 10 },		// 132 bits per transform
+			{ 24, 3, 9 },		// 132 bits per transform
+			{ 24, 4, 8 },		// 132 bits per transform
+			{ 24, 5, 7 },		// 132 bits per transform
+			{ 24, 6, 6 },		// 132 bits per transform
+			{ 24, 7, 5 },		// 132 bits per transform
+			{ 24, 8, 4 },		// 132 bits per transform
+			{ 24, 9, 3 },		// 132 bits per transform
+			{ 24, 10, 2 },		// 132 bits per transform
+			{ 24, 11, 1 },		// 132 bits per transform
+			{ 24, 12, 0 },		// 132 bits per transform
+			{ 0, 13, 24 },		// 135 bits per transform
+			{ 0, 22, 23 },		// 135 bits per transform
+			{ 0, 23, 22 },		// 135 bits per transform
+			{ 0, 24, 13 },		// 135 bits per transform
+			{ 1, 12, 24 },		// 135 bits per transform
+			{ 1, 21, 23 },		// 135 bits per transform
+			{ 1, 22, 22 },		// 135 bits per transform
+			{ 1, 23, 21 },		// 135 bits per transform
+			{ 1, 24, 12 },		// 135 bits per transform
+			{ 2, 11, 24 },		// 135 bits per transform
+			{ 2, 20, 23 },		// 135 bits per transform
+			{ 2, 21, 22 },		// 135 bits per transform
+			{ 2, 22, 21 },		// 135 bits per transform
+			{ 2, 23, 20 },		// 135 bits per transform
+			{ 2, 24, 11 },		// 135 bits per transform
+			{ 3, 10, 24 },		// 135 bits per transform
+			{ 3, 19, 23 },		// 135 bits per transform
+			{ 3, 20, 22 },		// 135 bits per transform
+			{ 3, 21, 21 },		// 135 bits per transform
+			{ 3, 22, 20 },		// 135 bits per transform
+			{ 3, 23, 19 },		// 135 bits per transform
+			{ 3, 24, 10 },		// 135 bits per transform
+			{ 4, 9, 24 },		// 135 bits per transform
+			{ 4, 18, 23 },		// 135 bits per transform
+			{ 4, 19, 22 },		// 135 bits per transform
+			{ 4, 20, 21 },		// 135 bits per transform
+			{ 4, 21, 20 },		// 135 bits per transform
+			{ 4, 22, 19 },		// 135 bits per transform
+			{ 4, 23, 18 },		// 135 bits per transform
+			{ 4, 24, 9 },		// 135 bits per transform
+			{ 5, 8, 24 },		// 135 bits per transform
+			{ 5, 17, 23 },		// 135 bits per transform
+			{ 5, 18, 22 },		// 135 bits per transform
+			{ 5, 19, 21 },		// 135 bits per transform
+			{ 5, 20, 20 },		// 135 bits per transform
+			{ 5, 21, 19 },		// 135 bits per transform
+			{ 5, 22, 18 },		// 135 bits per transform
+			{ 5, 23, 17 },		// 135 bits per transform
+			{ 5, 24, 8 },		// 135 bits per transform
+			{ 6, 7, 24 },		// 135 bits per transform
+			{ 6, 16, 23 },		// 135 bits per transform
+			{ 6, 17, 22 },		// 135 bits per transform
+			{ 6, 18, 21 },		// 135 bits per transform
+			{ 6, 19, 20 },		// 135 bits per transform
+			{ 6, 20, 19 },		// 135 bits per transform
+			{ 6, 21, 18 },		// 135 bits per transform
+			{ 6, 22, 17 },		// 135 bits per transform
+			{ 6, 23, 16 },		// 135 bits per transform
+			{ 6, 24, 7 },		// 135 bits per transform
+			{ 7, 6, 24 },		// 135 bits per transform
+			{ 7, 15, 23 },		// 135 bits per transform
+			{ 7, 16, 22 },		// 135 bits per transform
+			{ 7, 17, 21 },		// 135 bits per transform
+			{ 7, 18, 20 },		// 135 bits per transform
+			{ 7, 19, 19 },		// 135 bits per transform
+			{ 7, 20, 18 },		// 135 bits per transform
+			{ 7, 21, 17 },		// 135 bits per transform
+			{ 7, 22, 16 },		// 135 bits per transform
+			{ 7, 23, 15 },		// 135 bits per transform
+			{ 7, 24, 6 },		// 135 bits per transform
+			{ 8, 5, 24 },		// 135 bits per transform
+			{ 8, 14, 23 },		// 135 bits per transform
+			{ 8, 15, 22 },		// 135 bits per transform
+			{ 8, 16, 21 },		// 135 bits per transform
+			{ 8, 17, 20 },		// 135 bits per transform
+			{ 8, 18, 19 },		// 135 bits per transform
+			{ 8, 19, 18 },		// 135 bits per transform
+			{ 8, 20, 17 },		// 135 bits per transform
+			{ 8, 21, 16 },		// 135 bits per transform
+			{ 8, 22, 15 },		// 135 bits per transform
+			{ 8, 23, 14 },		// 135 bits per transform
+			{ 8, 24, 5 },		// 135 bits per transform
+			{ 9, 4, 24 },		// 135 bits per transform
+			{ 9, 13, 23 },		// 135 bits per transform
+			{ 9, 14, 22 },		// 135 bits per transform
+			{ 9, 15, 21 },		// 135 bits per transform
+			{ 9, 16, 20 },		// 135 bits per transform
+			{ 9, 17, 19 },		// 135 bits per transform
+			{ 9, 18, 18 },		// 135 bits per transform
+			{ 9, 19, 17 },		// 135 bits per transform
+			{ 9, 20, 16 },		// 135 bits per transform
+			{ 9, 21, 15 },		// 135 bits per transform
+			{ 9, 22, 14 },		// 135 bits per transform
+			{ 9, 23, 13 },		// 135 bits per transform
+			{ 9, 24, 4 },		// 135 bits per transform
+			{ 10, 3, 24 },		// 135 bits per transform
+			{ 10, 12, 23 },		// 135 bits per transform
+			{ 10, 13, 22 },		// 135 bits per transform
+			{ 10, 14, 21 },		// 135 bits per transform
+			{ 10, 15, 20 },		// 135 bits per transform
+			{ 10, 16, 19 },		// 135 bits per transform
+			{ 10, 17, 18 },		// 135 bits per transform
+			{ 10, 18, 17 },		// 135 bits per transform
+			{ 10, 19, 16 },		// 135 bits per transform
+			{ 10, 20, 15 },		// 135 bits per transform
+			{ 10, 21, 14 },		// 135 bits per transform
+			{ 10, 22, 13 },		// 135 bits per transform
+			{ 10, 23, 12 },		// 135 bits per transform
+			{ 10, 24, 3 },		// 135 bits per transform
+			{ 11, 2, 24 },		// 135 bits per transform
+			{ 11, 11, 23 },		// 135 bits per transform
+			{ 11, 12, 22 },		// 135 bits per transform
+			{ 11, 13, 21 },		// 135 bits per transform
+			{ 11, 14, 20 },		// 135 bits per transform
+			{ 11, 15, 19 },		// 135 bits per transform
+			{ 11, 16, 18 },		// 135 bits per transform
+			{ 11, 17, 17 },		// 135 bits per transform
+			{ 11, 18, 16 },		// 135 bits per transform
+			{ 11, 19, 15 },		// 135 bits per transform
+			{ 11, 20, 14 },		// 135 bits per transform
+			{ 11, 21, 13 },		// 135 bits per transform
+			{ 11, 22, 12 },		// 135 bits per transform
+			{ 11, 23, 11 },		// 135 bits per transform
+			{ 11, 24, 2 },		// 135 bits per transform
+			{ 12, 1, 24 },		// 135 bits per transform
+			{ 12, 10, 23 },		// 135 bits per transform
+			{ 12, 11, 22 },		// 135 bits per transform
+			{ 12, 12, 21 },		// 135 bits per transform
+			{ 12, 13, 20 },		// 135 bits per transform
+			{ 12, 14, 19 },		// 135 bits per transform
+			{ 12, 15, 18 },		// 135 bits per transform
+			{ 12, 16, 17 },		// 135 bits per transform
+			{ 12, 17, 16 },		// 135 bits per transform
+			{ 12, 18, 15 },		// 135 bits per transform
+			{ 12, 19, 14 },		// 135 bits per transform
+			{ 12, 20, 13 },		// 135 bits per transform
+			{ 12, 21, 12 },		// 135 bits per transform
+			{ 12, 22, 11 },		// 135 bits per transform
+			{ 12, 23, 10 },		// 135 bits per transform
+			{ 12, 24, 1 },		// 135 bits per transform
+			{ 13, 0, 24 },		// 135 bits per transform
+			{ 13, 9, 23 },		// 135 bits per transform
+			{ 13, 10, 22 },		// 135 bits per transform
+			{ 13, 11, 21 },		// 135 bits per transform
+			{ 13, 12, 20 },		// 135 bits per transform
+			{ 13, 13, 19 },		// 135 bits per transform
+			{ 13, 14, 18 },		// 135 bits per transform
+			{ 13, 15, 17 },		// 135 bits per transform
+			{ 13, 16, 16 },		// 135 bits per transform
+			{ 13, 17, 15 },		// 135 bits per transform
+			{ 13, 18, 14 },		// 135 bits per transform
+			{ 13, 19, 13 },		// 135 bits per transform
+			{ 13, 20, 12 },		// 135 bits per transform
+			{ 13, 21, 11 },		// 135 bits per transform
+			{ 13, 22, 10 },		// 135 bits per transform
+			{ 13, 23, 9 },		// 135 bits per transform
+			{ 13, 24, 0 },		// 135 bits per transform
+			{ 14, 8, 23 },		// 135 bits per transform
+			{ 14, 9, 22 },		// 135 bits per transform
+			{ 14, 10, 21 },		// 135 bits per transform
+			{ 14, 11, 20 },		// 135 bits per transform
+			{ 14, 12, 19 },		// 135 bits per transform
+			{ 14, 13, 18 },		// 135 bits per transform
+			{ 14, 14, 17 },		// 135 bits per transform
+			{ 14, 15, 16 },		// 135 bits per transform
+			{ 14, 16, 15 },		// 135 bits per transform
+			{ 14, 17, 14 },		// 135 bits per transform
+			{ 14, 18, 13 },		// 135 bits per transform
+			{ 14, 19, 12 },		// 135 bits per transform
+			{ 14, 20, 11 },		// 135 bits per transform
+			{ 14, 21, 10 },		// 135 bits per transform
+			{ 14, 22, 9 },		// 135 bits per transform
+			{ 14, 23, 8 },		// 135 bits per transform
+			{ 15, 7, 23 },		// 135 bits per transform
+			{ 15, 8, 22 },		// 135 bits per transform
+			{ 15, 9, 21 },		// 135 bits per transform
+			{ 15, 10, 20 },		// 135 bits per transform
+			{ 15, 11, 19 },		// 135 bits per transform
+			{ 15, 12, 18 },		// 135 bits per transform
+			{ 15, 13, 17 },		// 135 bits per transform
+			{ 15, 14, 16 },		// 135 bits per transform
+			{ 15, 15, 15 },		// 135 bits per transform
+			{ 15, 16, 14 },		// 135 bits per transform
+			{ 15, 17, 13 },		// 135 bits per transform
+			{ 15, 18, 12 },		// 135 bits per transform
+			{ 15, 19, 11 },		// 135 bits per transform
+			{ 15, 20, 10 },		// 135 bits per transform
+			{ 15, 21, 9 },		// 135 bits per transform
+			{ 15, 22, 8 },		// 135 bits per transform
+			{ 15, 23, 7 },		// 135 bits per transform
+			{ 16, 6, 23 },		// 135 bits per transform
+			{ 16, 7, 22 },		// 135 bits per transform
+			{ 16, 8, 21 },		// 135 bits per transform
+			{ 16, 9, 20 },		// 135 bits per transform
+			{ 16, 10, 19 },		// 135 bits per transform
+			{ 16, 11, 18 },		// 135 bits per transform
+			{ 16, 12, 17 },		// 135 bits per transform
+			{ 16, 13, 16 },		// 135 bits per transform
+			{ 16, 14, 15 },		// 135 bits per transform
+			{ 16, 15, 14 },		// 135 bits per transform
+			{ 16, 16, 13 },		// 135 bits per transform
+			{ 16, 17, 12 },		// 135 bits per transform
+			{ 16, 18, 11 },		// 135 bits per transform
+			{ 16, 19, 10 },		// 135 bits per transform
+			{ 16, 20, 9 },		// 135 bits per transform
+			{ 16, 21, 8 },		// 135 bits per transform
+			{ 16, 22, 7 },		// 135 bits per transform
+			{ 16, 23, 6 },		// 135 bits per transform
+			{ 17, 5, 23 },		// 135 bits per transform
+			{ 17, 6, 22 },		// 135 bits per transform
+			{ 17, 7, 21 },		// 135 bits per transform
+			{ 17, 8, 20 },		// 135 bits per transform
+			{ 17, 9, 19 },		// 135 bits per transform
+			{ 17, 10, 18 },		// 135 bits per transform
+			{ 17, 11, 17 },		// 135 bits per transform
+			{ 17, 12, 16 },		// 135 bits per transform
+			{ 17, 13, 15 },		// 135 bits per transform
+			{ 17, 14, 14 },		// 135 bits per transform
+			{ 17, 15, 13 },		// 135 bits per transform
+			{ 17, 16, 12 },		// 135 bits per transform
+			{ 17, 17, 11 },		// 135 bits per transform
+			{ 17, 18, 10 },		// 135 bits per transform
+			{ 17, 19, 9 },		// 135 bits per transform
+			{ 17, 20, 8 },		// 135 bits per transform
+			{ 17, 21, 7 },		// 135 bits per transform
+			{ 17, 22, 6 },		// 135 bits per transform
+			{ 17, 23, 5 },		// 135 bits per transform
+			{ 18, 4, 23 },		// 135 bits per transform
+			{ 18, 5, 22 },		// 135 bits per transform
+			{ 18, 6, 21 },		// 135 bits per transform
+			{ 18, 7, 20 },		// 135 bits per transform
+			{ 18, 8, 19 },		// 135 bits per transform
+			{ 18, 9, 18 },		// 135 bits per transform
+			{ 18, 10, 17 },		// 135 bits per transform
+			{ 18, 11, 16 },		// 135 bits per transform
+			{ 18, 12, 15 },		// 135 bits per transform
+			{ 18, 13, 14 },		// 135 bits per transform
+			{ 18, 14, 13 },		// 135 bits per transform
+			{ 18, 15, 12 },		// 135 bits per transform
+			{ 18, 16, 11 },		// 135 bits per transform
+			{ 18, 17, 10 },		// 135 bits per transform
+			{ 18, 18, 9 },		// 135 bits per transform
+			{ 18, 19, 8 },		// 135 bits per transform
+			{ 18, 20, 7 },		// 135 bits per transform
+			{ 18, 21, 6 },		// 135 bits per transform
+			{ 18, 22, 5 },		// 135 bits per transform
+			{ 18, 23, 4 },		// 135 bits per transform
+			{ 19, 3, 23 },		// 135 bits per transform
+			{ 19, 4, 22 },		// 135 bits per transform
+			{ 19, 5, 21 },		// 135 bits per transform
+			{ 19, 6, 20 },		// 135 bits per transform
+			{ 19, 7, 19 },		// 135 bits per transform
+			{ 19, 8, 18 },		// 135 bits per transform
+			{ 19, 9, 17 },		// 135 bits per transform
+			{ 19, 10, 16 },		// 135 bits per transform
+			{ 19, 11, 15 },		// 135 bits per transform
+			{ 19, 12, 14 },		// 135 bits per transform
+			{ 19, 13, 13 },		// 135 bits per transform
+			{ 19, 14, 12 },		// 135 bits per transform
+			{ 19, 15, 11 },		// 135 bits per transform
+			{ 19, 16, 10 },		// 135 bits per transform
+			{ 19, 17, 9 },		// 135 bits per transform
+			{ 19, 18, 8 },		// 135 bits per transform
+			{ 19, 19, 7 },		// 135 bits per transform
+			{ 19, 20, 6 },		// 135 bits per transform
+			{ 19, 21, 5 },		// 135 bits per transform
+			{ 19, 22, 4 },		// 135 bits per transform
+			{ 19, 23, 3 },		// 135 bits per transform
+			{ 20, 2, 23 },		// 135 bits per transform
+			{ 20, 3, 22 },		// 135 bits per transform
+			{ 20, 4, 21 },		// 135 bits per transform
+			{ 20, 5, 20 },		// 135 bits per transform
+			{ 20, 6, 19 },		// 135 bits per transform
+			{ 20, 7, 18 },		// 135 bits per transform
+			{ 20, 8, 17 },		// 135 bits per transform
+			{ 20, 9, 16 },		// 135 bits per transform
+			{ 20, 10, 15 },		// 135 bits per transform
+			{ 20, 11, 14 },		// 135 bits per transform
+			{ 20, 12, 13 },		// 135 bits per transform
+			{ 20, 13, 12 },		// 135 bits per transform
+			{ 20, 14, 11 },		// 135 bits per transform
+			{ 20, 15, 10 },		// 135 bits per transform
+			{ 20, 16, 9 },		// 135 bits per transform
+			{ 20, 17, 8 },		// 135 bits per transform
+			{ 20, 18, 7 },		// 135 bits per transform
+			{ 20, 19, 6 },		// 135 bits per transform
+			{ 20, 20, 5 },		// 135 bits per transform
+			{ 20, 21, 4 },		// 135 bits per transform
+			{ 20, 22, 3 },		// 135 bits per transform
+			{ 20, 23, 2 },		// 135 bits per transform
+			{ 21, 1, 23 },		// 135 bits per transform
+			{ 21, 2, 22 },		// 135 bits per transform
+			{ 21, 3, 21 },		// 135 bits per transform
+			{ 21, 4, 20 },		// 135 bits per transform
+			{ 21, 5, 19 },		// 135 bits per transform
+			{ 21, 6, 18 },		// 135 bits per transform
+			{ 21, 7, 17 },		// 135 bits per transform
+			{ 21, 8, 16 },		// 135 bits per transform
+			{ 21, 9, 15 },		// 135 bits per transform
+			{ 21, 10, 14 },		// 135 bits per transform
+			{ 21, 11, 13 },		// 135 bits per transform
+			{ 21, 12, 12 },		// 135 bits per transform
+			{ 21, 13, 11 },		// 135 bits per transform
+			{ 21, 14, 10 },		// 135 bits per transform
+			{ 21, 15, 9 },		// 135 bits per transform
+			{ 21, 16, 8 },		// 135 bits per transform
+			{ 21, 17, 7 },		// 135 bits per transform
+			{ 21, 18, 6 },		// 135 bits per transform
+			{ 21, 19, 5 },		// 135 bits per transform
+			{ 21, 20, 4 },		// 135 bits per transform
+			{ 21, 21, 3 },		// 135 bits per transform
+			{ 21, 22, 2 },		// 135 bits per transform
+			{ 21, 23, 1 },		// 135 bits per transform
+			{ 22, 0, 23 },		// 135 bits per transform
+			{ 22, 1, 22 },		// 135 bits per transform
+			{ 22, 2, 21 },		// 135 bits per transform
+			{ 22, 3, 20 },		// 135 bits per transform
+			{ 22, 4, 19 },		// 135 bits per transform
+			{ 22, 5, 18 },		// 135 bits per transform
+			{ 22, 6, 17 },		// 135 bits per transform
+			{ 22, 7, 16 },		// 135 bits per transform
+			{ 22, 8, 15 },		// 135 bits per transform
+			{ 22, 9, 14 },		// 135 bits per transform
+			{ 22, 10, 13 },		// 135 bits per transform
+			{ 22, 11, 12 },		// 135 bits per transform
+			{ 22, 12, 11 },		// 135 bits per transform
+			{ 22, 13, 10 },		// 135 bits per transform
+			{ 22, 14, 9 },		// 135 bits per transform
+			{ 22, 15, 8 },		// 135 bits per transform
+			{ 22, 16, 7 },		// 135 bits per transform
+			{ 22, 17, 6 },		// 135 bits per transform
+			{ 22, 18, 5 },		// 135 bits per transform
+			{ 22, 19, 4 },		// 135 bits per transform
+			{ 22, 20, 3 },		// 135 bits per transform
+			{ 22, 21, 2 },		// 135 bits per transform
+			{ 22, 22, 1 },		// 135 bits per transform
+			{ 22, 23, 0 },		// 135 bits per transform
+			{ 23, 0, 22 },		// 135 bits per transform
+			{ 23, 1, 21 },		// 135 bits per transform
+			{ 23, 2, 20 },		// 135 bits per transform
+			{ 23, 3, 19 },		// 135 bits per transform
+			{ 23, 4, 18 },		// 135 bits per transform
+			{ 23, 5, 17 },		// 135 bits per transform
+			{ 23, 6, 16 },		// 135 bits per transform
+			{ 23, 7, 15 },		// 135 bits per transform
+			{ 23, 8, 14 },		// 135 bits per transform
+			{ 23, 9, 13 },		// 135 bits per transform
+			{ 23, 10, 12 },		// 135 bits per transform
+			{ 23, 11, 11 },		// 135 bits per transform
+			{ 23, 12, 10 },		// 135 bits per transform
+			{ 23, 13, 9 },		// 135 bits per transform
+			{ 23, 14, 8 },		// 135 bits per transform
+			{ 23, 15, 7 },		// 135 bits per transform
+			{ 23, 16, 6 },		// 135 bits per transform
+			{ 23, 17, 5 },		// 135 bits per transform
+			{ 23, 18, 4 },		// 135 bits per transform
+			{ 23, 19, 3 },		// 135 bits per transform
+			{ 23, 20, 2 },		// 135 bits per transform
+			{ 23, 21, 1 },		// 135 bits per transform
+			{ 23, 22, 0 },		// 135 bits per transform
+			{ 24, 0, 13 },		// 135 bits per transform
+			{ 24, 1, 12 },		// 135 bits per transform
+			{ 24, 2, 11 },		// 135 bits per transform
+			{ 24, 3, 10 },		// 135 bits per transform
+			{ 24, 4, 9 },		// 135 bits per transform
+			{ 24, 5, 8 },		// 135 bits per transform
+			{ 24, 6, 7 },		// 135 bits per transform
+			{ 24, 7, 6 },		// 135 bits per transform
+			{ 24, 8, 5 },		// 135 bits per transform
+			{ 24, 9, 4 },		// 135 bits per transform
+			{ 24, 10, 3 },		// 135 bits per transform
+			{ 24, 11, 2 },		// 135 bits per transform
+			{ 24, 12, 1 },		// 135 bits per transform
+			{ 24, 13, 0 },		// 135 bits per transform
+			{ 0, 14, 24 },		// 138 bits per transform
+			{ 0, 23, 23 },		// 138 bits per transform
+			{ 0, 24, 14 },		// 138 bits per transform
+			{ 1, 13, 24 },		// 138 bits per transform
+			{ 1, 22, 23 },		// 138 bits per transform
+			{ 1, 23, 22 },		// 138 bits per transform
+			{ 1, 24, 13 },		// 138 bits per transform
+			{ 2, 12, 24 },		// 138 bits per transform
+			{ 2, 21, 23 },		// 138 bits per transform
+			{ 2, 22, 22 },		// 138 bits per transform
+			{ 2, 23, 21 },		// 138 bits per transform
+			{ 2, 24, 12 },		// 138 bits per transform
+			{ 3, 11, 24 },		// 138 bits per transform
+			{ 3, 20, 23 },		// 138 bits per transform
+			{ 3, 21, 22 },		// 138 bits per transform
+			{ 3, 22, 21 },		// 138 bits per transform
+			{ 3, 23, 20 },		// 138 bits per transform
+			{ 3, 24, 11 },		// 138 bits per transform
+			{ 4, 10, 24 },		// 138 bits per transform
+			{ 4, 19, 23 },		// 138 bits per transform
+			{ 4, 20, 22 },		// 138 bits per transform
+			{ 4, 21, 21 },		// 138 bits per transform
+			{ 4, 22, 20 },		// 138 bits per transform
+			{ 4, 23, 19 },		// 138 bits per transform
+			{ 4, 24, 10 },		// 138 bits per transform
+			{ 5, 9, 24 },		// 138 bits per transform
+			{ 5, 18, 23 },		// 138 bits per transform
+			{ 5, 19, 22 },		// 138 bits per transform
+			{ 5, 20, 21 },		// 138 bits per transform
+			{ 5, 21, 20 },		// 138 bits per transform
+			{ 5, 22, 19 },		// 138 bits per transform
+			{ 5, 23, 18 },		// 138 bits per transform
+			{ 5, 24, 9 },		// 138 bits per transform
+			{ 6, 8, 24 },		// 138 bits per transform
+			{ 6, 17, 23 },		// 138 bits per transform
+			{ 6, 18, 22 },		// 138 bits per transform
+			{ 6, 19, 21 },		// 138 bits per transform
+			{ 6, 20, 20 },		// 138 bits per transform
+			{ 6, 21, 19 },		// 138 bits per transform
+			{ 6, 22, 18 },		// 138 bits per transform
+			{ 6, 23, 17 },		// 138 bits per transform
+			{ 6, 24, 8 },		// 138 bits per transform
+			{ 7, 7, 24 },		// 138 bits per transform
+			{ 7, 16, 23 },		// 138 bits per transform
+			{ 7, 17, 22 },		// 138 bits per transform
+			{ 7, 18, 21 },		// 138 bits per transform
+			{ 7, 19, 20 },		// 138 bits per transform
+			{ 7, 20, 19 },		// 138 bits per transform
+			{ 7, 21, 18 },		// 138 bits per transform
+			{ 7, 22, 17 },		// 138 bits per transform
+			{ 7, 23, 16 },		// 138 bits per transform
+			{ 7, 24, 7 },		// 138 bits per transform
+			{ 8, 6, 24 },		// 138 bits per transform
+			{ 8, 15, 23 },		// 138 bits per transform
+			{ 8, 16, 22 },		// 138 bits per transform
+			{ 8, 17, 21 },		// 138 bits per transform
+			{ 8, 18, 20 },		// 138 bits per transform
+			{ 8, 19, 19 },		// 138 bits per transform
+			{ 8, 20, 18 },		// 138 bits per transform
+			{ 8, 21, 17 },		// 138 bits per transform
+			{ 8, 22, 16 },		// 138 bits per transform
+			{ 8, 23, 15 },		// 138 bits per transform
+			{ 8, 24, 6 },		// 138 bits per transform
+			{ 9, 5, 24 },		// 138 bits per transform
+			{ 9, 14, 23 },		// 138 bits per transform
+			{ 9, 15, 22 },		// 138 bits per transform
+			{ 9, 16, 21 },		// 138 bits per transform
+			{ 9, 17, 20 },		// 138 bits per transform
+			{ 9, 18, 19 },		// 138 bits per transform
+			{ 9, 19, 18 },		// 138 bits per transform
+			{ 9, 20, 17 },		// 138 bits per transform
+			{ 9, 21, 16 },		// 138 bits per transform
+			{ 9, 22, 15 },		// 138 bits per transform
+			{ 9, 23, 14 },		// 138 bits per transform
+			{ 9, 24, 5 },		// 138 bits per transform
+			{ 10, 4, 24 },		// 138 bits per transform
+			{ 10, 13, 23 },		// 138 bits per transform
+			{ 10, 14, 22 },		// 138 bits per transform
+			{ 10, 15, 21 },		// 138 bits per transform
+			{ 10, 16, 20 },		// 138 bits per transform
+			{ 10, 17, 19 },		// 138 bits per transform
+			{ 10, 18, 18 },		// 138 bits per transform
+			{ 10, 19, 17 },		// 138 bits per transform
+			{ 10, 20, 16 },		// 138 bits per transform
+			{ 10, 21, 15 },		// 138 bits per transform
+			{ 10, 22, 14 },		// 138 bits per transform
+			{ 10, 23, 13 },		// 138 bits per transform
+			{ 10, 24, 4 },		// 138 bits per transform
+			{ 11, 3, 24 },		// 138 bits per transform
+			{ 11, 12, 23 },		// 138 bits per transform
+			{ 11, 13, 22 },		// 138 bits per transform
+			{ 11, 14, 21 },		// 138 bits per transform
+			{ 11, 15, 20 },		// 138 bits per transform
+			{ 11, 16, 19 },		// 138 bits per transform
+			{ 11, 17, 18 },		// 138 bits per transform
+			{ 11, 18, 17 },		// 138 bits per transform
+			{ 11, 19, 16 },		// 138 bits per transform
+			{ 11, 20, 15 },		// 138 bits per transform
+			{ 11, 21, 14 },		// 138 bits per transform
+			{ 11, 22, 13 },		// 138 bits per transform
+			{ 11, 23, 12 },		// 138 bits per transform
+			{ 11, 24, 3 },		// 138 bits per transform
+			{ 12, 2, 24 },		// 138 bits per transform
+			{ 12, 11, 23 },		// 138 bits per transform
+			{ 12, 12, 22 },		// 138 bits per transform
+			{ 12, 13, 21 },		// 138 bits per transform
+			{ 12, 14, 20 },		// 138 bits per transform
+			{ 12, 15, 19 },		// 138 bits per transform
+			{ 12, 16, 18 },		// 138 bits per transform
+			{ 12, 17, 17 },		// 138 bits per transform
+			{ 12, 18, 16 },		// 138 bits per transform
+			{ 12, 19, 15 },		// 138 bits per transform
+			{ 12, 20, 14 },		// 138 bits per transform
+			{ 12, 21, 13 },		// 138 bits per transform
+			{ 12, 22, 12 },		// 138 bits per transform
+			{ 12, 23, 11 },		// 138 bits per transform
+			{ 12, 24, 2 },		// 138 bits per transform
+			{ 13, 1, 24 },		// 138 bits per transform
+			{ 13, 10, 23 },		// 138 bits per transform
+			{ 13, 11, 22 },		// 138 bits per transform
+			{ 13, 12, 21 },		// 138 bits per transform
+			{ 13, 13, 20 },		// 138 bits per transform
+			{ 13, 14, 19 },		// 138 bits per transform
+			{ 13, 15, 18 },		// 138 bits per transform
+			{ 13, 16, 17 },		// 138 bits per transform
+			{ 13, 17, 16 },		// 138 bits per transform
+			{ 13, 18, 15 },		// 138 bits per transform
+			{ 13, 19, 14 },		// 138 bits per transform
+			{ 13, 20, 13 },		// 138 bits per transform
+			{ 13, 21, 12 },		// 138 bits per transform
+			{ 13, 22, 11 },		// 138 bits per transform
+			{ 13, 23, 10 },		// 138 bits per transform
+			{ 13, 24, 1 },		// 138 bits per transform
+			{ 14, 0, 24 },		// 138 bits per transform
+			{ 14, 9, 23 },		// 138 bits per transform
+			{ 14, 10, 22 },		// 138 bits per transform
+			{ 14, 11, 21 },		// 138 bits per transform
+			{ 14, 12, 20 },		// 138 bits per transform
+			{ 14, 13, 19 },		// 138 bits per transform
+			{ 14, 14, 18 },		// 138 bits per transform
+			{ 14, 15, 17 },		// 138 bits per transform
+			{ 14, 16, 16 },		// 138 bits per transform
+			{ 14, 17, 15 },		// 138 bits per transform
+			{ 14, 18, 14 },		// 138 bits per transform
+			{ 14, 19, 13 },		// 138 bits per transform
+			{ 14, 20, 12 },		// 138 bits per transform
+			{ 14, 21, 11 },		// 138 bits per transform
+			{ 14, 22, 10 },		// 138 bits per transform
+			{ 14, 23, 9 },		// 138 bits per transform
+			{ 14, 24, 0 },		// 138 bits per transform
+			{ 15, 8, 23 },		// 138 bits per transform
+			{ 15, 9, 22 },		// 138 bits per transform
+			{ 15, 10, 21 },		// 138 bits per transform
+			{ 15, 11, 20 },		// 138 bits per transform
+			{ 15, 12, 19 },		// 138 bits per transform
+			{ 15, 13, 18 },		// 138 bits per transform
+			{ 15, 14, 17 },		// 138 bits per transform
+			{ 15, 15, 16 },		// 138 bits per transform
+			{ 15, 16, 15 },		// 138 bits per transform
+			{ 15, 17, 14 },		// 138 bits per transform
+			{ 15, 18, 13 },		// 138 bits per transform
+			{ 15, 19, 12 },		// 138 bits per transform
+			{ 15, 20, 11 },		// 138 bits per transform
+			{ 15, 21, 10 },		// 138 bits per transform
+			{ 15, 22, 9 },		// 138 bits per transform
+			{ 15, 23, 8 },		// 138 bits per transform
+			{ 16, 7, 23 },		// 138 bits per transform
+			{ 16, 8, 22 },		// 138 bits per transform
+			{ 16, 9, 21 },		// 138 bits per transform
+			{ 16, 10, 20 },		// 138 bits per transform
+			{ 16, 11, 19 },		// 138 bits per transform
+			{ 16, 12, 18 },		// 138 bits per transform
+			{ 16, 13, 17 },		// 138 bits per transform
+			{ 16, 14, 16 },		// 138 bits per transform
+			{ 16, 15, 15 },		// 138 bits per transform
+			{ 16, 16, 14 },		// 138 bits per transform
+			{ 16, 17, 13 },		// 138 bits per transform
+			{ 16, 18, 12 },		// 138 bits per transform
+			{ 16, 19, 11 },		// 138 bits per transform
+			{ 16, 20, 10 },		// 138 bits per transform
+			{ 16, 21, 9 },		// 138 bits per transform
+			{ 16, 22, 8 },		// 138 bits per transform
+			{ 16, 23, 7 },		// 138 bits per transform
+			{ 17, 6, 23 },		// 138 bits per transform
+			{ 17, 7, 22 },		// 138 bits per transform
+			{ 17, 8, 21 },		// 138 bits per transform
+			{ 17, 9, 20 },		// 138 bits per transform
+			{ 17, 10, 19 },		// 138 bits per transform
+			{ 17, 11, 18 },		// 138 bits per transform
+			{ 17, 12, 17 },		// 138 bits per transform
+			{ 17, 13, 16 },		// 138 bits per transform
+			{ 17, 14, 15 },		// 138 bits per transform
+			{ 17, 15, 14 },		// 138 bits per transform
+			{ 17, 16, 13 },		// 138 bits per transform
+			{ 17, 17, 12 },		// 138 bits per transform
+			{ 17, 18, 11 },		// 138 bits per transform
+			{ 17, 19, 10 },		// 138 bits per transform
+			{ 17, 20, 9 },		// 138 bits per transform
+			{ 17, 21, 8 },		// 138 bits per transform
+			{ 17, 22, 7 },		// 138 bits per transform
+			{ 17, 23, 6 },		// 138 bits per transform
+			{ 18, 5, 23 },		// 138 bits per transform
+			{ 18, 6, 22 },		// 138 bits per transform
+			{ 18, 7, 21 },		// 138 bits per transform
+			{ 18, 8, 20 },		// 138 bits per transform
+			{ 18, 9, 19 },		// 138 bits per transform
+			{ 18, 10, 18 },		// 138 bits per transform
+			{ 18, 11, 17 },		// 138 bits per transform
+			{ 18, 12, 16 },		// 138 bits per transform
+			{ 18, 13, 15 },		// 138 bits per transform
+			{ 18, 14, 14 },		// 138 bits per transform
+			{ 18, 15, 13 },		// 138 bits per transform
+			{ 18, 16, 12 },		// 138 bits per transform
+			{ 18, 17, 11 },		// 138 bits per transform
+			{ 18, 18, 10 },		// 138 bits per transform
+			{ 18, 19, 9 },		// 138 bits per transform
+			{ 18, 20, 8 },		// 138 bits per transform
+			{ 18, 21, 7 },		// 138 bits per transform
+			{ 18, 22, 6 },		// 138 bits per transform
+			{ 18, 23, 5 },		// 138 bits per transform
+			{ 19, 4, 23 },		// 138 bits per transform
+			{ 19, 5, 22 },		// 138 bits per transform
+			{ 19, 6, 21 },		// 138 bits per transform
+			{ 19, 7, 20 },		// 138 bits per transform
+			{ 19, 8, 19 },		// 138 bits per transform
+			{ 19, 9, 18 },		// 138 bits per transform
+			{ 19, 10, 17 },		// 138 bits per transform
+			{ 19, 11, 16 },		// 138 bits per transform
+			{ 19, 12, 15 },		// 138 bits per transform
+			{ 19, 13, 14 },		// 138 bits per transform
+			{ 19, 14, 13 },		// 138 bits per transform
+			{ 19, 15, 12 },		// 138 bits per transform
+			{ 19, 16, 11 },		// 138 bits per transform
+			{ 19, 17, 10 },		// 138 bits per transform
+			{ 19, 18, 9 },		// 138 bits per transform
+			{ 19, 19, 8 },		// 138 bits per transform
+			{ 19, 20, 7 },		// 138 bits per transform
+			{ 19, 21, 6 },		// 138 bits per transform
+			{ 19, 22, 5 },		// 138 bits per transform
+			{ 19, 23, 4 },		// 138 bits per transform
+			{ 20, 3, 23 },		// 138 bits per transform
+			{ 20, 4, 22 },		// 138 bits per transform
+			{ 20, 5, 21 },		// 138 bits per transform
+			{ 20, 6, 20 },		// 138 bits per transform
+			{ 20, 7, 19 },		// 138 bits per transform
+			{ 20, 8, 18 },		// 138 bits per transform
+			{ 20, 9, 17 },		// 138 bits per transform
+			{ 20, 10, 16 },		// 138 bits per transform
+			{ 20, 11, 15 },		// 138 bits per transform
+			{ 20, 12, 14 },		// 138 bits per transform
+			{ 20, 13, 13 },		// 138 bits per transform
+			{ 20, 14, 12 },		// 138 bits per transform
+			{ 20, 15, 11 },		// 138 bits per transform
+			{ 20, 16, 10 },		// 138 bits per transform
+			{ 20, 17, 9 },		// 138 bits per transform
+			{ 20, 18, 8 },		// 138 bits per transform
+			{ 20, 19, 7 },		// 138 bits per transform
+			{ 20, 20, 6 },		// 138 bits per transform
+			{ 20, 21, 5 },		// 138 bits per transform
+			{ 20, 22, 4 },		// 138 bits per transform
+			{ 20, 23, 3 },		// 138 bits per transform
+			{ 21, 2, 23 },		// 138 bits per transform
+			{ 21, 3, 22 },		// 138 bits per transform
+			{ 21, 4, 21 },		// 138 bits per transform
+			{ 21, 5, 20 },		// 138 bits per transform
+			{ 21, 6, 19 },		// 138 bits per transform
+			{ 21, 7, 18 },		// 138 bits per transform
+			{ 21, 8, 17 },		// 138 bits per transform
+			{ 21, 9, 16 },		// 138 bits per transform
+			{ 21, 10, 15 },		// 138 bits per transform
+			{ 21, 11, 14 },		// 138 bits per transform
+			{ 21, 12, 13 },		// 138 bits per transform
+			{ 21, 13, 12 },		// 138 bits per transform
+			{ 21, 14, 11 },		// 138 bits per transform
+			{ 21, 15, 10 },		// 138 bits per transform
+			{ 21, 16, 9 },		// 138 bits per transform
+			{ 21, 17, 8 },		// 138 bits per transform
+			{ 21, 18, 7 },		// 138 bits per transform
+			{ 21, 19, 6 },		// 138 bits per transform
+			{ 21, 20, 5 },		// 138 bits per transform
+			{ 21, 21, 4 },		// 138 bits per transform
+			{ 21, 22, 3 },		// 138 bits per transform
+			{ 21, 23, 2 },		// 138 bits per transform
+			{ 22, 1, 23 },		// 138 bits per transform
+			{ 22, 2, 22 },		// 138 bits per transform
+			{ 22, 3, 21 },		// 138 bits per transform
+			{ 22, 4, 20 },		// 138 bits per transform
+			{ 22, 5, 19 },		// 138 bits per transform
+			{ 22, 6, 18 },		// 138 bits per transform
+			{ 22, 7, 17 },		// 138 bits per transform
+			{ 22, 8, 16 },		// 138 bits per transform
+			{ 22, 9, 15 },		// 138 bits per transform
+			{ 22, 10, 14 },		// 138 bits per transform
+			{ 22, 11, 13 },		// 138 bits per transform
+			{ 22, 12, 12 },		// 138 bits per transform
+			{ 22, 13, 11 },		// 138 bits per transform
+			{ 22, 14, 10 },		// 138 bits per transform
+			{ 22, 15, 9 },		// 138 bits per transform
+			{ 22, 16, 8 },		// 138 bits per transform
+			{ 22, 17, 7 },		// 138 bits per transform
+			{ 22, 18, 6 },		// 138 bits per transform
+			{ 22, 19, 5 },		// 138 bits per transform
+			{ 22, 20, 4 },		// 138 bits per transform
+			{ 22, 21, 3 },		// 138 bits per transform
+			{ 22, 22, 2 },		// 138 bits per transform
+			{ 22, 23, 1 },		// 138 bits per transform
+			{ 23, 0, 23 },		// 138 bits per transform
+			{ 23, 1, 22 },		// 138 bits per transform
+			{ 23, 2, 21 },		// 138 bits per transform
+			{ 23, 3, 20 },		// 138 bits per transform
+			{ 23, 4, 19 },		// 138 bits per transform
+			{ 23, 5, 18 },		// 138 bits per transform
+			{ 23, 6, 17 },		// 138 bits per transform
+			{ 23, 7, 16 },		// 138 bits per transform
+			{ 23, 8, 15 },		// 138 bits per transform
+			{ 23, 9, 14 },		// 138 bits per transform
+			{ 23, 10, 13 },		// 138 bits per transform
+			{ 23, 11, 12 },		// 138 bits per transform
+			{ 23, 12, 11 },		// 138 bits per transform
+			{ 23, 13, 10 },		// 138 bits per transform
+			{ 23, 14, 9 },		// 138 bits per transform
+			{ 23, 15, 8 },		// 138 bits per transform
+			{ 23, 16, 7 },		// 138 bits per transform
+			{ 23, 17, 6 },		// 138 bits per transform
+			{ 23, 18, 5 },		// 138 bits per transform
+			{ 23, 19, 4 },		// 138 bits per transform
+			{ 23, 20, 3 },		// 138 bits per transform
+			{ 23, 21, 2 },		// 138 bits per transform
+			{ 23, 22, 1 },		// 138 bits per transform
+			{ 23, 23, 0 },		// 138 bits per transform
+			{ 24, 0, 14 },		// 138 bits per transform
+			{ 24, 1, 13 },		// 138 bits per transform
+			{ 24, 2, 12 },		// 138 bits per transform
+			{ 24, 3, 11 },		// 138 bits per transform
+			{ 24, 4, 10 },		// 138 bits per transform
+			{ 24, 5, 9 },		// 138 bits per transform
+			{ 24, 6, 8 },		// 138 bits per transform
+			{ 24, 7, 7 },		// 138 bits per transform
+			{ 24, 8, 6 },		// 138 bits per transform
+			{ 24, 9, 5 },		// 138 bits per transform
+			{ 24, 10, 4 },		// 138 bits per transform
+			{ 24, 11, 3 },		// 138 bits per transform
+			{ 24, 12, 2 },		// 138 bits per transform
+			{ 24, 13, 1 },		// 138 bits per transform
+			{ 24, 14, 0 },		// 138 bits per transform
+			{ 0, 15, 24 },		// 141 bits per transform
+			{ 0, 24, 15 },		// 141 bits per transform
+			{ 1, 14, 24 },		// 141 bits per transform
+			{ 1, 23, 23 },		// 141 bits per transform
+			{ 1, 24, 14 },		// 141 bits per transform
+			{ 2, 13, 24 },		// 141 bits per transform
+			{ 2, 22, 23 },		// 141 bits per transform
+			{ 2, 23, 22 },		// 141 bits per transform
+			{ 2, 24, 13 },		// 141 bits per transform
+			{ 3, 12, 24 },		// 141 bits per transform
+			{ 3, 21, 23 },		// 141 bits per transform
+			{ 3, 22, 22 },		// 141 bits per transform
+			{ 3, 23, 21 },		// 141 bits per transform
+			{ 3, 24, 12 },		// 141 bits per transform
+			{ 4, 11, 24 },		// 141 bits per transform
+			{ 4, 20, 23 },		// 141 bits per transform
+			{ 4, 21, 22 },		// 141 bits per transform
+			{ 4, 22, 21 },		// 141 bits per transform
+			{ 4, 23, 20 },		// 141 bits per transform
+			{ 4, 24, 11 },		// 141 bits per transform
+			{ 5, 10, 24 },		// 141 bits per transform
+			{ 5, 19, 23 },		// 141 bits per transform
+			{ 5, 20, 22 },		// 141 bits per transform
+			{ 5, 21, 21 },		// 141 bits per transform
+			{ 5, 22, 20 },		// 141 bits per transform
+			{ 5, 23, 19 },		// 141 bits per transform
+			{ 5, 24, 10 },		// 141 bits per transform
+			{ 6, 9, 24 },		// 141 bits per transform
+			{ 6, 18, 23 },		// 141 bits per transform
+			{ 6, 19, 22 },		// 141 bits per transform
+			{ 6, 20, 21 },		// 141 bits per transform
+			{ 6, 21, 20 },		// 141 bits per transform
+			{ 6, 22, 19 },		// 141 bits per transform
+			{ 6, 23, 18 },		// 141 bits per transform
+			{ 6, 24, 9 },		// 141 bits per transform
+			{ 7, 8, 24 },		// 141 bits per transform
+			{ 7, 17, 23 },		// 141 bits per transform
+			{ 7, 18, 22 },		// 141 bits per transform
+			{ 7, 19, 21 },		// 141 bits per transform
+			{ 7, 20, 20 },		// 141 bits per transform
+			{ 7, 21, 19 },		// 141 bits per transform
+			{ 7, 22, 18 },		// 141 bits per transform
+			{ 7, 23, 17 },		// 141 bits per transform
+			{ 7, 24, 8 },		// 141 bits per transform
+			{ 8, 7, 24 },		// 141 bits per transform
+			{ 8, 16, 23 },		// 141 bits per transform
+			{ 8, 17, 22 },		// 141 bits per transform
+			{ 8, 18, 21 },		// 141 bits per transform
+			{ 8, 19, 20 },		// 141 bits per transform
+			{ 8, 20, 19 },		// 141 bits per transform
+			{ 8, 21, 18 },		// 141 bits per transform
+			{ 8, 22, 17 },		// 141 bits per transform
+			{ 8, 23, 16 },		// 141 bits per transform
+			{ 8, 24, 7 },		// 141 bits per transform
+			{ 9, 6, 24 },		// 141 bits per transform
+			{ 9, 15, 23 },		// 141 bits per transform
+			{ 9, 16, 22 },		// 141 bits per transform
+			{ 9, 17, 21 },		// 141 bits per transform
+			{ 9, 18, 20 },		// 141 bits per transform
+			{ 9, 19, 19 },		// 141 bits per transform
+			{ 9, 20, 18 },		// 141 bits per transform
+			{ 9, 21, 17 },		// 141 bits per transform
+			{ 9, 22, 16 },		// 141 bits per transform
+			{ 9, 23, 15 },		// 141 bits per transform
+			{ 9, 24, 6 },		// 141 bits per transform
+			{ 10, 5, 24 },		// 141 bits per transform
+			{ 10, 14, 23 },		// 141 bits per transform
+			{ 10, 15, 22 },		// 141 bits per transform
+			{ 10, 16, 21 },		// 141 bits per transform
+			{ 10, 17, 20 },		// 141 bits per transform
+			{ 10, 18, 19 },		// 141 bits per transform
+			{ 10, 19, 18 },		// 141 bits per transform
+			{ 10, 20, 17 },		// 141 bits per transform
+			{ 10, 21, 16 },		// 141 bits per transform
+			{ 10, 22, 15 },		// 141 bits per transform
+			{ 10, 23, 14 },		// 141 bits per transform
+			{ 10, 24, 5 },		// 141 bits per transform
+			{ 11, 4, 24 },		// 141 bits per transform
+			{ 11, 13, 23 },		// 141 bits per transform
+			{ 11, 14, 22 },		// 141 bits per transform
+			{ 11, 15, 21 },		// 141 bits per transform
+			{ 11, 16, 20 },		// 141 bits per transform
+			{ 11, 17, 19 },		// 141 bits per transform
+			{ 11, 18, 18 },		// 141 bits per transform
+			{ 11, 19, 17 },		// 141 bits per transform
+			{ 11, 20, 16 },		// 141 bits per transform
+			{ 11, 21, 15 },		// 141 bits per transform
+			{ 11, 22, 14 },		// 141 bits per transform
+			{ 11, 23, 13 },		// 141 bits per transform
+			{ 11, 24, 4 },		// 141 bits per transform
+			{ 12, 3, 24 },		// 141 bits per transform
+			{ 12, 12, 23 },		// 141 bits per transform
+			{ 12, 13, 22 },		// 141 bits per transform
+			{ 12, 14, 21 },		// 141 bits per transform
+			{ 12, 15, 20 },		// 141 bits per transform
+			{ 12, 16, 19 },		// 141 bits per transform
+			{ 12, 17, 18 },		// 141 bits per transform
+			{ 12, 18, 17 },		// 141 bits per transform
+			{ 12, 19, 16 },		// 141 bits per transform
+			{ 12, 20, 15 },		// 141 bits per transform
+			{ 12, 21, 14 },		// 141 bits per transform
+			{ 12, 22, 13 },		// 141 bits per transform
+			{ 12, 23, 12 },		// 141 bits per transform
+			{ 12, 24, 3 },		// 141 bits per transform
+			{ 13, 2, 24 },		// 141 bits per transform
+			{ 13, 11, 23 },		// 141 bits per transform
+			{ 13, 12, 22 },		// 141 bits per transform
+			{ 13, 13, 21 },		// 141 bits per transform
+			{ 13, 14, 20 },		// 141 bits per transform
+			{ 13, 15, 19 },		// 141 bits per transform
+			{ 13, 16, 18 },		// 141 bits per transform
+			{ 13, 17, 17 },		// 141 bits per transform
+			{ 13, 18, 16 },		// 141 bits per transform
+			{ 13, 19, 15 },		// 141 bits per transform
+			{ 13, 20, 14 },		// 141 bits per transform
+			{ 13, 21, 13 },		// 141 bits per transform
+			{ 13, 22, 12 },		// 141 bits per transform
+			{ 13, 23, 11 },		// 141 bits per transform
+			{ 13, 24, 2 },		// 141 bits per transform
+			{ 14, 1, 24 },		// 141 bits per transform
+			{ 14, 10, 23 },		// 141 bits per transform
+			{ 14, 11, 22 },		// 141 bits per transform
+			{ 14, 12, 21 },		// 141 bits per transform
+			{ 14, 13, 20 },		// 141 bits per transform
+			{ 14, 14, 19 },		// 141 bits per transform
+			{ 14, 15, 18 },		// 141 bits per transform
+			{ 14, 16, 17 },		// 141 bits per transform
+			{ 14, 17, 16 },		// 141 bits per transform
+			{ 14, 18, 15 },		// 141 bits per transform
+			{ 14, 19, 14 },		// 141 bits per transform
+			{ 14, 20, 13 },		// 141 bits per transform
+			{ 14, 21, 12 },		// 141 bits per transform
+			{ 14, 22, 11 },		// 141 bits per transform
+			{ 14, 23, 10 },		// 141 bits per transform
+			{ 14, 24, 1 },		// 141 bits per transform
+			{ 15, 0, 24 },		// 141 bits per transform
+			{ 15, 9, 23 },		// 141 bits per transform
+			{ 15, 10, 22 },		// 141 bits per transform
+			{ 15, 11, 21 },		// 141 bits per transform
+			{ 15, 12, 20 },		// 141 bits per transform
+			{ 15, 13, 19 },		// 141 bits per transform
+			{ 15, 14, 18 },		// 141 bits per transform
+			{ 15, 15, 17 },		// 141 bits per transform
+			{ 15, 16, 16 },		// 141 bits per transform
+			{ 15, 17, 15 },		// 141 bits per transform
+			{ 15, 18, 14 },		// 141 bits per transform
+			{ 15, 19, 13 },		// 141 bits per transform
+			{ 15, 20, 12 },		// 141 bits per transform
+			{ 15, 21, 11 },		// 141 bits per transform
+			{ 15, 22, 10 },		// 141 bits per transform
+			{ 15, 23, 9 },		// 141 bits per transform
+			{ 15, 24, 0 },		// 141 bits per transform
+			{ 16, 8, 23 },		// 141 bits per transform
+			{ 16, 9, 22 },		// 141 bits per transform
+			{ 16, 10, 21 },		// 141 bits per transform
+			{ 16, 11, 20 },		// 141 bits per transform
+			{ 16, 12, 19 },		// 141 bits per transform
+			{ 16, 13, 18 },		// 141 bits per transform
+			{ 16, 14, 17 },		// 141 bits per transform
+			{ 16, 15, 16 },		// 141 bits per transform
+			{ 16, 16, 15 },		// 141 bits per transform
+			{ 16, 17, 14 },		// 141 bits per transform
+			{ 16, 18, 13 },		// 141 bits per transform
+			{ 16, 19, 12 },		// 141 bits per transform
+			{ 16, 20, 11 },		// 141 bits per transform
+			{ 16, 21, 10 },		// 141 bits per transform
+			{ 16, 22, 9 },		// 141 bits per transform
+			{ 16, 23, 8 },		// 141 bits per transform
+			{ 17, 7, 23 },		// 141 bits per transform
+			{ 17, 8, 22 },		// 141 bits per transform
+			{ 17, 9, 21 },		// 141 bits per transform
+			{ 17, 10, 20 },		// 141 bits per transform
+			{ 17, 11, 19 },		// 141 bits per transform
+			{ 17, 12, 18 },		// 141 bits per transform
+			{ 17, 13, 17 },		// 141 bits per transform
+			{ 17, 14, 16 },		// 141 bits per transform
+			{ 17, 15, 15 },		// 141 bits per transform
+			{ 17, 16, 14 },		// 141 bits per transform
+			{ 17, 17, 13 },		// 141 bits per transform
+			{ 17, 18, 12 },		// 141 bits per transform
+			{ 17, 19, 11 },		// 141 bits per transform
+			{ 17, 20, 10 },		// 141 bits per transform
+			{ 17, 21, 9 },		// 141 bits per transform
+			{ 17, 22, 8 },		// 141 bits per transform
+			{ 17, 23, 7 },		// 141 bits per transform
+			{ 18, 6, 23 },		// 141 bits per transform
+			{ 18, 7, 22 },		// 141 bits per transform
+			{ 18, 8, 21 },		// 141 bits per transform
+			{ 18, 9, 20 },		// 141 bits per transform
+			{ 18, 10, 19 },		// 141 bits per transform
+			{ 18, 11, 18 },		// 141 bits per transform
+			{ 18, 12, 17 },		// 141 bits per transform
+			{ 18, 13, 16 },		// 141 bits per transform
+			{ 18, 14, 15 },		// 141 bits per transform
+			{ 18, 15, 14 },		// 141 bits per transform
+			{ 18, 16, 13 },		// 141 bits per transform
+			{ 18, 17, 12 },		// 141 bits per transform
+			{ 18, 18, 11 },		// 141 bits per transform
+			{ 18, 19, 10 },		// 141 bits per transform
+			{ 18, 20, 9 },		// 141 bits per transform
+			{ 18, 21, 8 },		// 141 bits per transform
+			{ 18, 22, 7 },		// 141 bits per transform
+			{ 18, 23, 6 },		// 141 bits per transform
+			{ 19, 5, 23 },		// 141 bits per transform
+			{ 19, 6, 22 },		// 141 bits per transform
+			{ 19, 7, 21 },		// 141 bits per transform
+			{ 19, 8, 20 },		// 141 bits per transform
+			{ 19, 9, 19 },		// 141 bits per transform
+			{ 19, 10, 18 },		// 141 bits per transform
+			{ 19, 11, 17 },		// 141 bits per transform
+			{ 19, 12, 16 },		// 141 bits per transform
+			{ 19, 13, 15 },		// 141 bits per transform
+			{ 19, 14, 14 },		// 141 bits per transform
+			{ 19, 15, 13 },		// 141 bits per transform
+			{ 19, 16, 12 },		// 141 bits per transform
+			{ 19, 17, 11 },		// 141 bits per transform
+			{ 19, 18, 10 },		// 141 bits per transform
+			{ 19, 19, 9 },		// 141 bits per transform
+			{ 19, 20, 8 },		// 141 bits per transform
+			{ 19, 21, 7 },		// 141 bits per transform
+			{ 19, 22, 6 },		// 141 bits per transform
+			{ 19, 23, 5 },		// 141 bits per transform
+			{ 20, 4, 23 },		// 141 bits per transform
+			{ 20, 5, 22 },		// 141 bits per transform
+			{ 20, 6, 21 },		// 141 bits per transform
+			{ 20, 7, 20 },		// 141 bits per transform
+			{ 20, 8, 19 },		// 141 bits per transform
+			{ 20, 9, 18 },		// 141 bits per transform
+			{ 20, 10, 17 },		// 141 bits per transform
+			{ 20, 11, 16 },		// 141 bits per transform
+			{ 20, 12, 15 },		// 141 bits per transform
+			{ 20, 13, 14 },		// 141 bits per transform
+			{ 20, 14, 13 },		// 141 bits per transform
+			{ 20, 15, 12 },		// 141 bits per transform
+			{ 20, 16, 11 },		// 141 bits per transform
+			{ 20, 17, 10 },		// 141 bits per transform
+			{ 20, 18, 9 },		// 141 bits per transform
+			{ 20, 19, 8 },		// 141 bits per transform
+			{ 20, 20, 7 },		// 141 bits per transform
+			{ 20, 21, 6 },		// 141 bits per transform
+			{ 20, 22, 5 },		// 141 bits per transform
+			{ 20, 23, 4 },		// 141 bits per transform
+			{ 21, 3, 23 },		// 141 bits per transform
+			{ 21, 4, 22 },		// 141 bits per transform
+			{ 21, 5, 21 },		// 141 bits per transform
+			{ 21, 6, 20 },		// 141 bits per transform
+			{ 21, 7, 19 },		// 141 bits per transform
+			{ 21, 8, 18 },		// 141 bits per transform
+			{ 21, 9, 17 },		// 141 bits per transform
+			{ 21, 10, 16 },		// 141 bits per transform
+			{ 21, 11, 15 },		// 141 bits per transform
+			{ 21, 12, 14 },		// 141 bits per transform
+			{ 21, 13, 13 },		// 141 bits per transform
+			{ 21, 14, 12 },		// 141 bits per transform
+			{ 21, 15, 11 },		// 141 bits per transform
+			{ 21, 16, 10 },		// 141 bits per transform
+			{ 21, 17, 9 },		// 141 bits per transform
+			{ 21, 18, 8 },		// 141 bits per transform
+			{ 21, 19, 7 },		// 141 bits per transform
+			{ 21, 20, 6 },		// 141 bits per transform
+			{ 21, 21, 5 },		// 141 bits per transform
+			{ 21, 22, 4 },		// 141 bits per transform
+			{ 21, 23, 3 },		// 141 bits per transform
+			{ 22, 2, 23 },		// 141 bits per transform
+			{ 22, 3, 22 },		// 141 bits per transform
+			{ 22, 4, 21 },		// 141 bits per transform
+			{ 22, 5, 20 },		// 141 bits per transform
+			{ 22, 6, 19 },		// 141 bits per transform
+			{ 22, 7, 18 },		// 141 bits per transform
+			{ 22, 8, 17 },		// 141 bits per transform
+			{ 22, 9, 16 },		// 141 bits per transform
+			{ 22, 10, 15 },		// 141 bits per transform
+			{ 22, 11, 14 },		// 141 bits per transform
+			{ 22, 12, 13 },		// 141 bits per transform
+			{ 22, 13, 12 },		// 141 bits per transform
+			{ 22, 14, 11 },		// 141 bits per transform
+			{ 22, 15, 10 },		// 141 bits per transform
+			{ 22, 16, 9 },		// 141 bits per transform
+			{ 22, 17, 8 },		// 141 bits per transform
+			{ 22, 18, 7 },		// 141 bits per transform
+			{ 22, 19, 6 },		// 141 bits per transform
+			{ 22, 20, 5 },		// 141 bits per transform
+			{ 22, 21, 4 },		// 141 bits per transform
+			{ 22, 22, 3 },		// 141 bits per transform
+			{ 22, 23, 2 },		// 141 bits per transform
+			{ 23, 1, 23 },		// 141 bits per transform
+			{ 23, 2, 22 },		// 141 bits per transform
+			{ 23, 3, 21 },		// 141 bits per transform
+			{ 23, 4, 20 },		// 141 bits per transform
+			{ 23, 5, 19 },		// 141 bits per transform
+			{ 23, 6, 18 },		// 141 bits per transform
+			{ 23, 7, 17 },		// 141 bits per transform
+			{ 23, 8, 16 },		// 141 bits per transform
+			{ 23, 9, 15 },		// 141 bits per transform
+			{ 23, 10, 14 },		// 141 bits per transform
+			{ 23, 11, 13 },		// 141 bits per transform
+			{ 23, 12, 12 },		// 141 bits per transform
+			{ 23, 13, 11 },		// 141 bits per transform
+			{ 23, 14, 10 },		// 141 bits per transform
+			{ 23, 15, 9 },		// 141 bits per transform
+			{ 23, 16, 8 },		// 141 bits per transform
+			{ 23, 17, 7 },		// 141 bits per transform
+			{ 23, 18, 6 },		// 141 bits per transform
+			{ 23, 19, 5 },		// 141 bits per transform
+			{ 23, 20, 4 },		// 141 bits per transform
+			{ 23, 21, 3 },		// 141 bits per transform
+			{ 23, 22, 2 },		// 141 bits per transform
+			{ 23, 23, 1 },		// 141 bits per transform
+			{ 24, 0, 15 },		// 141 bits per transform
+			{ 24, 1, 14 },		// 141 bits per transform
+			{ 24, 2, 13 },		// 141 bits per transform
+			{ 24, 3, 12 },		// 141 bits per transform
+			{ 24, 4, 11 },		// 141 bits per transform
+			{ 24, 5, 10 },		// 141 bits per transform
+			{ 24, 6, 9 },		// 141 bits per transform
+			{ 24, 7, 8 },		// 141 bits per transform
+			{ 24, 8, 7 },		// 141 bits per transform
+			{ 24, 9, 6 },		// 141 bits per transform
+			{ 24, 10, 5 },		// 141 bits per transform
+			{ 24, 11, 4 },		// 141 bits per transform
+			{ 24, 12, 3 },		// 141 bits per transform
+			{ 24, 13, 2 },		// 141 bits per transform
+			{ 24, 14, 1 },		// 141 bits per transform
+			{ 24, 15, 0 },		// 141 bits per transform
+			{ 0, 16, 24 },		// 144 bits per transform
+			{ 0, 24, 16 },		// 144 bits per transform
+			{ 1, 15, 24 },		// 144 bits per transform
+			{ 1, 24, 15 },		// 144 bits per transform
+			{ 2, 14, 24 },		// 144 bits per transform
+			{ 2, 23, 23 },		// 144 bits per transform
+			{ 2, 24, 14 },		// 144 bits per transform
+			{ 3, 13, 24 },		// 144 bits per transform
+			{ 3, 22, 23 },		// 144 bits per transform
+			{ 3, 23, 22 },		// 144 bits per transform
+			{ 3, 24, 13 },		// 144 bits per transform
+			{ 4, 12, 24 },		// 144 bits per transform
+			{ 4, 21, 23 },		// 144 bits per transform
+			{ 4, 22, 22 },		// 144 bits per transform
+			{ 4, 23, 21 },		// 144 bits per transform
+			{ 4, 24, 12 },		// 144 bits per transform
+			{ 5, 11, 24 },		// 144 bits per transform
+			{ 5, 20, 23 },		// 144 bits per transform
+			{ 5, 21, 22 },		// 144 bits per transform
+			{ 5, 22, 21 },		// 144 bits per transform
+			{ 5, 23, 20 },		// 144 bits per transform
+			{ 5, 24, 11 },		// 144 bits per transform
+			{ 6, 10, 24 },		// 144 bits per transform
+			{ 6, 19, 23 },		// 144 bits per transform
+			{ 6, 20, 22 },		// 144 bits per transform
+			{ 6, 21, 21 },		// 144 bits per transform
+			{ 6, 22, 20 },		// 144 bits per transform
+			{ 6, 23, 19 },		// 144 bits per transform
+			{ 6, 24, 10 },		// 144 bits per transform
+			{ 7, 9, 24 },		// 144 bits per transform
+			{ 7, 18, 23 },		// 144 bits per transform
+			{ 7, 19, 22 },		// 144 bits per transform
+			{ 7, 20, 21 },		// 144 bits per transform
+			{ 7, 21, 20 },		// 144 bits per transform
+			{ 7, 22, 19 },		// 144 bits per transform
+			{ 7, 23, 18 },		// 144 bits per transform
+			{ 7, 24, 9 },		// 144 bits per transform
+			{ 8, 8, 24 },		// 144 bits per transform
+			{ 8, 17, 23 },		// 144 bits per transform
+			{ 8, 18, 22 },		// 144 bits per transform
+			{ 8, 19, 21 },		// 144 bits per transform
+			{ 8, 20, 20 },		// 144 bits per transform
+			{ 8, 21, 19 },		// 144 bits per transform
+			{ 8, 22, 18 },		// 144 bits per transform
+			{ 8, 23, 17 },		// 144 bits per transform
+			{ 8, 24, 8 },		// 144 bits per transform
+			{ 9, 7, 24 },		// 144 bits per transform
+			{ 9, 16, 23 },		// 144 bits per transform
+			{ 9, 17, 22 },		// 144 bits per transform
+			{ 9, 18, 21 },		// 144 bits per transform
+			{ 9, 19, 20 },		// 144 bits per transform
+			{ 9, 20, 19 },		// 144 bits per transform
+			{ 9, 21, 18 },		// 144 bits per transform
+			{ 9, 22, 17 },		// 144 bits per transform
+			{ 9, 23, 16 },		// 144 bits per transform
+			{ 9, 24, 7 },		// 144 bits per transform
+			{ 10, 6, 24 },		// 144 bits per transform
+			{ 10, 15, 23 },		// 144 bits per transform
+			{ 10, 16, 22 },		// 144 bits per transform
+			{ 10, 17, 21 },		// 144 bits per transform
+			{ 10, 18, 20 },		// 144 bits per transform
+			{ 10, 19, 19 },		// 144 bits per transform
+			{ 10, 20, 18 },		// 144 bits per transform
+			{ 10, 21, 17 },		// 144 bits per transform
+			{ 10, 22, 16 },		// 144 bits per transform
+			{ 10, 23, 15 },		// 144 bits per transform
+			{ 10, 24, 6 },		// 144 bits per transform
+			{ 11, 5, 24 },		// 144 bits per transform
+			{ 11, 14, 23 },		// 144 bits per transform
+			{ 11, 15, 22 },		// 144 bits per transform
+			{ 11, 16, 21 },		// 144 bits per transform
+			{ 11, 17, 20 },		// 144 bits per transform
+			{ 11, 18, 19 },		// 144 bits per transform
+			{ 11, 19, 18 },		// 144 bits per transform
+			{ 11, 20, 17 },		// 144 bits per transform
+			{ 11, 21, 16 },		// 144 bits per transform
+			{ 11, 22, 15 },		// 144 bits per transform
+			{ 11, 23, 14 },		// 144 bits per transform
+			{ 11, 24, 5 },		// 144 bits per transform
+			{ 12, 4, 24 },		// 144 bits per transform
+			{ 12, 13, 23 },		// 144 bits per transform
+			{ 12, 14, 22 },		// 144 bits per transform
+			{ 12, 15, 21 },		// 144 bits per transform
+			{ 12, 16, 20 },		// 144 bits per transform
+			{ 12, 17, 19 },		// 144 bits per transform
+			{ 12, 18, 18 },		// 144 bits per transform
+			{ 12, 19, 17 },		// 144 bits per transform
+			{ 12, 20, 16 },		// 144 bits per transform
+			{ 12, 21, 15 },		// 144 bits per transform
+			{ 12, 22, 14 },		// 144 bits per transform
+			{ 12, 23, 13 },		// 144 bits per transform
+			{ 12, 24, 4 },		// 144 bits per transform
+			{ 13, 3, 24 },		// 144 bits per transform
+			{ 13, 12, 23 },		// 144 bits per transform
+			{ 13, 13, 22 },		// 144 bits per transform
+			{ 13, 14, 21 },		// 144 bits per transform
+			{ 13, 15, 20 },		// 144 bits per transform
+			{ 13, 16, 19 },		// 144 bits per transform
+			{ 13, 17, 18 },		// 144 bits per transform
+			{ 13, 18, 17 },		// 144 bits per transform
+			{ 13, 19, 16 },		// 144 bits per transform
+			{ 13, 20, 15 },		// 144 bits per transform
+			{ 13, 21, 14 },		// 144 bits per transform
+			{ 13, 22, 13 },		// 144 bits per transform
+			{ 13, 23, 12 },		// 144 bits per transform
+			{ 13, 24, 3 },		// 144 bits per transform
+			{ 14, 2, 24 },		// 144 bits per transform
+			{ 14, 11, 23 },		// 144 bits per transform
+			{ 14, 12, 22 },		// 144 bits per transform
+			{ 14, 13, 21 },		// 144 bits per transform
+			{ 14, 14, 20 },		// 144 bits per transform
+			{ 14, 15, 19 },		// 144 bits per transform
+			{ 14, 16, 18 },		// 144 bits per transform
+			{ 14, 17, 17 },		// 144 bits per transform
+			{ 14, 18, 16 },		// 144 bits per transform
+			{ 14, 19, 15 },		// 144 bits per transform
+			{ 14, 20, 14 },		// 144 bits per transform
+			{ 14, 21, 13 },		// 144 bits per transform
+			{ 14, 22, 12 },		// 144 bits per transform
+			{ 14, 23, 11 },		// 144 bits per transform
+			{ 14, 24, 2 },		// 144 bits per transform
+			{ 15, 1, 24 },		// 144 bits per transform
+			{ 15, 10, 23 },		// 144 bits per transform
+			{ 15, 11, 22 },		// 144 bits per transform
+			{ 15, 12, 21 },		// 144 bits per transform
+			{ 15, 13, 20 },		// 144 bits per transform
+			{ 15, 14, 19 },		// 144 bits per transform
+			{ 15, 15, 18 },		// 144 bits per transform
+			{ 15, 16, 17 },		// 144 bits per transform
+			{ 15, 17, 16 },		// 144 bits per transform
+			{ 15, 18, 15 },		// 144 bits per transform
+			{ 15, 19, 14 },		// 144 bits per transform
+			{ 15, 20, 13 },		// 144 bits per transform
+			{ 15, 21, 12 },		// 144 bits per transform
+			{ 15, 22, 11 },		// 144 bits per transform
+			{ 15, 23, 10 },		// 144 bits per transform
+			{ 15, 24, 1 },		// 144 bits per transform
+			{ 16, 0, 24 },		// 144 bits per transform
+			{ 16, 9, 23 },		// 144 bits per transform
+			{ 16, 10, 22 },		// 144 bits per transform
+			{ 16, 11, 21 },		// 144 bits per transform
+			{ 16, 12, 20 },		// 144 bits per transform
+			{ 16, 13, 19 },		// 144 bits per transform
+			{ 16, 14, 18 },		// 144 bits per transform
+			{ 16, 15, 17 },		// 144 bits per transform
+			{ 16, 16, 16 },		// 144 bits per transform
+			{ 16, 17, 15 },		// 144 bits per transform
+			{ 16, 18, 14 },		// 144 bits per transform
+			{ 16, 19, 13 },		// 144 bits per transform
+			{ 16, 20, 12 },		// 144 bits per transform
+			{ 16, 21, 11 },		// 144 bits per transform
+			{ 16, 22, 10 },		// 144 bits per transform
+			{ 16, 23, 9 },		// 144 bits per transform
+			{ 16, 24, 0 },		// 144 bits per transform
+			{ 17, 8, 23 },		// 144 bits per transform
+			{ 17, 9, 22 },		// 144 bits per transform
+			{ 17, 10, 21 },		// 144 bits per transform
+			{ 17, 11, 20 },		// 144 bits per transform
+			{ 17, 12, 19 },		// 144 bits per transform
+			{ 17, 13, 18 },		// 144 bits per transform
+			{ 17, 14, 17 },		// 144 bits per transform
+			{ 17, 15, 16 },		// 144 bits per transform
+			{ 17, 16, 15 },		// 144 bits per transform
+			{ 17, 17, 14 },		// 144 bits per transform
+			{ 17, 18, 13 },		// 144 bits per transform
+			{ 17, 19, 12 },		// 144 bits per transform
+			{ 17, 20, 11 },		// 144 bits per transform
+			{ 17, 21, 10 },		// 144 bits per transform
+			{ 17, 22, 9 },		// 144 bits per transform
+			{ 17, 23, 8 },		// 144 bits per transform
+			{ 18, 7, 23 },		// 144 bits per transform
+			{ 18, 8, 22 },		// 144 bits per transform
+			{ 18, 9, 21 },		// 144 bits per transform
+			{ 18, 10, 20 },		// 144 bits per transform
+			{ 18, 11, 19 },		// 144 bits per transform
+			{ 18, 12, 18 },		// 144 bits per transform
+			{ 18, 13, 17 },		// 144 bits per transform
+			{ 18, 14, 16 },		// 144 bits per transform
+			{ 18, 15, 15 },		// 144 bits per transform
+			{ 18, 16, 14 },		// 144 bits per transform
+			{ 18, 17, 13 },		// 144 bits per transform
+			{ 18, 18, 12 },		// 144 bits per transform
+			{ 18, 19, 11 },		// 144 bits per transform
+			{ 18, 20, 10 },		// 144 bits per transform
+			{ 18, 21, 9 },		// 144 bits per transform
+			{ 18, 22, 8 },		// 144 bits per transform
+			{ 18, 23, 7 },		// 144 bits per transform
+			{ 19, 6, 23 },		// 144 bits per transform
+			{ 19, 7, 22 },		// 144 bits per transform
+			{ 19, 8, 21 },		// 144 bits per transform
+			{ 19, 9, 20 },		// 144 bits per transform
+			{ 19, 10, 19 },		// 144 bits per transform
+			{ 19, 11, 18 },		// 144 bits per transform
+			{ 19, 12, 17 },		// 144 bits per transform
+			{ 19, 13, 16 },		// 144 bits per transform
+			{ 19, 14, 15 },		// 144 bits per transform
+			{ 19, 15, 14 },		// 144 bits per transform
+			{ 19, 16, 13 },		// 144 bits per transform
+			{ 19, 17, 12 },		// 144 bits per transform
+			{ 19, 18, 11 },		// 144 bits per transform
+			{ 19, 19, 10 },		// 144 bits per transform
+			{ 19, 20, 9 },		// 144 bits per transform
+			{ 19, 21, 8 },		// 144 bits per transform
+			{ 19, 22, 7 },		// 144 bits per transform
+			{ 19, 23, 6 },		// 144 bits per transform
+			{ 20, 5, 23 },		// 144 bits per transform
+			{ 20, 6, 22 },		// 144 bits per transform
+			{ 20, 7, 21 },		// 144 bits per transform
+			{ 20, 8, 20 },		// 144 bits per transform
+			{ 20, 9, 19 },		// 144 bits per transform
+			{ 20, 10, 18 },		// 144 bits per transform
+			{ 20, 11, 17 },		// 144 bits per transform
+			{ 20, 12, 16 },		// 144 bits per transform
+			{ 20, 13, 15 },		// 144 bits per transform
+			{ 20, 14, 14 },		// 144 bits per transform
+			{ 20, 15, 13 },		// 144 bits per transform
+			{ 20, 16, 12 },		// 144 bits per transform
+			{ 20, 17, 11 },		// 144 bits per transform
+			{ 20, 18, 10 },		// 144 bits per transform
+			{ 20, 19, 9 },		// 144 bits per transform
+			{ 20, 20, 8 },		// 144 bits per transform
+			{ 20, 21, 7 },		// 144 bits per transform
+			{ 20, 22, 6 },		// 144 bits per transform
+			{ 20, 23, 5 },		// 144 bits per transform
+			{ 21, 4, 23 },		// 144 bits per transform
+			{ 21, 5, 22 },		// 144 bits per transform
+			{ 21, 6, 21 },		// 144 bits per transform
+			{ 21, 7, 20 },		// 144 bits per transform
+			{ 21, 8, 19 },		// 144 bits per transform
+			{ 21, 9, 18 },		// 144 bits per transform
+			{ 21, 10, 17 },		// 144 bits per transform
+			{ 21, 11, 16 },		// 144 bits per transform
+			{ 21, 12, 15 },		// 144 bits per transform
+			{ 21, 13, 14 },		// 144 bits per transform
+			{ 21, 14, 13 },		// 144 bits per transform
+			{ 21, 15, 12 },		// 144 bits per transform
+			{ 21, 16, 11 },		// 144 bits per transform
+			{ 21, 17, 10 },		// 144 bits per transform
+			{ 21, 18, 9 },		// 144 bits per transform
+			{ 21, 19, 8 },		// 144 bits per transform
+			{ 21, 20, 7 },		// 144 bits per transform
+			{ 21, 21, 6 },		// 144 bits per transform
+			{ 21, 22, 5 },		// 144 bits per transform
+			{ 21, 23, 4 },		// 144 bits per transform
+			{ 22, 3, 23 },		// 144 bits per transform
+			{ 22, 4, 22 },		// 144 bits per transform
+			{ 22, 5, 21 },		// 144 bits per transform
+			{ 22, 6, 20 },		// 144 bits per transform
+			{ 22, 7, 19 },		// 144 bits per transform
+			{ 22, 8, 18 },		// 144 bits per transform
+			{ 22, 9, 17 },		// 144 bits per transform
+			{ 22, 10, 16 },		// 144 bits per transform
+			{ 22, 11, 15 },		// 144 bits per transform
+			{ 22, 12, 14 },		// 144 bits per transform
+			{ 22, 13, 13 },		// 144 bits per transform
+			{ 22, 14, 12 },		// 144 bits per transform
+			{ 22, 15, 11 },		// 144 bits per transform
+			{ 22, 16, 10 },		// 144 bits per transform
+			{ 22, 17, 9 },		// 144 bits per transform
+			{ 22, 18, 8 },		// 144 bits per transform
+			{ 22, 19, 7 },		// 144 bits per transform
+			{ 22, 20, 6 },		// 144 bits per transform
+			{ 22, 21, 5 },		// 144 bits per transform
+			{ 22, 22, 4 },		// 144 bits per transform
+			{ 22, 23, 3 },		// 144 bits per transform
+			{ 23, 2, 23 },		// 144 bits per transform
+			{ 23, 3, 22 },		// 144 bits per transform
+			{ 23, 4, 21 },		// 144 bits per transform
+			{ 23, 5, 20 },		// 144 bits per transform
+			{ 23, 6, 19 },		// 144 bits per transform
+			{ 23, 7, 18 },		// 144 bits per transform
+			{ 23, 8, 17 },		// 144 bits per transform
+			{ 23, 9, 16 },		// 144 bits per transform
+			{ 23, 10, 15 },		// 144 bits per transform
+			{ 23, 11, 14 },		// 144 bits per transform
+			{ 23, 12, 13 },		// 144 bits per transform
+			{ 23, 13, 12 },		// 144 bits per transform
+			{ 23, 14, 11 },		// 144 bits per transform
+			{ 23, 15, 10 },		// 144 bits per transform
+			{ 23, 16, 9 },		// 144 bits per transform
+			{ 23, 17, 8 },		// 144 bits per transform
+			{ 23, 18, 7 },		// 144 bits per transform
+			{ 23, 19, 6 },		// 144 bits per transform
+			{ 23, 20, 5 },		// 144 bits per transform
+			{ 23, 21, 4 },		// 144 bits per transform
+			{ 23, 22, 3 },		// 144 bits per transform
+			{ 23, 23, 2 },		// 144 bits per transform
+			{ 24, 0, 16 },		// 144 bits per transform
+			{ 24, 1, 15 },		// 144 bits per transform
+			{ 24, 2, 14 },		// 144 bits per transform
+			{ 24, 3, 13 },		// 144 bits per transform
+			{ 24, 4, 12 },		// 144 bits per transform
+			{ 24, 5, 11 },		// 144 bits per transform
+			{ 24, 6, 10 },		// 144 bits per transform
+			{ 24, 7, 9 },		// 144 bits per transform
+			{ 24, 8, 8 },		// 144 bits per transform
+			{ 24, 9, 7 },		// 144 bits per transform
+			{ 24, 10, 6 },		// 144 bits per transform
+			{ 24, 11, 5 },		// 144 bits per transform
+			{ 24, 12, 4 },		// 144 bits per transform
+			{ 24, 13, 3 },		// 144 bits per transform
+			{ 24, 14, 2 },		// 144 bits per transform
+			{ 24, 15, 1 },		// 144 bits per transform
+			{ 24, 16, 0 },		// 144 bits per transform
+			{ 0, 17, 24 },		// 147 bits per transform
+			{ 0, 24, 17 },		// 147 bits per transform
+			{ 1, 16, 24 },		// 147 bits per transform
+			{ 1, 24, 16 },		// 147 bits per transform
+			{ 2, 15, 24 },		// 147 bits per transform
+			{ 2, 24, 15 },		// 147 bits per transform
+			{ 3, 14, 24 },		// 147 bits per transform
+			{ 3, 23, 23 },		// 147 bits per transform
+			{ 3, 24, 14 },		// 147 bits per transform
+			{ 4, 13, 24 },		// 147 bits per transform
+			{ 4, 22, 23 },		// 147 bits per transform
+			{ 4, 23, 22 },		// 147 bits per transform
+			{ 4, 24, 13 },		// 147 bits per transform
+			{ 5, 12, 24 },		// 147 bits per transform
+			{ 5, 21, 23 },		// 147 bits per transform
+			{ 5, 22, 22 },		// 147 bits per transform
+			{ 5, 23, 21 },		// 147 bits per transform
+			{ 5, 24, 12 },		// 147 bits per transform
+			{ 6, 11, 24 },		// 147 bits per transform
+			{ 6, 20, 23 },		// 147 bits per transform
+			{ 6, 21, 22 },		// 147 bits per transform
+			{ 6, 22, 21 },		// 147 bits per transform
+			{ 6, 23, 20 },		// 147 bits per transform
+			{ 6, 24, 11 },		// 147 bits per transform
+			{ 7, 10, 24 },		// 147 bits per transform
+			{ 7, 19, 23 },		// 147 bits per transform
+			{ 7, 20, 22 },		// 147 bits per transform
+			{ 7, 21, 21 },		// 147 bits per transform
+			{ 7, 22, 20 },		// 147 bits per transform
+			{ 7, 23, 19 },		// 147 bits per transform
+			{ 7, 24, 10 },		// 147 bits per transform
+			{ 8, 9, 24 },		// 147 bits per transform
+			{ 8, 18, 23 },		// 147 bits per transform
+			{ 8, 19, 22 },		// 147 bits per transform
+			{ 8, 20, 21 },		// 147 bits per transform
+			{ 8, 21, 20 },		// 147 bits per transform
+			{ 8, 22, 19 },		// 147 bits per transform
+			{ 8, 23, 18 },		// 147 bits per transform
+			{ 8, 24, 9 },		// 147 bits per transform
+			{ 9, 8, 24 },		// 147 bits per transform
+			{ 9, 17, 23 },		// 147 bits per transform
+			{ 9, 18, 22 },		// 147 bits per transform
+			{ 9, 19, 21 },		// 147 bits per transform
+			{ 9, 20, 20 },		// 147 bits per transform
+			{ 9, 21, 19 },		// 147 bits per transform
+			{ 9, 22, 18 },		// 147 bits per transform
+			{ 9, 23, 17 },		// 147 bits per transform
+			{ 9, 24, 8 },		// 147 bits per transform
+			{ 10, 7, 24 },		// 147 bits per transform
+			{ 10, 16, 23 },		// 147 bits per transform
+			{ 10, 17, 22 },		// 147 bits per transform
+			{ 10, 18, 21 },		// 147 bits per transform
+			{ 10, 19, 20 },		// 147 bits per transform
+			{ 10, 20, 19 },		// 147 bits per transform
+			{ 10, 21, 18 },		// 147 bits per transform
+			{ 10, 22, 17 },		// 147 bits per transform
+			{ 10, 23, 16 },		// 147 bits per transform
+			{ 10, 24, 7 },		// 147 bits per transform
+			{ 11, 6, 24 },		// 147 bits per transform
+			{ 11, 15, 23 },		// 147 bits per transform
+			{ 11, 16, 22 },		// 147 bits per transform
+			{ 11, 17, 21 },		// 147 bits per transform
+			{ 11, 18, 20 },		// 147 bits per transform
+			{ 11, 19, 19 },		// 147 bits per transform
+			{ 11, 20, 18 },		// 147 bits per transform
+			{ 11, 21, 17 },		// 147 bits per transform
+			{ 11, 22, 16 },		// 147 bits per transform
+			{ 11, 23, 15 },		// 147 bits per transform
+			{ 11, 24, 6 },		// 147 bits per transform
+			{ 12, 5, 24 },		// 147 bits per transform
+			{ 12, 14, 23 },		// 147 bits per transform
+			{ 12, 15, 22 },		// 147 bits per transform
+			{ 12, 16, 21 },		// 147 bits per transform
+			{ 12, 17, 20 },		// 147 bits per transform
+			{ 12, 18, 19 },		// 147 bits per transform
+			{ 12, 19, 18 },		// 147 bits per transform
+			{ 12, 20, 17 },		// 147 bits per transform
+			{ 12, 21, 16 },		// 147 bits per transform
+			{ 12, 22, 15 },		// 147 bits per transform
+			{ 12, 23, 14 },		// 147 bits per transform
+			{ 12, 24, 5 },		// 147 bits per transform
+			{ 13, 4, 24 },		// 147 bits per transform
+			{ 13, 13, 23 },		// 147 bits per transform
+			{ 13, 14, 22 },		// 147 bits per transform
+			{ 13, 15, 21 },		// 147 bits per transform
+			{ 13, 16, 20 },		// 147 bits per transform
+			{ 13, 17, 19 },		// 147 bits per transform
+			{ 13, 18, 18 },		// 147 bits per transform
+			{ 13, 19, 17 },		// 147 bits per transform
+			{ 13, 20, 16 },		// 147 bits per transform
+			{ 13, 21, 15 },		// 147 bits per transform
+			{ 13, 22, 14 },		// 147 bits per transform
+			{ 13, 23, 13 },		// 147 bits per transform
+			{ 13, 24, 4 },		// 147 bits per transform
+			{ 14, 3, 24 },		// 147 bits per transform
+			{ 14, 12, 23 },		// 147 bits per transform
+			{ 14, 13, 22 },		// 147 bits per transform
+			{ 14, 14, 21 },		// 147 bits per transform
+			{ 14, 15, 20 },		// 147 bits per transform
+			{ 14, 16, 19 },		// 147 bits per transform
+			{ 14, 17, 18 },		// 147 bits per transform
+			{ 14, 18, 17 },		// 147 bits per transform
+			{ 14, 19, 16 },		// 147 bits per transform
+			{ 14, 20, 15 },		// 147 bits per transform
+			{ 14, 21, 14 },		// 147 bits per transform
+			{ 14, 22, 13 },		// 147 bits per transform
+			{ 14, 23, 12 },		// 147 bits per transform
+			{ 14, 24, 3 },		// 147 bits per transform
+			{ 15, 2, 24 },		// 147 bits per transform
+			{ 15, 11, 23 },		// 147 bits per transform
+			{ 15, 12, 22 },		// 147 bits per transform
+			{ 15, 13, 21 },		// 147 bits per transform
+			{ 15, 14, 20 },		// 147 bits per transform
+			{ 15, 15, 19 },		// 147 bits per transform
+			{ 15, 16, 18 },		// 147 bits per transform
+			{ 15, 17, 17 },		// 147 bits per transform
+			{ 15, 18, 16 },		// 147 bits per transform
+			{ 15, 19, 15 },		// 147 bits per transform
+			{ 15, 20, 14 },		// 147 bits per transform
+			{ 15, 21, 13 },		// 147 bits per transform
+			{ 15, 22, 12 },		// 147 bits per transform
+			{ 15, 23, 11 },		// 147 bits per transform
+			{ 15, 24, 2 },		// 147 bits per transform
+			{ 16, 1, 24 },		// 147 bits per transform
+			{ 16, 10, 23 },		// 147 bits per transform
+			{ 16, 11, 22 },		// 147 bits per transform
+			{ 16, 12, 21 },		// 147 bits per transform
+			{ 16, 13, 20 },		// 147 bits per transform
+			{ 16, 14, 19 },		// 147 bits per transform
+			{ 16, 15, 18 },		// 147 bits per transform
+			{ 16, 16, 17 },		// 147 bits per transform
+			{ 16, 17, 16 },		// 147 bits per transform
+			{ 16, 18, 15 },		// 147 bits per transform
+			{ 16, 19, 14 },		// 147 bits per transform
+			{ 16, 20, 13 },		// 147 bits per transform
+			{ 16, 21, 12 },		// 147 bits per transform
+			{ 16, 22, 11 },		// 147 bits per transform
+			{ 16, 23, 10 },		// 147 bits per transform
+			{ 16, 24, 1 },		// 147 bits per transform
+			{ 17, 0, 24 },		// 147 bits per transform
+			{ 17, 9, 23 },		// 147 bits per transform
+			{ 17, 10, 22 },		// 147 bits per transform
+			{ 17, 11, 21 },		// 147 bits per transform
+			{ 17, 12, 20 },		// 147 bits per transform
+			{ 17, 13, 19 },		// 147 bits per transform
+			{ 17, 14, 18 },		// 147 bits per transform
+			{ 17, 15, 17 },		// 147 bits per transform
+			{ 17, 16, 16 },		// 147 bits per transform
+			{ 17, 17, 15 },		// 147 bits per transform
+			{ 17, 18, 14 },		// 147 bits per transform
+			{ 17, 19, 13 },		// 147 bits per transform
+			{ 17, 20, 12 },		// 147 bits per transform
+			{ 17, 21, 11 },		// 147 bits per transform
+			{ 17, 22, 10 },		// 147 bits per transform
+			{ 17, 23, 9 },		// 147 bits per transform
+			{ 17, 24, 0 },		// 147 bits per transform
+			{ 18, 8, 23 },		// 147 bits per transform
+			{ 18, 9, 22 },		// 147 bits per transform
+			{ 18, 10, 21 },		// 147 bits per transform
+			{ 18, 11, 20 },		// 147 bits per transform
+			{ 18, 12, 19 },		// 147 bits per transform
+			{ 18, 13, 18 },		// 147 bits per transform
+			{ 18, 14, 17 },		// 147 bits per transform
+			{ 18, 15, 16 },		// 147 bits per transform
+			{ 18, 16, 15 },		// 147 bits per transform
+			{ 18, 17, 14 },		// 147 bits per transform
+			{ 18, 18, 13 },		// 147 bits per transform
+			{ 18, 19, 12 },		// 147 bits per transform
+			{ 18, 20, 11 },		// 147 bits per transform
+			{ 18, 21, 10 },		// 147 bits per transform
+			{ 18, 22, 9 },		// 147 bits per transform
+			{ 18, 23, 8 },		// 147 bits per transform
+			{ 19, 7, 23 },		// 147 bits per transform
+			{ 19, 8, 22 },		// 147 bits per transform
+			{ 19, 9, 21 },		// 147 bits per transform
+			{ 19, 10, 20 },		// 147 bits per transform
+			{ 19, 11, 19 },		// 147 bits per transform
+			{ 19, 12, 18 },		// 147 bits per transform
+			{ 19, 13, 17 },		// 147 bits per transform
+			{ 19, 14, 16 },		// 147 bits per transform
+			{ 19, 15, 15 },		// 147 bits per transform
+			{ 19, 16, 14 },		// 147 bits per transform
+			{ 19, 17, 13 },		// 147 bits per transform
+			{ 19, 18, 12 },		// 147 bits per transform
+			{ 19, 19, 11 },		// 147 bits per transform
+			{ 19, 20, 10 },		// 147 bits per transform
+			{ 19, 21, 9 },		// 147 bits per transform
+			{ 19, 22, 8 },		// 147 bits per transform
+			{ 19, 23, 7 },		// 147 bits per transform
+			{ 20, 6, 23 },		// 147 bits per transform
+			{ 20, 7, 22 },		// 147 bits per transform
+			{ 20, 8, 21 },		// 147 bits per transform
+			{ 20, 9, 20 },		// 147 bits per transform
+			{ 20, 10, 19 },		// 147 bits per transform
+			{ 20, 11, 18 },		// 147 bits per transform
+			{ 20, 12, 17 },		// 147 bits per transform
+			{ 20, 13, 16 },		// 147 bits per transform
+			{ 20, 14, 15 },		// 147 bits per transform
+			{ 20, 15, 14 },		// 147 bits per transform
+			{ 20, 16, 13 },		// 147 bits per transform
+			{ 20, 17, 12 },		// 147 bits per transform
+			{ 20, 18, 11 },		// 147 bits per transform
+			{ 20, 19, 10 },		// 147 bits per transform
+			{ 20, 20, 9 },		// 147 bits per transform
+			{ 20, 21, 8 },		// 147 bits per transform
+			{ 20, 22, 7 },		// 147 bits per transform
+			{ 20, 23, 6 },		// 147 bits per transform
+			{ 21, 5, 23 },		// 147 bits per transform
+			{ 21, 6, 22 },		// 147 bits per transform
+			{ 21, 7, 21 },		// 147 bits per transform
+			{ 21, 8, 20 },		// 147 bits per transform
+			{ 21, 9, 19 },		// 147 bits per transform
+			{ 21, 10, 18 },		// 147 bits per transform
+			{ 21, 11, 17 },		// 147 bits per transform
+			{ 21, 12, 16 },		// 147 bits per transform
+			{ 21, 13, 15 },		// 147 bits per transform
+			{ 21, 14, 14 },		// 147 bits per transform
+			{ 21, 15, 13 },		// 147 bits per transform
+			{ 21, 16, 12 },		// 147 bits per transform
+			{ 21, 17, 11 },		// 147 bits per transform
+			{ 21, 18, 10 },		// 147 bits per transform
+			{ 21, 19, 9 },		// 147 bits per transform
+			{ 21, 20, 8 },		// 147 bits per transform
+			{ 21, 21, 7 },		// 147 bits per transform
+			{ 21, 22, 6 },		// 147 bits per transform
+			{ 21, 23, 5 },		// 147 bits per transform
+			{ 22, 4, 23 },		// 147 bits per transform
+			{ 22, 5, 22 },		// 147 bits per transform
+			{ 22, 6, 21 },		// 147 bits per transform
+			{ 22, 7, 20 },		// 147 bits per transform
+			{ 22, 8, 19 },		// 147 bits per transform
+			{ 22, 9, 18 },		// 147 bits per transform
+			{ 22, 10, 17 },		// 147 bits per transform
+			{ 22, 11, 16 },		// 147 bits per transform
+			{ 22, 12, 15 },		// 147 bits per transform
+			{ 22, 13, 14 },		// 147 bits per transform
+			{ 22, 14, 13 },		// 147 bits per transform
+			{ 22, 15, 12 },		// 147 bits per transform
+			{ 22, 16, 11 },		// 147 bits per transform
+			{ 22, 17, 10 },		// 147 bits per transform
+			{ 22, 18, 9 },		// 147 bits per transform
+			{ 22, 19, 8 },		// 147 bits per transform
+			{ 22, 20, 7 },		// 147 bits per transform
+			{ 22, 21, 6 },		// 147 bits per transform
+			{ 22, 22, 5 },		// 147 bits per transform
+			{ 22, 23, 4 },		// 147 bits per transform
+			{ 23, 3, 23 },		// 147 bits per transform
+			{ 23, 4, 22 },		// 147 bits per transform
+			{ 23, 5, 21 },		// 147 bits per transform
+			{ 23, 6, 20 },		// 147 bits per transform
+			{ 23, 7, 19 },		// 147 bits per transform
+			{ 23, 8, 18 },		// 147 bits per transform
+			{ 23, 9, 17 },		// 147 bits per transform
+			{ 23, 10, 16 },		// 147 bits per transform
+			{ 23, 11, 15 },		// 147 bits per transform
+			{ 23, 12, 14 },		// 147 bits per transform
+			{ 23, 13, 13 },		// 147 bits per transform
+			{ 23, 14, 12 },		// 147 bits per transform
+			{ 23, 15, 11 },		// 147 bits per transform
+			{ 23, 16, 10 },		// 147 bits per transform
+			{ 23, 17, 9 },		// 147 bits per transform
+			{ 23, 18, 8 },		// 147 bits per transform
+			{ 23, 19, 7 },		// 147 bits per transform
+			{ 23, 20, 6 },		// 147 bits per transform
+			{ 23, 21, 5 },		// 147 bits per transform
+			{ 23, 22, 4 },		// 147 bits per transform
+			{ 23, 23, 3 },		// 147 bits per transform
+			{ 24, 0, 17 },		// 147 bits per transform
+			{ 24, 1, 16 },		// 147 bits per transform
+			{ 24, 2, 15 },		// 147 bits per transform
+			{ 24, 3, 14 },		// 147 bits per transform
+			{ 24, 4, 13 },		// 147 bits per transform
+			{ 24, 5, 12 },		// 147 bits per transform
+			{ 24, 6, 11 },		// 147 bits per transform
+			{ 24, 7, 10 },		// 147 bits per transform
+			{ 24, 8, 9 },		// 147 bits per transform
+			{ 24, 9, 8 },		// 147 bits per transform
+			{ 24, 10, 7 },		// 147 bits per transform
+			{ 24, 11, 6 },		// 147 bits per transform
+			{ 24, 12, 5 },		// 147 bits per transform
+			{ 24, 13, 4 },		// 147 bits per transform
+			{ 24, 14, 3 },		// 147 bits per transform
+			{ 24, 15, 2 },		// 147 bits per transform
+			{ 24, 16, 1 },		// 147 bits per transform
+			{ 24, 17, 0 },		// 147 bits per transform
+			{ 0, 18, 24 },		// 150 bits per transform
+			{ 0, 24, 18 },		// 150 bits per transform
+			{ 1, 17, 24 },		// 150 bits per transform
+			{ 1, 24, 17 },		// 150 bits per transform
+			{ 2, 16, 24 },		// 150 bits per transform
+			{ 2, 24, 16 },		// 150 bits per transform
+			{ 3, 15, 24 },		// 150 bits per transform
+			{ 3, 24, 15 },		// 150 bits per transform
+			{ 4, 14, 24 },		// 150 bits per transform
+			{ 4, 23, 23 },		// 150 bits per transform
+			{ 4, 24, 14 },		// 150 bits per transform
+			{ 5, 13, 24 },		// 150 bits per transform
+			{ 5, 22, 23 },		// 150 bits per transform
+			{ 5, 23, 22 },		// 150 bits per transform
+			{ 5, 24, 13 },		// 150 bits per transform
+			{ 6, 12, 24 },		// 150 bits per transform
+			{ 6, 21, 23 },		// 150 bits per transform
+			{ 6, 22, 22 },		// 150 bits per transform
+			{ 6, 23, 21 },		// 150 bits per transform
+			{ 6, 24, 12 },		// 150 bits per transform
+			{ 7, 11, 24 },		// 150 bits per transform
+			{ 7, 20, 23 },		// 150 bits per transform
+			{ 7, 21, 22 },		// 150 bits per transform
+			{ 7, 22, 21 },		// 150 bits per transform
+			{ 7, 23, 20 },		// 150 bits per transform
+			{ 7, 24, 11 },		// 150 bits per transform
+			{ 8, 10, 24 },		// 150 bits per transform
+			{ 8, 19, 23 },		// 150 bits per transform
+			{ 8, 20, 22 },		// 150 bits per transform
+			{ 8, 21, 21 },		// 150 bits per transform
+			{ 8, 22, 20 },		// 150 bits per transform
+			{ 8, 23, 19 },		// 150 bits per transform
+			{ 8, 24, 10 },		// 150 bits per transform
+			{ 9, 9, 24 },		// 150 bits per transform
+			{ 9, 18, 23 },		// 150 bits per transform
+			{ 9, 19, 22 },		// 150 bits per transform
+			{ 9, 20, 21 },		// 150 bits per transform
+			{ 9, 21, 20 },		// 150 bits per transform
+			{ 9, 22, 19 },		// 150 bits per transform
+			{ 9, 23, 18 },		// 150 bits per transform
+			{ 9, 24, 9 },		// 150 bits per transform
+			{ 10, 8, 24 },		// 150 bits per transform
+			{ 10, 17, 23 },		// 150 bits per transform
+			{ 10, 18, 22 },		// 150 bits per transform
+			{ 10, 19, 21 },		// 150 bits per transform
+			{ 10, 20, 20 },		// 150 bits per transform
+			{ 10, 21, 19 },		// 150 bits per transform
+			{ 10, 22, 18 },		// 150 bits per transform
+			{ 10, 23, 17 },		// 150 bits per transform
+			{ 10, 24, 8 },		// 150 bits per transform
+			{ 11, 7, 24 },		// 150 bits per transform
+			{ 11, 16, 23 },		// 150 bits per transform
+			{ 11, 17, 22 },		// 150 bits per transform
+			{ 11, 18, 21 },		// 150 bits per transform
+			{ 11, 19, 20 },		// 150 bits per transform
+			{ 11, 20, 19 },		// 150 bits per transform
+			{ 11, 21, 18 },		// 150 bits per transform
+			{ 11, 22, 17 },		// 150 bits per transform
+			{ 11, 23, 16 },		// 150 bits per transform
+			{ 11, 24, 7 },		// 150 bits per transform
+			{ 12, 6, 24 },		// 150 bits per transform
+			{ 12, 15, 23 },		// 150 bits per transform
+			{ 12, 16, 22 },		// 150 bits per transform
+			{ 12, 17, 21 },		// 150 bits per transform
+			{ 12, 18, 20 },		// 150 bits per transform
+			{ 12, 19, 19 },		// 150 bits per transform
+			{ 12, 20, 18 },		// 150 bits per transform
+			{ 12, 21, 17 },		// 150 bits per transform
+			{ 12, 22, 16 },		// 150 bits per transform
+			{ 12, 23, 15 },		// 150 bits per transform
+			{ 12, 24, 6 },		// 150 bits per transform
+			{ 13, 5, 24 },		// 150 bits per transform
+			{ 13, 14, 23 },		// 150 bits per transform
+			{ 13, 15, 22 },		// 150 bits per transform
+			{ 13, 16, 21 },		// 150 bits per transform
+			{ 13, 17, 20 },		// 150 bits per transform
+			{ 13, 18, 19 },		// 150 bits per transform
+			{ 13, 19, 18 },		// 150 bits per transform
+			{ 13, 20, 17 },		// 150 bits per transform
+			{ 13, 21, 16 },		// 150 bits per transform
+			{ 13, 22, 15 },		// 150 bits per transform
+			{ 13, 23, 14 },		// 150 bits per transform
+			{ 13, 24, 5 },		// 150 bits per transform
+			{ 14, 4, 24 },		// 150 bits per transform
+			{ 14, 13, 23 },		// 150 bits per transform
+			{ 14, 14, 22 },		// 150 bits per transform
+			{ 14, 15, 21 },		// 150 bits per transform
+			{ 14, 16, 20 },		// 150 bits per transform
+			{ 14, 17, 19 },		// 150 bits per transform
+			{ 14, 18, 18 },		// 150 bits per transform
+			{ 14, 19, 17 },		// 150 bits per transform
+			{ 14, 20, 16 },		// 150 bits per transform
+			{ 14, 21, 15 },		// 150 bits per transform
+			{ 14, 22, 14 },		// 150 bits per transform
+			{ 14, 23, 13 },		// 150 bits per transform
+			{ 14, 24, 4 },		// 150 bits per transform
+			{ 15, 3, 24 },		// 150 bits per transform
+			{ 15, 12, 23 },		// 150 bits per transform
+			{ 15, 13, 22 },		// 150 bits per transform
+			{ 15, 14, 21 },		// 150 bits per transform
+			{ 15, 15, 20 },		// 150 bits per transform
+			{ 15, 16, 19 },		// 150 bits per transform
+			{ 15, 17, 18 },		// 150 bits per transform
+			{ 15, 18, 17 },		// 150 bits per transform
+			{ 15, 19, 16 },		// 150 bits per transform
+			{ 15, 20, 15 },		// 150 bits per transform
+			{ 15, 21, 14 },		// 150 bits per transform
+			{ 15, 22, 13 },		// 150 bits per transform
+			{ 15, 23, 12 },		// 150 bits per transform
+			{ 15, 24, 3 },		// 150 bits per transform
+			{ 16, 2, 24 },		// 150 bits per transform
+			{ 16, 11, 23 },		// 150 bits per transform
+			{ 16, 12, 22 },		// 150 bits per transform
+			{ 16, 13, 21 },		// 150 bits per transform
+			{ 16, 14, 20 },		// 150 bits per transform
+			{ 16, 15, 19 },		// 150 bits per transform
+			{ 16, 16, 18 },		// 150 bits per transform
+			{ 16, 17, 17 },		// 150 bits per transform
+			{ 16, 18, 16 },		// 150 bits per transform
+			{ 16, 19, 15 },		// 150 bits per transform
+			{ 16, 20, 14 },		// 150 bits per transform
+			{ 16, 21, 13 },		// 150 bits per transform
+			{ 16, 22, 12 },		// 150 bits per transform
+			{ 16, 23, 11 },		// 150 bits per transform
+			{ 16, 24, 2 },		// 150 bits per transform
+			{ 17, 1, 24 },		// 150 bits per transform
+			{ 17, 10, 23 },		// 150 bits per transform
+			{ 17, 11, 22 },		// 150 bits per transform
+			{ 17, 12, 21 },		// 150 bits per transform
+			{ 17, 13, 20 },		// 150 bits per transform
+			{ 17, 14, 19 },		// 150 bits per transform
+			{ 17, 15, 18 },		// 150 bits per transform
+			{ 17, 16, 17 },		// 150 bits per transform
+			{ 17, 17, 16 },		// 150 bits per transform
+			{ 17, 18, 15 },		// 150 bits per transform
+			{ 17, 19, 14 },		// 150 bits per transform
+			{ 17, 20, 13 },		// 150 bits per transform
+			{ 17, 21, 12 },		// 150 bits per transform
+			{ 17, 22, 11 },		// 150 bits per transform
+			{ 17, 23, 10 },		// 150 bits per transform
+			{ 17, 24, 1 },		// 150 bits per transform
+			{ 18, 0, 24 },		// 150 bits per transform
+			{ 18, 9, 23 },		// 150 bits per transform
+			{ 18, 10, 22 },		// 150 bits per transform
+			{ 18, 11, 21 },		// 150 bits per transform
+			{ 18, 12, 20 },		// 150 bits per transform
+			{ 18, 13, 19 },		// 150 bits per transform
+			{ 18, 14, 18 },		// 150 bits per transform
+			{ 18, 15, 17 },		// 150 bits per transform
+			{ 18, 16, 16 },		// 150 bits per transform
+			{ 18, 17, 15 },		// 150 bits per transform
+			{ 18, 18, 14 },		// 150 bits per transform
+			{ 18, 19, 13 },		// 150 bits per transform
+			{ 18, 20, 12 },		// 150 bits per transform
+			{ 18, 21, 11 },		// 150 bits per transform
+			{ 18, 22, 10 },		// 150 bits per transform
+			{ 18, 23, 9 },		// 150 bits per transform
+			{ 18, 24, 0 },		// 150 bits per transform
+			{ 19, 8, 23 },		// 150 bits per transform
+			{ 19, 9, 22 },		// 150 bits per transform
+			{ 19, 10, 21 },		// 150 bits per transform
+			{ 19, 11, 20 },		// 150 bits per transform
+			{ 19, 12, 19 },		// 150 bits per transform
+			{ 19, 13, 18 },		// 150 bits per transform
+			{ 19, 14, 17 },		// 150 bits per transform
+			{ 19, 15, 16 },		// 150 bits per transform
+			{ 19, 16, 15 },		// 150 bits per transform
+			{ 19, 17, 14 },		// 150 bits per transform
+			{ 19, 18, 13 },		// 150 bits per transform
+			{ 19, 19, 12 },		// 150 bits per transform
+			{ 19, 20, 11 },		// 150 bits per transform
+			{ 19, 21, 10 },		// 150 bits per transform
+			{ 19, 22, 9 },		// 150 bits per transform
+			{ 19, 23, 8 },		// 150 bits per transform
+			{ 20, 7, 23 },		// 150 bits per transform
+			{ 20, 8, 22 },		// 150 bits per transform
+			{ 20, 9, 21 },		// 150 bits per transform
+			{ 20, 10, 20 },		// 150 bits per transform
+			{ 20, 11, 19 },		// 150 bits per transform
+			{ 20, 12, 18 },		// 150 bits per transform
+			{ 20, 13, 17 },		// 150 bits per transform
+			{ 20, 14, 16 },		// 150 bits per transform
+			{ 20, 15, 15 },		// 150 bits per transform
+			{ 20, 16, 14 },		// 150 bits per transform
+			{ 20, 17, 13 },		// 150 bits per transform
+			{ 20, 18, 12 },		// 150 bits per transform
+			{ 20, 19, 11 },		// 150 bits per transform
+			{ 20, 20, 10 },		// 150 bits per transform
+			{ 20, 21, 9 },		// 150 bits per transform
+			{ 20, 22, 8 },		// 150 bits per transform
+			{ 20, 23, 7 },		// 150 bits per transform
+			{ 21, 6, 23 },		// 150 bits per transform
+			{ 21, 7, 22 },		// 150 bits per transform
+			{ 21, 8, 21 },		// 150 bits per transform
+			{ 21, 9, 20 },		// 150 bits per transform
+			{ 21, 10, 19 },		// 150 bits per transform
+			{ 21, 11, 18 },		// 150 bits per transform
+			{ 21, 12, 17 },		// 150 bits per transform
+			{ 21, 13, 16 },		// 150 bits per transform
+			{ 21, 14, 15 },		// 150 bits per transform
+			{ 21, 15, 14 },		// 150 bits per transform
+			{ 21, 16, 13 },		// 150 bits per transform
+			{ 21, 17, 12 },		// 150 bits per transform
+			{ 21, 18, 11 },		// 150 bits per transform
+			{ 21, 19, 10 },		// 150 bits per transform
+			{ 21, 20, 9 },		// 150 bits per transform
+			{ 21, 21, 8 },		// 150 bits per transform
+			{ 21, 22, 7 },		// 150 bits per transform
+			{ 21, 23, 6 },		// 150 bits per transform
+			{ 22, 5, 23 },		// 150 bits per transform
+			{ 22, 6, 22 },		// 150 bits per transform
+			{ 22, 7, 21 },		// 150 bits per transform
+			{ 22, 8, 20 },		// 150 bits per transform
+			{ 22, 9, 19 },		// 150 bits per transform
+			{ 22, 10, 18 },		// 150 bits per transform
+			{ 22, 11, 17 },		// 150 bits per transform
+			{ 22, 12, 16 },		// 150 bits per transform
+			{ 22, 13, 15 },		// 150 bits per transform
+			{ 22, 14, 14 },		// 150 bits per transform
+			{ 22, 15, 13 },		// 150 bits per transform
+			{ 22, 16, 12 },		// 150 bits per transform
+			{ 22, 17, 11 },		// 150 bits per transform
+			{ 22, 18, 10 },		// 150 bits per transform
+			{ 22, 19, 9 },		// 150 bits per transform
+			{ 22, 20, 8 },		// 150 bits per transform
+			{ 22, 21, 7 },		// 150 bits per transform
+			{ 22, 22, 6 },		// 150 bits per transform
+			{ 22, 23, 5 },		// 150 bits per transform
+			{ 23, 4, 23 },		// 150 bits per transform
+			{ 23, 5, 22 },		// 150 bits per transform
+			{ 23, 6, 21 },		// 150 bits per transform
+			{ 23, 7, 20 },		// 150 bits per transform
+			{ 23, 8, 19 },		// 150 bits per transform
+			{ 23, 9, 18 },		// 150 bits per transform
+			{ 23, 10, 17 },		// 150 bits per transform
+			{ 23, 11, 16 },		// 150 bits per transform
+			{ 23, 12, 15 },		// 150 bits per transform
+			{ 23, 13, 14 },		// 150 bits per transform
+			{ 23, 14, 13 },		// 150 bits per transform
+			{ 23, 15, 12 },		// 150 bits per transform
+			{ 23, 16, 11 },		// 150 bits per transform
+			{ 23, 17, 10 },		// 150 bits per transform
+			{ 23, 18, 9 },		// 150 bits per transform
+			{ 23, 19, 8 },		// 150 bits per transform
+			{ 23, 20, 7 },		// 150 bits per transform
+			{ 23, 21, 6 },		// 150 bits per transform
+			{ 23, 22, 5 },		// 150 bits per transform
+			{ 23, 23, 4 },		// 150 bits per transform
+			{ 24, 0, 18 },		// 150 bits per transform
+			{ 24, 1, 17 },		// 150 bits per transform
+			{ 24, 2, 16 },		// 150 bits per transform
+			{ 24, 3, 15 },		// 150 bits per transform
+			{ 24, 4, 14 },		// 150 bits per transform
+			{ 24, 5, 13 },		// 150 bits per transform
+			{ 24, 6, 12 },		// 150 bits per transform
+			{ 24, 7, 11 },		// 150 bits per transform
+			{ 24, 8, 10 },		// 150 bits per transform
+			{ 24, 9, 9 },		// 150 bits per transform
+			{ 24, 10, 8 },		// 150 bits per transform
+			{ 24, 11, 7 },		// 150 bits per transform
+			{ 24, 12, 6 },		// 150 bits per transform
+			{ 24, 13, 5 },		// 150 bits per transform
+			{ 24, 14, 4 },		// 150 bits per transform
+			{ 24, 15, 3 },		// 150 bits per transform
+			{ 24, 16, 2 },		// 150 bits per transform
+			{ 24, 17, 1 },		// 150 bits per transform
+			{ 24, 18, 0 },		// 150 bits per transform
+			{ 0, 19, 24 },		// 153 bits per transform
+			{ 0, 24, 19 },		// 153 bits per transform
+			{ 1, 18, 24 },		// 153 bits per transform
+			{ 1, 24, 18 },		// 153 bits per transform
+			{ 2, 17, 24 },		// 153 bits per transform
+			{ 2, 24, 17 },		// 153 bits per transform
+			{ 3, 16, 24 },		// 153 bits per transform
+			{ 3, 24, 16 },		// 153 bits per transform
+			{ 4, 15, 24 },		// 153 bits per transform
+			{ 4, 24, 15 },		// 153 bits per transform
+			{ 5, 14, 24 },		// 153 bits per transform
+			{ 5, 23, 23 },		// 153 bits per transform
+			{ 5, 24, 14 },		// 153 bits per transform
+			{ 6, 13, 24 },		// 153 bits per transform
+			{ 6, 22, 23 },		// 153 bits per transform
+			{ 6, 23, 22 },		// 153 bits per transform
+			{ 6, 24, 13 },		// 153 bits per transform
+			{ 7, 12, 24 },		// 153 bits per transform
+			{ 7, 21, 23 },		// 153 bits per transform
+			{ 7, 22, 22 },		// 153 bits per transform
+			{ 7, 23, 21 },		// 153 bits per transform
+			{ 7, 24, 12 },		// 153 bits per transform
+			{ 8, 11, 24 },		// 153 bits per transform
+			{ 8, 20, 23 },		// 153 bits per transform
+			{ 8, 21, 22 },		// 153 bits per transform
+			{ 8, 22, 21 },		// 153 bits per transform
+			{ 8, 23, 20 },		// 153 bits per transform
+			{ 8, 24, 11 },		// 153 bits per transform
+			{ 9, 10, 24 },		// 153 bits per transform
+			{ 9, 19, 23 },		// 153 bits per transform
+			{ 9, 20, 22 },		// 153 bits per transform
+			{ 9, 21, 21 },		// 153 bits per transform
+			{ 9, 22, 20 },		// 153 bits per transform
+			{ 9, 23, 19 },		// 153 bits per transform
+			{ 9, 24, 10 },		// 153 bits per transform
+			{ 10, 9, 24 },		// 153 bits per transform
+			{ 10, 18, 23 },		// 153 bits per transform
+			{ 10, 19, 22 },		// 153 bits per transform
+			{ 10, 20, 21 },		// 153 bits per transform
+			{ 10, 21, 20 },		// 153 bits per transform
+			{ 10, 22, 19 },		// 153 bits per transform
+			{ 10, 23, 18 },		// 153 bits per transform
+			{ 10, 24, 9 },		// 153 bits per transform
+			{ 11, 8, 24 },		// 153 bits per transform
+			{ 11, 17, 23 },		// 153 bits per transform
+			{ 11, 18, 22 },		// 153 bits per transform
+			{ 11, 19, 21 },		// 153 bits per transform
+			{ 11, 20, 20 },		// 153 bits per transform
+			{ 11, 21, 19 },		// 153 bits per transform
+			{ 11, 22, 18 },		// 153 bits per transform
+			{ 11, 23, 17 },		// 153 bits per transform
+			{ 11, 24, 8 },		// 153 bits per transform
+			{ 12, 7, 24 },		// 153 bits per transform
+			{ 12, 16, 23 },		// 153 bits per transform
+			{ 12, 17, 22 },		// 153 bits per transform
+			{ 12, 18, 21 },		// 153 bits per transform
+			{ 12, 19, 20 },		// 153 bits per transform
+			{ 12, 20, 19 },		// 153 bits per transform
+			{ 12, 21, 18 },		// 153 bits per transform
+			{ 12, 22, 17 },		// 153 bits per transform
+			{ 12, 23, 16 },		// 153 bits per transform
+			{ 12, 24, 7 },		// 153 bits per transform
+			{ 13, 6, 24 },		// 153 bits per transform
+			{ 13, 15, 23 },		// 153 bits per transform
+			{ 13, 16, 22 },		// 153 bits per transform
+			{ 13, 17, 21 },		// 153 bits per transform
+			{ 13, 18, 20 },		// 153 bits per transform
+			{ 13, 19, 19 },		// 153 bits per transform
+			{ 13, 20, 18 },		// 153 bits per transform
+			{ 13, 21, 17 },		// 153 bits per transform
+			{ 13, 22, 16 },		// 153 bits per transform
+			{ 13, 23, 15 },		// 153 bits per transform
+			{ 13, 24, 6 },		// 153 bits per transform
+			{ 14, 5, 24 },		// 153 bits per transform
+			{ 14, 14, 23 },		// 153 bits per transform
+			{ 14, 15, 22 },		// 153 bits per transform
+			{ 14, 16, 21 },		// 153 bits per transform
+			{ 14, 17, 20 },		// 153 bits per transform
+			{ 14, 18, 19 },		// 153 bits per transform
+			{ 14, 19, 18 },		// 153 bits per transform
+			{ 14, 20, 17 },		// 153 bits per transform
+			{ 14, 21, 16 },		// 153 bits per transform
+			{ 14, 22, 15 },		// 153 bits per transform
+			{ 14, 23, 14 },		// 153 bits per transform
+			{ 14, 24, 5 },		// 153 bits per transform
+			{ 15, 4, 24 },		// 153 bits per transform
+			{ 15, 13, 23 },		// 153 bits per transform
+			{ 15, 14, 22 },		// 153 bits per transform
+			{ 15, 15, 21 },		// 153 bits per transform
+			{ 15, 16, 20 },		// 153 bits per transform
+			{ 15, 17, 19 },		// 153 bits per transform
+			{ 15, 18, 18 },		// 153 bits per transform
+			{ 15, 19, 17 },		// 153 bits per transform
+			{ 15, 20, 16 },		// 153 bits per transform
+			{ 15, 21, 15 },		// 153 bits per transform
+			{ 15, 22, 14 },		// 153 bits per transform
+			{ 15, 23, 13 },		// 153 bits per transform
+			{ 15, 24, 4 },		// 153 bits per transform
+			{ 16, 3, 24 },		// 153 bits per transform
+			{ 16, 12, 23 },		// 153 bits per transform
+			{ 16, 13, 22 },		// 153 bits per transform
+			{ 16, 14, 21 },		// 153 bits per transform
+			{ 16, 15, 20 },		// 153 bits per transform
+			{ 16, 16, 19 },		// 153 bits per transform
+			{ 16, 17, 18 },		// 153 bits per transform
+			{ 16, 18, 17 },		// 153 bits per transform
+			{ 16, 19, 16 },		// 153 bits per transform
+			{ 16, 20, 15 },		// 153 bits per transform
+			{ 16, 21, 14 },		// 153 bits per transform
+			{ 16, 22, 13 },		// 153 bits per transform
+			{ 16, 23, 12 },		// 153 bits per transform
+			{ 16, 24, 3 },		// 153 bits per transform
+			{ 17, 2, 24 },		// 153 bits per transform
+			{ 17, 11, 23 },		// 153 bits per transform
+			{ 17, 12, 22 },		// 153 bits per transform
+			{ 17, 13, 21 },		// 153 bits per transform
+			{ 17, 14, 20 },		// 153 bits per transform
+			{ 17, 15, 19 },		// 153 bits per transform
+			{ 17, 16, 18 },		// 153 bits per transform
+			{ 17, 17, 17 },		// 153 bits per transform
+			{ 17, 18, 16 },		// 153 bits per transform
+			{ 17, 19, 15 },		// 153 bits per transform
+			{ 17, 20, 14 },		// 153 bits per transform
+			{ 17, 21, 13 },		// 153 bits per transform
+			{ 17, 22, 12 },		// 153 bits per transform
+			{ 17, 23, 11 },		// 153 bits per transform
+			{ 17, 24, 2 },		// 153 bits per transform
+			{ 18, 1, 24 },		// 153 bits per transform
+			{ 18, 10, 23 },		// 153 bits per transform
+			{ 18, 11, 22 },		// 153 bits per transform
+			{ 18, 12, 21 },		// 153 bits per transform
+			{ 18, 13, 20 },		// 153 bits per transform
+			{ 18, 14, 19 },		// 153 bits per transform
+			{ 18, 15, 18 },		// 153 bits per transform
+			{ 18, 16, 17 },		// 153 bits per transform
+			{ 18, 17, 16 },		// 153 bits per transform
+			{ 18, 18, 15 },		// 153 bits per transform
+			{ 18, 19, 14 },		// 153 bits per transform
+			{ 18, 20, 13 },		// 153 bits per transform
+			{ 18, 21, 12 },		// 153 bits per transform
+			{ 18, 22, 11 },		// 153 bits per transform
+			{ 18, 23, 10 },		// 153 bits per transform
+			{ 18, 24, 1 },		// 153 bits per transform
+			{ 19, 0, 24 },		// 153 bits per transform
+			{ 19, 9, 23 },		// 153 bits per transform
+			{ 19, 10, 22 },		// 153 bits per transform
+			{ 19, 11, 21 },		// 153 bits per transform
+			{ 19, 12, 20 },		// 153 bits per transform
+			{ 19, 13, 19 },		// 153 bits per transform
+			{ 19, 14, 18 },		// 153 bits per transform
+			{ 19, 15, 17 },		// 153 bits per transform
+			{ 19, 16, 16 },		// 153 bits per transform
+			{ 19, 17, 15 },		// 153 bits per transform
+			{ 19, 18, 14 },		// 153 bits per transform
+			{ 19, 19, 13 },		// 153 bits per transform
+			{ 19, 20, 12 },		// 153 bits per transform
+			{ 19, 21, 11 },		// 153 bits per transform
+			{ 19, 22, 10 },		// 153 bits per transform
+			{ 19, 23, 9 },		// 153 bits per transform
+			{ 19, 24, 0 },		// 153 bits per transform
+			{ 20, 8, 23 },		// 153 bits per transform
+			{ 20, 9, 22 },		// 153 bits per transform
+			{ 20, 10, 21 },		// 153 bits per transform
+			{ 20, 11, 20 },		// 153 bits per transform
+			{ 20, 12, 19 },		// 153 bits per transform
+			{ 20, 13, 18 },		// 153 bits per transform
+			{ 20, 14, 17 },		// 153 bits per transform
+			{ 20, 15, 16 },		// 153 bits per transform
+			{ 20, 16, 15 },		// 153 bits per transform
+			{ 20, 17, 14 },		// 153 bits per transform
+			{ 20, 18, 13 },		// 153 bits per transform
+			{ 20, 19, 12 },		// 153 bits per transform
+			{ 20, 20, 11 },		// 153 bits per transform
+			{ 20, 21, 10 },		// 153 bits per transform
+			{ 20, 22, 9 },		// 153 bits per transform
+			{ 20, 23, 8 },		// 153 bits per transform
+			{ 21, 7, 23 },		// 153 bits per transform
+			{ 21, 8, 22 },		// 153 bits per transform
+			{ 21, 9, 21 },		// 153 bits per transform
+			{ 21, 10, 20 },		// 153 bits per transform
+			{ 21, 11, 19 },		// 153 bits per transform
+			{ 21, 12, 18 },		// 153 bits per transform
+			{ 21, 13, 17 },		// 153 bits per transform
+			{ 21, 14, 16 },		// 153 bits per transform
+			{ 21, 15, 15 },		// 153 bits per transform
+			{ 21, 16, 14 },		// 153 bits per transform
+			{ 21, 17, 13 },		// 153 bits per transform
+			{ 21, 18, 12 },		// 153 bits per transform
+			{ 21, 19, 11 },		// 153 bits per transform
+			{ 21, 20, 10 },		// 153 bits per transform
+			{ 21, 21, 9 },		// 153 bits per transform
+			{ 21, 22, 8 },		// 153 bits per transform
+			{ 21, 23, 7 },		// 153 bits per transform
+			{ 22, 6, 23 },		// 153 bits per transform
+			{ 22, 7, 22 },		// 153 bits per transform
+			{ 22, 8, 21 },		// 153 bits per transform
+			{ 22, 9, 20 },		// 153 bits per transform
+			{ 22, 10, 19 },		// 153 bits per transform
+			{ 22, 11, 18 },		// 153 bits per transform
+			{ 22, 12, 17 },		// 153 bits per transform
+			{ 22, 13, 16 },		// 153 bits per transform
+			{ 22, 14, 15 },		// 153 bits per transform
+			{ 22, 15, 14 },		// 153 bits per transform
+			{ 22, 16, 13 },		// 153 bits per transform
+			{ 22, 17, 12 },		// 153 bits per transform
+			{ 22, 18, 11 },		// 153 bits per transform
+			{ 22, 19, 10 },		// 153 bits per transform
+			{ 22, 20, 9 },		// 153 bits per transform
+			{ 22, 21, 8 },		// 153 bits per transform
+			{ 22, 22, 7 },		// 153 bits per transform
+			{ 22, 23, 6 },		// 153 bits per transform
+			{ 23, 5, 23 },		// 153 bits per transform
+			{ 23, 6, 22 },		// 153 bits per transform
+			{ 23, 7, 21 },		// 153 bits per transform
+			{ 23, 8, 20 },		// 153 bits per transform
+			{ 23, 9, 19 },		// 153 bits per transform
+			{ 23, 10, 18 },		// 153 bits per transform
+			{ 23, 11, 17 },		// 153 bits per transform
+			{ 23, 12, 16 },		// 153 bits per transform
+			{ 23, 13, 15 },		// 153 bits per transform
+			{ 23, 14, 14 },		// 153 bits per transform
+			{ 23, 15, 13 },		// 153 bits per transform
+			{ 23, 16, 12 },		// 153 bits per transform
+			{ 23, 17, 11 },		// 153 bits per transform
+			{ 23, 18, 10 },		// 153 bits per transform
+			{ 23, 19, 9 },		// 153 bits per transform
+			{ 23, 20, 8 },		// 153 bits per transform
+			{ 23, 21, 7 },		// 153 bits per transform
+			{ 23, 22, 6 },		// 153 bits per transform
+			{ 23, 23, 5 },		// 153 bits per transform
+			{ 24, 0, 19 },		// 153 bits per transform
+			{ 24, 1, 18 },		// 153 bits per transform
+			{ 24, 2, 17 },		// 153 bits per transform
+			{ 24, 3, 16 },		// 153 bits per transform
+			{ 24, 4, 15 },		// 153 bits per transform
+			{ 24, 5, 14 },		// 153 bits per transform
+			{ 24, 6, 13 },		// 153 bits per transform
+			{ 24, 7, 12 },		// 153 bits per transform
+			{ 24, 8, 11 },		// 153 bits per transform
+			{ 24, 9, 10 },		// 153 bits per transform
+			{ 24, 10, 9 },		// 153 bits per transform
+			{ 24, 11, 8 },		// 153 bits per transform
+			{ 24, 12, 7 },		// 153 bits per transform
+			{ 24, 13, 6 },		// 153 bits per transform
+			{ 24, 14, 5 },		// 153 bits per transform
+			{ 24, 15, 4 },		// 153 bits per transform
+			{ 24, 16, 3 },		// 153 bits per transform
+			{ 24, 17, 2 },		// 153 bits per transform
+			{ 24, 18, 1 },		// 153 bits per transform
+			{ 24, 19, 0 },		// 153 bits per transform
+			{ 0, 20, 24 },		// 156 bits per transform
+			{ 0, 24, 20 },		// 156 bits per transform
+			{ 1, 19, 24 },		// 156 bits per transform
+			{ 1, 24, 19 },		// 156 bits per transform
+			{ 2, 18, 24 },		// 156 bits per transform
+			{ 2, 24, 18 },		// 156 bits per transform
+			{ 3, 17, 24 },		// 156 bits per transform
+			{ 3, 24, 17 },		// 156 bits per transform
+			{ 4, 16, 24 },		// 156 bits per transform
+			{ 4, 24, 16 },		// 156 bits per transform
+			{ 5, 15, 24 },		// 156 bits per transform
+			{ 5, 24, 15 },		// 156 bits per transform
+			{ 6, 14, 24 },		// 156 bits per transform
+			{ 6, 23, 23 },		// 156 bits per transform
+			{ 6, 24, 14 },		// 156 bits per transform
+			{ 7, 13, 24 },		// 156 bits per transform
+			{ 7, 22, 23 },		// 156 bits per transform
+			{ 7, 23, 22 },		// 156 bits per transform
+			{ 7, 24, 13 },		// 156 bits per transform
+			{ 8, 12, 24 },		// 156 bits per transform
+			{ 8, 21, 23 },		// 156 bits per transform
+			{ 8, 22, 22 },		// 156 bits per transform
+			{ 8, 23, 21 },		// 156 bits per transform
+			{ 8, 24, 12 },		// 156 bits per transform
+			{ 9, 11, 24 },		// 156 bits per transform
+			{ 9, 20, 23 },		// 156 bits per transform
+			{ 9, 21, 22 },		// 156 bits per transform
+			{ 9, 22, 21 },		// 156 bits per transform
+			{ 9, 23, 20 },		// 156 bits per transform
+			{ 9, 24, 11 },		// 156 bits per transform
+			{ 10, 10, 24 },		// 156 bits per transform
+			{ 10, 19, 23 },		// 156 bits per transform
+			{ 10, 20, 22 },		// 156 bits per transform
+			{ 10, 21, 21 },		// 156 bits per transform
+			{ 10, 22, 20 },		// 156 bits per transform
+			{ 10, 23, 19 },		// 156 bits per transform
+			{ 10, 24, 10 },		// 156 bits per transform
+			{ 11, 9, 24 },		// 156 bits per transform
+			{ 11, 18, 23 },		// 156 bits per transform
+			{ 11, 19, 22 },		// 156 bits per transform
+			{ 11, 20, 21 },		// 156 bits per transform
+			{ 11, 21, 20 },		// 156 bits per transform
+			{ 11, 22, 19 },		// 156 bits per transform
+			{ 11, 23, 18 },		// 156 bits per transform
+			{ 11, 24, 9 },		// 156 bits per transform
+			{ 12, 8, 24 },		// 156 bits per transform
+			{ 12, 17, 23 },		// 156 bits per transform
+			{ 12, 18, 22 },		// 156 bits per transform
+			{ 12, 19, 21 },		// 156 bits per transform
+			{ 12, 20, 20 },		// 156 bits per transform
+			{ 12, 21, 19 },		// 156 bits per transform
+			{ 12, 22, 18 },		// 156 bits per transform
+			{ 12, 23, 17 },		// 156 bits per transform
+			{ 12, 24, 8 },		// 156 bits per transform
+			{ 13, 7, 24 },		// 156 bits per transform
+			{ 13, 16, 23 },		// 156 bits per transform
+			{ 13, 17, 22 },		// 156 bits per transform
+			{ 13, 18, 21 },		// 156 bits per transform
+			{ 13, 19, 20 },		// 156 bits per transform
+			{ 13, 20, 19 },		// 156 bits per transform
+			{ 13, 21, 18 },		// 156 bits per transform
+			{ 13, 22, 17 },		// 156 bits per transform
+			{ 13, 23, 16 },		// 156 bits per transform
+			{ 13, 24, 7 },		// 156 bits per transform
+			{ 14, 6, 24 },		// 156 bits per transform
+			{ 14, 15, 23 },		// 156 bits per transform
+			{ 14, 16, 22 },		// 156 bits per transform
+			{ 14, 17, 21 },		// 156 bits per transform
+			{ 14, 18, 20 },		// 156 bits per transform
+			{ 14, 19, 19 },		// 156 bits per transform
+			{ 14, 20, 18 },		// 156 bits per transform
+			{ 14, 21, 17 },		// 156 bits per transform
+			{ 14, 22, 16 },		// 156 bits per transform
+			{ 14, 23, 15 },		// 156 bits per transform
+			{ 14, 24, 6 },		// 156 bits per transform
+			{ 15, 5, 24 },		// 156 bits per transform
+			{ 15, 14, 23 },		// 156 bits per transform
+			{ 15, 15, 22 },		// 156 bits per transform
+			{ 15, 16, 21 },		// 156 bits per transform
+			{ 15, 17, 20 },		// 156 bits per transform
+			{ 15, 18, 19 },		// 156 bits per transform
+			{ 15, 19, 18 },		// 156 bits per transform
+			{ 15, 20, 17 },		// 156 bits per transform
+			{ 15, 21, 16 },		// 156 bits per transform
+			{ 15, 22, 15 },		// 156 bits per transform
+			{ 15, 23, 14 },		// 156 bits per transform
+			{ 15, 24, 5 },		// 156 bits per transform
+			{ 16, 4, 24 },		// 156 bits per transform
+			{ 16, 13, 23 },		// 156 bits per transform
+			{ 16, 14, 22 },		// 156 bits per transform
+			{ 16, 15, 21 },		// 156 bits per transform
+			{ 16, 16, 20 },		// 156 bits per transform
+			{ 16, 17, 19 },		// 156 bits per transform
+			{ 16, 18, 18 },		// 156 bits per transform
+			{ 16, 19, 17 },		// 156 bits per transform
+			{ 16, 20, 16 },		// 156 bits per transform
+			{ 16, 21, 15 },		// 156 bits per transform
+			{ 16, 22, 14 },		// 156 bits per transform
+			{ 16, 23, 13 },		// 156 bits per transform
+			{ 16, 24, 4 },		// 156 bits per transform
+			{ 17, 3, 24 },		// 156 bits per transform
+			{ 17, 12, 23 },		// 156 bits per transform
+			{ 17, 13, 22 },		// 156 bits per transform
+			{ 17, 14, 21 },		// 156 bits per transform
+			{ 17, 15, 20 },		// 156 bits per transform
+			{ 17, 16, 19 },		// 156 bits per transform
+			{ 17, 17, 18 },		// 156 bits per transform
+			{ 17, 18, 17 },		// 156 bits per transform
+			{ 17, 19, 16 },		// 156 bits per transform
+			{ 17, 20, 15 },		// 156 bits per transform
+			{ 17, 21, 14 },		// 156 bits per transform
+			{ 17, 22, 13 },		// 156 bits per transform
+			{ 17, 23, 12 },		// 156 bits per transform
+			{ 17, 24, 3 },		// 156 bits per transform
+			{ 18, 2, 24 },		// 156 bits per transform
+			{ 18, 11, 23 },		// 156 bits per transform
+			{ 18, 12, 22 },		// 156 bits per transform
+			{ 18, 13, 21 },		// 156 bits per transform
+			{ 18, 14, 20 },		// 156 bits per transform
+			{ 18, 15, 19 },		// 156 bits per transform
+			{ 18, 16, 18 },		// 156 bits per transform
+			{ 18, 17, 17 },		// 156 bits per transform
+			{ 18, 18, 16 },		// 156 bits per transform
+			{ 18, 19, 15 },		// 156 bits per transform
+			{ 18, 20, 14 },		// 156 bits per transform
+			{ 18, 21, 13 },		// 156 bits per transform
+			{ 18, 22, 12 },		// 156 bits per transform
+			{ 18, 23, 11 },		// 156 bits per transform
+			{ 18, 24, 2 },		// 156 bits per transform
+			{ 19, 1, 24 },		// 156 bits per transform
+			{ 19, 10, 23 },		// 156 bits per transform
+			{ 19, 11, 22 },		// 156 bits per transform
+			{ 19, 12, 21 },		// 156 bits per transform
+			{ 19, 13, 20 },		// 156 bits per transform
+			{ 19, 14, 19 },		// 156 bits per transform
+			{ 19, 15, 18 },		// 156 bits per transform
+			{ 19, 16, 17 },		// 156 bits per transform
+			{ 19, 17, 16 },		// 156 bits per transform
+			{ 19, 18, 15 },		// 156 bits per transform
+			{ 19, 19, 14 },		// 156 bits per transform
+			{ 19, 20, 13 },		// 156 bits per transform
+			{ 19, 21, 12 },		// 156 bits per transform
+			{ 19, 22, 11 },		// 156 bits per transform
+			{ 19, 23, 10 },		// 156 bits per transform
+			{ 19, 24, 1 },		// 156 bits per transform
+			{ 20, 0, 24 },		// 156 bits per transform
+			{ 20, 9, 23 },		// 156 bits per transform
+			{ 20, 10, 22 },		// 156 bits per transform
+			{ 20, 11, 21 },		// 156 bits per transform
+			{ 20, 12, 20 },		// 156 bits per transform
+			{ 20, 13, 19 },		// 156 bits per transform
+			{ 20, 14, 18 },		// 156 bits per transform
+			{ 20, 15, 17 },		// 156 bits per transform
+			{ 20, 16, 16 },		// 156 bits per transform
+			{ 20, 17, 15 },		// 156 bits per transform
+			{ 20, 18, 14 },		// 156 bits per transform
+			{ 20, 19, 13 },		// 156 bits per transform
+			{ 20, 20, 12 },		// 156 bits per transform
+			{ 20, 21, 11 },		// 156 bits per transform
+			{ 20, 22, 10 },		// 156 bits per transform
+			{ 20, 23, 9 },		// 156 bits per transform
+			{ 20, 24, 0 },		// 156 bits per transform
+			{ 21, 8, 23 },		// 156 bits per transform
+			{ 21, 9, 22 },		// 156 bits per transform
+			{ 21, 10, 21 },		// 156 bits per transform
+			{ 21, 11, 20 },		// 156 bits per transform
+			{ 21, 12, 19 },		// 156 bits per transform
+			{ 21, 13, 18 },		// 156 bits per transform
+			{ 21, 14, 17 },		// 156 bits per transform
+			{ 21, 15, 16 },		// 156 bits per transform
+			{ 21, 16, 15 },		// 156 bits per transform
+			{ 21, 17, 14 },		// 156 bits per transform
+			{ 21, 18, 13 },		// 156 bits per transform
+			{ 21, 19, 12 },		// 156 bits per transform
+			{ 21, 20, 11 },		// 156 bits per transform
+			{ 21, 21, 10 },		// 156 bits per transform
+			{ 21, 22, 9 },		// 156 bits per transform
+			{ 21, 23, 8 },		// 156 bits per transform
+			{ 22, 7, 23 },		// 156 bits per transform
+			{ 22, 8, 22 },		// 156 bits per transform
+			{ 22, 9, 21 },		// 156 bits per transform
+			{ 22, 10, 20 },		// 156 bits per transform
+			{ 22, 11, 19 },		// 156 bits per transform
+			{ 22, 12, 18 },		// 156 bits per transform
+			{ 22, 13, 17 },		// 156 bits per transform
+			{ 22, 14, 16 },		// 156 bits per transform
+			{ 22, 15, 15 },		// 156 bits per transform
+			{ 22, 16, 14 },		// 156 bits per transform
+			{ 22, 17, 13 },		// 156 bits per transform
+			{ 22, 18, 12 },		// 156 bits per transform
+			{ 22, 19, 11 },		// 156 bits per transform
+			{ 22, 20, 10 },		// 156 bits per transform
+			{ 22, 21, 9 },		// 156 bits per transform
+			{ 22, 22, 8 },		// 156 bits per transform
+			{ 22, 23, 7 },		// 156 bits per transform
+			{ 23, 6, 23 },		// 156 bits per transform
+			{ 23, 7, 22 },		// 156 bits per transform
+			{ 23, 8, 21 },		// 156 bits per transform
+			{ 23, 9, 20 },		// 156 bits per transform
+			{ 23, 10, 19 },		// 156 bits per transform
+			{ 23, 11, 18 },		// 156 bits per transform
+			{ 23, 12, 17 },		// 156 bits per transform
+			{ 23, 13, 16 },		// 156 bits per transform
+			{ 23, 14, 15 },		// 156 bits per transform
+			{ 23, 15, 14 },		// 156 bits per transform
+			{ 23, 16, 13 },		// 156 bits per transform
+			{ 23, 17, 12 },		// 156 bits per transform
+			{ 23, 18, 11 },		// 156 bits per transform
+			{ 23, 19, 10 },		// 156 bits per transform
+			{ 23, 20, 9 },		// 156 bits per transform
+			{ 23, 21, 8 },		// 156 bits per transform
+			{ 23, 22, 7 },		// 156 bits per transform
+			{ 23, 23, 6 },		// 156 bits per transform
+			{ 24, 0, 20 },		// 156 bits per transform
+			{ 24, 1, 19 },		// 156 bits per transform
+			{ 24, 2, 18 },		// 156 bits per transform
+			{ 24, 3, 17 },		// 156 bits per transform
+			{ 24, 4, 16 },		// 156 bits per transform
+			{ 24, 5, 15 },		// 156 bits per transform
+			{ 24, 6, 14 },		// 156 bits per transform
+			{ 24, 7, 13 },		// 156 bits per transform
+			{ 24, 8, 12 },		// 156 bits per transform
+			{ 24, 9, 11 },		// 156 bits per transform
+			{ 24, 10, 10 },		// 156 bits per transform
+			{ 24, 11, 9 },		// 156 bits per transform
+			{ 24, 12, 8 },		// 156 bits per transform
+			{ 24, 13, 7 },		// 156 bits per transform
+			{ 24, 14, 6 },		// 156 bits per transform
+			{ 24, 15, 5 },		// 156 bits per transform
+			{ 24, 16, 4 },		// 156 bits per transform
+			{ 24, 17, 3 },		// 156 bits per transform
+			{ 24, 18, 2 },		// 156 bits per transform
+			{ 24, 19, 1 },		// 156 bits per transform
+			{ 24, 20, 0 },		// 156 bits per transform
+			{ 0, 21, 24 },		// 159 bits per transform
+			{ 0, 24, 21 },		// 159 bits per transform
+			{ 1, 20, 24 },		// 159 bits per transform
+			{ 1, 24, 20 },		// 159 bits per transform
+			{ 2, 19, 24 },		// 159 bits per transform
+			{ 2, 24, 19 },		// 159 bits per transform
+			{ 3, 18, 24 },		// 159 bits per transform
+			{ 3, 24, 18 },		// 159 bits per transform
+			{ 4, 17, 24 },		// 159 bits per transform
+			{ 4, 24, 17 },		// 159 bits per transform
+			{ 5, 16, 24 },		// 159 bits per transform
+			{ 5, 24, 16 },		// 159 bits per transform
+			{ 6, 15, 24 },		// 159 bits per transform
+			{ 6, 24, 15 },		// 159 bits per transform
+			{ 7, 14, 24 },		// 159 bits per transform
+			{ 7, 23, 23 },		// 159 bits per transform
+			{ 7, 24, 14 },		// 159 bits per transform
+			{ 8, 13, 24 },		// 159 bits per transform
+			{ 8, 22, 23 },		// 159 bits per transform
+			{ 8, 23, 22 },		// 159 bits per transform
+			{ 8, 24, 13 },		// 159 bits per transform
+			{ 9, 12, 24 },		// 159 bits per transform
+			{ 9, 21, 23 },		// 159 bits per transform
+			{ 9, 22, 22 },		// 159 bits per transform
+			{ 9, 23, 21 },		// 159 bits per transform
+			{ 9, 24, 12 },		// 159 bits per transform
+			{ 10, 11, 24 },		// 159 bits per transform
+			{ 10, 20, 23 },		// 159 bits per transform
+			{ 10, 21, 22 },		// 159 bits per transform
+			{ 10, 22, 21 },		// 159 bits per transform
+			{ 10, 23, 20 },		// 159 bits per transform
+			{ 10, 24, 11 },		// 159 bits per transform
+			{ 11, 10, 24 },		// 159 bits per transform
+			{ 11, 19, 23 },		// 159 bits per transform
+			{ 11, 20, 22 },		// 159 bits per transform
+			{ 11, 21, 21 },		// 159 bits per transform
+			{ 11, 22, 20 },		// 159 bits per transform
+			{ 11, 23, 19 },		// 159 bits per transform
+			{ 11, 24, 10 },		// 159 bits per transform
+			{ 12, 9, 24 },		// 159 bits per transform
+			{ 12, 18, 23 },		// 159 bits per transform
+			{ 12, 19, 22 },		// 159 bits per transform
+			{ 12, 20, 21 },		// 159 bits per transform
+			{ 12, 21, 20 },		// 159 bits per transform
+			{ 12, 22, 19 },		// 159 bits per transform
+			{ 12, 23, 18 },		// 159 bits per transform
+			{ 12, 24, 9 },		// 159 bits per transform
+			{ 13, 8, 24 },		// 159 bits per transform
+			{ 13, 17, 23 },		// 159 bits per transform
+			{ 13, 18, 22 },		// 159 bits per transform
+			{ 13, 19, 21 },		// 159 bits per transform
+			{ 13, 20, 20 },		// 159 bits per transform
+			{ 13, 21, 19 },		// 159 bits per transform
+			{ 13, 22, 18 },		// 159 bits per transform
+			{ 13, 23, 17 },		// 159 bits per transform
+			{ 13, 24, 8 },		// 159 bits per transform
+			{ 14, 7, 24 },		// 159 bits per transform
+			{ 14, 16, 23 },		// 159 bits per transform
+			{ 14, 17, 22 },		// 159 bits per transform
+			{ 14, 18, 21 },		// 159 bits per transform
+			{ 14, 19, 20 },		// 159 bits per transform
+			{ 14, 20, 19 },		// 159 bits per transform
+			{ 14, 21, 18 },		// 159 bits per transform
+			{ 14, 22, 17 },		// 159 bits per transform
+			{ 14, 23, 16 },		// 159 bits per transform
+			{ 14, 24, 7 },		// 159 bits per transform
+			{ 15, 6, 24 },		// 159 bits per transform
+			{ 15, 15, 23 },		// 159 bits per transform
+			{ 15, 16, 22 },		// 159 bits per transform
+			{ 15, 17, 21 },		// 159 bits per transform
+			{ 15, 18, 20 },		// 159 bits per transform
+			{ 15, 19, 19 },		// 159 bits per transform
+			{ 15, 20, 18 },		// 159 bits per transform
+			{ 15, 21, 17 },		// 159 bits per transform
+			{ 15, 22, 16 },		// 159 bits per transform
+			{ 15, 23, 15 },		// 159 bits per transform
+			{ 15, 24, 6 },		// 159 bits per transform
+			{ 16, 5, 24 },		// 159 bits per transform
+			{ 16, 14, 23 },		// 159 bits per transform
+			{ 16, 15, 22 },		// 159 bits per transform
+			{ 16, 16, 21 },		// 159 bits per transform
+			{ 16, 17, 20 },		// 159 bits per transform
+			{ 16, 18, 19 },		// 159 bits per transform
+			{ 16, 19, 18 },		// 159 bits per transform
+			{ 16, 20, 17 },		// 159 bits per transform
+			{ 16, 21, 16 },		// 159 bits per transform
+			{ 16, 22, 15 },		// 159 bits per transform
+			{ 16, 23, 14 },		// 159 bits per transform
+			{ 16, 24, 5 },		// 159 bits per transform
+			{ 17, 4, 24 },		// 159 bits per transform
+			{ 17, 13, 23 },		// 159 bits per transform
+			{ 17, 14, 22 },		// 159 bits per transform
+			{ 17, 15, 21 },		// 159 bits per transform
+			{ 17, 16, 20 },		// 159 bits per transform
+			{ 17, 17, 19 },		// 159 bits per transform
+			{ 17, 18, 18 },		// 159 bits per transform
+			{ 17, 19, 17 },		// 159 bits per transform
+			{ 17, 20, 16 },		// 159 bits per transform
+			{ 17, 21, 15 },		// 159 bits per transform
+			{ 17, 22, 14 },		// 159 bits per transform
+			{ 17, 23, 13 },		// 159 bits per transform
+			{ 17, 24, 4 },		// 159 bits per transform
+			{ 18, 3, 24 },		// 159 bits per transform
+			{ 18, 12, 23 },		// 159 bits per transform
+			{ 18, 13, 22 },		// 159 bits per transform
+			{ 18, 14, 21 },		// 159 bits per transform
+			{ 18, 15, 20 },		// 159 bits per transform
+			{ 18, 16, 19 },		// 159 bits per transform
+			{ 18, 17, 18 },		// 159 bits per transform
+			{ 18, 18, 17 },		// 159 bits per transform
+			{ 18, 19, 16 },		// 159 bits per transform
+			{ 18, 20, 15 },		// 159 bits per transform
+			{ 18, 21, 14 },		// 159 bits per transform
+			{ 18, 22, 13 },		// 159 bits per transform
+			{ 18, 23, 12 },		// 159 bits per transform
+			{ 18, 24, 3 },		// 159 bits per transform
+			{ 19, 2, 24 },		// 159 bits per transform
+			{ 19, 11, 23 },		// 159 bits per transform
+			{ 19, 12, 22 },		// 159 bits per transform
+			{ 19, 13, 21 },		// 159 bits per transform
+			{ 19, 14, 20 },		// 159 bits per transform
+			{ 19, 15, 19 },		// 159 bits per transform
+			{ 19, 16, 18 },		// 159 bits per transform
+			{ 19, 17, 17 },		// 159 bits per transform
+			{ 19, 18, 16 },		// 159 bits per transform
+			{ 19, 19, 15 },		// 159 bits per transform
+			{ 19, 20, 14 },		// 159 bits per transform
+			{ 19, 21, 13 },		// 159 bits per transform
+			{ 19, 22, 12 },		// 159 bits per transform
+			{ 19, 23, 11 },		// 159 bits per transform
+			{ 19, 24, 2 },		// 159 bits per transform
+			{ 20, 1, 24 },		// 159 bits per transform
+			{ 20, 10, 23 },		// 159 bits per transform
+			{ 20, 11, 22 },		// 159 bits per transform
+			{ 20, 12, 21 },		// 159 bits per transform
+			{ 20, 13, 20 },		// 159 bits per transform
+			{ 20, 14, 19 },		// 159 bits per transform
+			{ 20, 15, 18 },		// 159 bits per transform
+			{ 20, 16, 17 },		// 159 bits per transform
+			{ 20, 17, 16 },		// 159 bits per transform
+			{ 20, 18, 15 },		// 159 bits per transform
+			{ 20, 19, 14 },		// 159 bits per transform
+			{ 20, 20, 13 },		// 159 bits per transform
+			{ 20, 21, 12 },		// 159 bits per transform
+			{ 20, 22, 11 },		// 159 bits per transform
+			{ 20, 23, 10 },		// 159 bits per transform
+			{ 20, 24, 1 },		// 159 bits per transform
+			{ 21, 0, 24 },		// 159 bits per transform
+			{ 21, 9, 23 },		// 159 bits per transform
+			{ 21, 10, 22 },		// 159 bits per transform
+			{ 21, 11, 21 },		// 159 bits per transform
+			{ 21, 12, 20 },		// 159 bits per transform
+			{ 21, 13, 19 },		// 159 bits per transform
+			{ 21, 14, 18 },		// 159 bits per transform
+			{ 21, 15, 17 },		// 159 bits per transform
+			{ 21, 16, 16 },		// 159 bits per transform
+			{ 21, 17, 15 },		// 159 bits per transform
+			{ 21, 18, 14 },		// 159 bits per transform
+			{ 21, 19, 13 },		// 159 bits per transform
+			{ 21, 20, 12 },		// 159 bits per transform
+			{ 21, 21, 11 },		// 159 bits per transform
+			{ 21, 22, 10 },		// 159 bits per transform
+			{ 21, 23, 9 },		// 159 bits per transform
+			{ 21, 24, 0 },		// 159 bits per transform
+			{ 22, 8, 23 },		// 159 bits per transform
+			{ 22, 9, 22 },		// 159 bits per transform
+			{ 22, 10, 21 },		// 159 bits per transform
+			{ 22, 11, 20 },		// 159 bits per transform
+			{ 22, 12, 19 },		// 159 bits per transform
+			{ 22, 13, 18 },		// 159 bits per transform
+			{ 22, 14, 17 },		// 159 bits per transform
+			{ 22, 15, 16 },		// 159 bits per transform
+			{ 22, 16, 15 },		// 159 bits per transform
+			{ 22, 17, 14 },		// 159 bits per transform
+			{ 22, 18, 13 },		// 159 bits per transform
+			{ 22, 19, 12 },		// 159 bits per transform
+			{ 22, 20, 11 },		// 159 bits per transform
+			{ 22, 21, 10 },		// 159 bits per transform
+			{ 22, 22, 9 },		// 159 bits per transform
+			{ 22, 23, 8 },		// 159 bits per transform
+			{ 23, 7, 23 },		// 159 bits per transform
+			{ 23, 8, 22 },		// 159 bits per transform
+			{ 23, 9, 21 },		// 159 bits per transform
+			{ 23, 10, 20 },		// 159 bits per transform
+			{ 23, 11, 19 },		// 159 bits per transform
+			{ 23, 12, 18 },		// 159 bits per transform
+			{ 23, 13, 17 },		// 159 bits per transform
+			{ 23, 14, 16 },		// 159 bits per transform
+			{ 23, 15, 15 },		// 159 bits per transform
+			{ 23, 16, 14 },		// 159 bits per transform
+			{ 23, 17, 13 },		// 159 bits per transform
+			{ 23, 18, 12 },		// 159 bits per transform
+			{ 23, 19, 11 },		// 159 bits per transform
+			{ 23, 20, 10 },		// 159 bits per transform
+			{ 23, 21, 9 },		// 159 bits per transform
+			{ 23, 22, 8 },		// 159 bits per transform
+			{ 23, 23, 7 },		// 159 bits per transform
+			{ 24, 0, 21 },		// 159 bits per transform
+			{ 24, 1, 20 },		// 159 bits per transform
+			{ 24, 2, 19 },		// 159 bits per transform
+			{ 24, 3, 18 },		// 159 bits per transform
+			{ 24, 4, 17 },		// 159 bits per transform
+			{ 24, 5, 16 },		// 159 bits per transform
+			{ 24, 6, 15 },		// 159 bits per transform
+			{ 24, 7, 14 },		// 159 bits per transform
+			{ 24, 8, 13 },		// 159 bits per transform
+			{ 24, 9, 12 },		// 159 bits per transform
+			{ 24, 10, 11 },		// 159 bits per transform
+			{ 24, 11, 10 },		// 159 bits per transform
+			{ 24, 12, 9 },		// 159 bits per transform
+			{ 24, 13, 8 },		// 159 bits per transform
+			{ 24, 14, 7 },		// 159 bits per transform
+			{ 24, 15, 6 },		// 159 bits per transform
+			{ 24, 16, 5 },		// 159 bits per transform
+			{ 24, 17, 4 },		// 159 bits per transform
+			{ 24, 18, 3 },		// 159 bits per transform
+			{ 24, 19, 2 },		// 159 bits per transform
+			{ 24, 20, 1 },		// 159 bits per transform
+			{ 24, 21, 0 },		// 159 bits per transform
+			{ 0, 22, 24 },		// 162 bits per transform
+			{ 0, 24, 22 },		// 162 bits per transform
+			{ 1, 21, 24 },		// 162 bits per transform
+			{ 1, 24, 21 },		// 162 bits per transform
+			{ 2, 20, 24 },		// 162 bits per transform
+			{ 2, 24, 20 },		// 162 bits per transform
+			{ 3, 19, 24 },		// 162 bits per transform
+			{ 3, 24, 19 },		// 162 bits per transform
+			{ 4, 18, 24 },		// 162 bits per transform
+			{ 4, 24, 18 },		// 162 bits per transform
+			{ 5, 17, 24 },		// 162 bits per transform
+			{ 5, 24, 17 },		// 162 bits per transform
+			{ 6, 16, 24 },		// 162 bits per transform
+			{ 6, 24, 16 },		// 162 bits per transform
+			{ 7, 15, 24 },		// 162 bits per transform
+			{ 7, 24, 15 },		// 162 bits per transform
+			{ 8, 14, 24 },		// 162 bits per transform
+			{ 8, 23, 23 },		// 162 bits per transform
+			{ 8, 24, 14 },		// 162 bits per transform
+			{ 9, 13, 24 },		// 162 bits per transform
+			{ 9, 22, 23 },		// 162 bits per transform
+			{ 9, 23, 22 },		// 162 bits per transform
+			{ 9, 24, 13 },		// 162 bits per transform
+			{ 10, 12, 24 },		// 162 bits per transform
+			{ 10, 21, 23 },		// 162 bits per transform
+			{ 10, 22, 22 },		// 162 bits per transform
+			{ 10, 23, 21 },		// 162 bits per transform
+			{ 10, 24, 12 },		// 162 bits per transform
+			{ 11, 11, 24 },		// 162 bits per transform
+			{ 11, 20, 23 },		// 162 bits per transform
+			{ 11, 21, 22 },		// 162 bits per transform
+			{ 11, 22, 21 },		// 162 bits per transform
+			{ 11, 23, 20 },		// 162 bits per transform
+			{ 11, 24, 11 },		// 162 bits per transform
+			{ 12, 10, 24 },		// 162 bits per transform
+			{ 12, 19, 23 },		// 162 bits per transform
+			{ 12, 20, 22 },		// 162 bits per transform
+			{ 12, 21, 21 },		// 162 bits per transform
+			{ 12, 22, 20 },		// 162 bits per transform
+			{ 12, 23, 19 },		// 162 bits per transform
+			{ 12, 24, 10 },		// 162 bits per transform
+			{ 13, 9, 24 },		// 162 bits per transform
+			{ 13, 18, 23 },		// 162 bits per transform
+			{ 13, 19, 22 },		// 162 bits per transform
+			{ 13, 20, 21 },		// 162 bits per transform
+			{ 13, 21, 20 },		// 162 bits per transform
+			{ 13, 22, 19 },		// 162 bits per transform
+			{ 13, 23, 18 },		// 162 bits per transform
+			{ 13, 24, 9 },		// 162 bits per transform
+			{ 14, 8, 24 },		// 162 bits per transform
+			{ 14, 17, 23 },		// 162 bits per transform
+			{ 14, 18, 22 },		// 162 bits per transform
+			{ 14, 19, 21 },		// 162 bits per transform
+			{ 14, 20, 20 },		// 162 bits per transform
+			{ 14, 21, 19 },		// 162 bits per transform
+			{ 14, 22, 18 },		// 162 bits per transform
+			{ 14, 23, 17 },		// 162 bits per transform
+			{ 14, 24, 8 },		// 162 bits per transform
+			{ 15, 7, 24 },		// 162 bits per transform
+			{ 15, 16, 23 },		// 162 bits per transform
+			{ 15, 17, 22 },		// 162 bits per transform
+			{ 15, 18, 21 },		// 162 bits per transform
+			{ 15, 19, 20 },		// 162 bits per transform
+			{ 15, 20, 19 },		// 162 bits per transform
+			{ 15, 21, 18 },		// 162 bits per transform
+			{ 15, 22, 17 },		// 162 bits per transform
+			{ 15, 23, 16 },		// 162 bits per transform
+			{ 15, 24, 7 },		// 162 bits per transform
+			{ 16, 6, 24 },		// 162 bits per transform
+			{ 16, 15, 23 },		// 162 bits per transform
+			{ 16, 16, 22 },		// 162 bits per transform
+			{ 16, 17, 21 },		// 162 bits per transform
+			{ 16, 18, 20 },		// 162 bits per transform
+			{ 16, 19, 19 },		// 162 bits per transform
+			{ 16, 20, 18 },		// 162 bits per transform
+			{ 16, 21, 17 },		// 162 bits per transform
+			{ 16, 22, 16 },		// 162 bits per transform
+			{ 16, 23, 15 },		// 162 bits per transform
+			{ 16, 24, 6 },		// 162 bits per transform
+			{ 17, 5, 24 },		// 162 bits per transform
+			{ 17, 14, 23 },		// 162 bits per transform
+			{ 17, 15, 22 },		// 162 bits per transform
+			{ 17, 16, 21 },		// 162 bits per transform
+			{ 17, 17, 20 },		// 162 bits per transform
+			{ 17, 18, 19 },		// 162 bits per transform
+			{ 17, 19, 18 },		// 162 bits per transform
+			{ 17, 20, 17 },		// 162 bits per transform
+			{ 17, 21, 16 },		// 162 bits per transform
+			{ 17, 22, 15 },		// 162 bits per transform
+			{ 17, 23, 14 },		// 162 bits per transform
+			{ 17, 24, 5 },		// 162 bits per transform
+			{ 18, 4, 24 },		// 162 bits per transform
+			{ 18, 13, 23 },		// 162 bits per transform
+			{ 18, 14, 22 },		// 162 bits per transform
+			{ 18, 15, 21 },		// 162 bits per transform
+			{ 18, 16, 20 },		// 162 bits per transform
+			{ 18, 17, 19 },		// 162 bits per transform
+			{ 18, 18, 18 },		// 162 bits per transform
+			{ 18, 19, 17 },		// 162 bits per transform
+			{ 18, 20, 16 },		// 162 bits per transform
+			{ 18, 21, 15 },		// 162 bits per transform
+			{ 18, 22, 14 },		// 162 bits per transform
+			{ 18, 23, 13 },		// 162 bits per transform
+			{ 18, 24, 4 },		// 162 bits per transform
+			{ 19, 3, 24 },		// 162 bits per transform
+			{ 19, 12, 23 },		// 162 bits per transform
+			{ 19, 13, 22 },		// 162 bits per transform
+			{ 19, 14, 21 },		// 162 bits per transform
+			{ 19, 15, 20 },		// 162 bits per transform
+			{ 19, 16, 19 },		// 162 bits per transform
+			{ 19, 17, 18 },		// 162 bits per transform
+			{ 19, 18, 17 },		// 162 bits per transform
+			{ 19, 19, 16 },		// 162 bits per transform
+			{ 19, 20, 15 },		// 162 bits per transform
+			{ 19, 21, 14 },		// 162 bits per transform
+			{ 19, 22, 13 },		// 162 bits per transform
+			{ 19, 23, 12 },		// 162 bits per transform
+			{ 19, 24, 3 },		// 162 bits per transform
+			{ 20, 2, 24 },		// 162 bits per transform
+			{ 20, 11, 23 },		// 162 bits per transform
+			{ 20, 12, 22 },		// 162 bits per transform
+			{ 20, 13, 21 },		// 162 bits per transform
+			{ 20, 14, 20 },		// 162 bits per transform
+			{ 20, 15, 19 },		// 162 bits per transform
+			{ 20, 16, 18 },		// 162 bits per transform
+			{ 20, 17, 17 },		// 162 bits per transform
+			{ 20, 18, 16 },		// 162 bits per transform
+			{ 20, 19, 15 },		// 162 bits per transform
+			{ 20, 20, 14 },		// 162 bits per transform
+			{ 20, 21, 13 },		// 162 bits per transform
+			{ 20, 22, 12 },		// 162 bits per transform
+			{ 20, 23, 11 },		// 162 bits per transform
+			{ 20, 24, 2 },		// 162 bits per transform
+			{ 21, 1, 24 },		// 162 bits per transform
+			{ 21, 10, 23 },		// 162 bits per transform
+			{ 21, 11, 22 },		// 162 bits per transform
+			{ 21, 12, 21 },		// 162 bits per transform
+			{ 21, 13, 20 },		// 162 bits per transform
+			{ 21, 14, 19 },		// 162 bits per transform
+			{ 21, 15, 18 },		// 162 bits per transform
+			{ 21, 16, 17 },		// 162 bits per transform
+			{ 21, 17, 16 },		// 162 bits per transform
+			{ 21, 18, 15 },		// 162 bits per transform
+			{ 21, 19, 14 },		// 162 bits per transform
+			{ 21, 20, 13 },		// 162 bits per transform
+			{ 21, 21, 12 },		// 162 bits per transform
+			{ 21, 22, 11 },		// 162 bits per transform
+			{ 21, 23, 10 },		// 162 bits per transform
+			{ 21, 24, 1 },		// 162 bits per transform
+			{ 22, 0, 24 },		// 162 bits per transform
+			{ 22, 9, 23 },		// 162 bits per transform
+			{ 22, 10, 22 },		// 162 bits per transform
+			{ 22, 11, 21 },		// 162 bits per transform
+			{ 22, 12, 20 },		// 162 bits per transform
+			{ 22, 13, 19 },		// 162 bits per transform
+			{ 22, 14, 18 },		// 162 bits per transform
+			{ 22, 15, 17 },		// 162 bits per transform
+			{ 22, 16, 16 },		// 162 bits per transform
+			{ 22, 17, 15 },		// 162 bits per transform
+			{ 22, 18, 14 },		// 162 bits per transform
+			{ 22, 19, 13 },		// 162 bits per transform
+			{ 22, 20, 12 },		// 162 bits per transform
+			{ 22, 21, 11 },		// 162 bits per transform
+			{ 22, 22, 10 },		// 162 bits per transform
+			{ 22, 23, 9 },		// 162 bits per transform
+			{ 22, 24, 0 },		// 162 bits per transform
+			{ 23, 8, 23 },		// 162 bits per transform
+			{ 23, 9, 22 },		// 162 bits per transform
+			{ 23, 10, 21 },		// 162 bits per transform
+			{ 23, 11, 20 },		// 162 bits per transform
+			{ 23, 12, 19 },		// 162 bits per transform
+			{ 23, 13, 18 },		// 162 bits per transform
+			{ 23, 14, 17 },		// 162 bits per transform
+			{ 23, 15, 16 },		// 162 bits per transform
+			{ 23, 16, 15 },		// 162 bits per transform
+			{ 23, 17, 14 },		// 162 bits per transform
+			{ 23, 18, 13 },		// 162 bits per transform
+			{ 23, 19, 12 },		// 162 bits per transform
+			{ 23, 20, 11 },		// 162 bits per transform
+			{ 23, 21, 10 },		// 162 bits per transform
+			{ 23, 22, 9 },		// 162 bits per transform
+			{ 23, 23, 8 },		// 162 bits per transform
+			{ 24, 0, 22 },		// 162 bits per transform
+			{ 24, 1, 21 },		// 162 bits per transform
+			{ 24, 2, 20 },		// 162 bits per transform
+			{ 24, 3, 19 },		// 162 bits per transform
+			{ 24, 4, 18 },		// 162 bits per transform
+			{ 24, 5, 17 },		// 162 bits per transform
+			{ 24, 6, 16 },		// 162 bits per transform
+			{ 24, 7, 15 },		// 162 bits per transform
+			{ 24, 8, 14 },		// 162 bits per transform
+			{ 24, 9, 13 },		// 162 bits per transform
+			{ 24, 10, 12 },		// 162 bits per transform
+			{ 24, 11, 11 },		// 162 bits per transform
+			{ 24, 12, 10 },		// 162 bits per transform
+			{ 24, 13, 9 },		// 162 bits per transform
+			{ 24, 14, 8 },		// 162 bits per transform
+			{ 24, 15, 7 },		// 162 bits per transform
+			{ 24, 16, 6 },		// 162 bits per transform
+			{ 24, 17, 5 },		// 162 bits per transform
+			{ 24, 18, 4 },		// 162 bits per transform
+			{ 24, 19, 3 },		// 162 bits per transform
+			{ 24, 20, 2 },		// 162 bits per transform
+			{ 24, 21, 1 },		// 162 bits per transform
+			{ 24, 22, 0 },		// 162 bits per transform
+			{ 0, 23, 24 },		// 165 bits per transform
+			{ 0, 24, 23 },		// 165 bits per transform
+			{ 1, 22, 24 },		// 165 bits per transform
+			{ 1, 24, 22 },		// 165 bits per transform
+			{ 2, 21, 24 },		// 165 bits per transform
+			{ 2, 24, 21 },		// 165 bits per transform
+			{ 3, 20, 24 },		// 165 bits per transform
+			{ 3, 24, 20 },		// 165 bits per transform
+			{ 4, 19, 24 },		// 165 bits per transform
+			{ 4, 24, 19 },		// 165 bits per transform
+			{ 5, 18, 24 },		// 165 bits per transform
+			{ 5, 24, 18 },		// 165 bits per transform
+			{ 6, 17, 24 },		// 165 bits per transform
+			{ 6, 24, 17 },		// 165 bits per transform
+			{ 7, 16, 24 },		// 165 bits per transform
+			{ 7, 24, 16 },		// 165 bits per transform
+			{ 8, 15, 24 },		// 165 bits per transform
+			{ 8, 24, 15 },		// 165 bits per transform
+			{ 9, 14, 24 },		// 165 bits per transform
+			{ 9, 23, 23 },		// 165 bits per transform
+			{ 9, 24, 14 },		// 165 bits per transform
+			{ 10, 13, 24 },		// 165 bits per transform
+			{ 10, 22, 23 },		// 165 bits per transform
+			{ 10, 23, 22 },		// 165 bits per transform
+			{ 10, 24, 13 },		// 165 bits per transform
+			{ 11, 12, 24 },		// 165 bits per transform
+			{ 11, 21, 23 },		// 165 bits per transform
+			{ 11, 22, 22 },		// 165 bits per transform
+			{ 11, 23, 21 },		// 165 bits per transform
+			{ 11, 24, 12 },		// 165 bits per transform
+			{ 12, 11, 24 },		// 165 bits per transform
+			{ 12, 20, 23 },		// 165 bits per transform
+			{ 12, 21, 22 },		// 165 bits per transform
+			{ 12, 22, 21 },		// 165 bits per transform
+			{ 12, 23, 20 },		// 165 bits per transform
+			{ 12, 24, 11 },		// 165 bits per transform
+			{ 13, 10, 24 },		// 165 bits per transform
+			{ 13, 19, 23 },		// 165 bits per transform
+			{ 13, 20, 22 },		// 165 bits per transform
+			{ 13, 21, 21 },		// 165 bits per transform
+			{ 13, 22, 20 },		// 165 bits per transform
+			{ 13, 23, 19 },		// 165 bits per transform
+			{ 13, 24, 10 },		// 165 bits per transform
+			{ 14, 9, 24 },		// 165 bits per transform
+			{ 14, 18, 23 },		// 165 bits per transform
+			{ 14, 19, 22 },		// 165 bits per transform
+			{ 14, 20, 21 },		// 165 bits per transform
+			{ 14, 21, 20 },		// 165 bits per transform
+			{ 14, 22, 19 },		// 165 bits per transform
+			{ 14, 23, 18 },		// 165 bits per transform
+			{ 14, 24, 9 },		// 165 bits per transform
+			{ 15, 8, 24 },		// 165 bits per transform
+			{ 15, 17, 23 },		// 165 bits per transform
+			{ 15, 18, 22 },		// 165 bits per transform
+			{ 15, 19, 21 },		// 165 bits per transform
+			{ 15, 20, 20 },		// 165 bits per transform
+			{ 15, 21, 19 },		// 165 bits per transform
+			{ 15, 22, 18 },		// 165 bits per transform
+			{ 15, 23, 17 },		// 165 bits per transform
+			{ 15, 24, 8 },		// 165 bits per transform
+			{ 16, 7, 24 },		// 165 bits per transform
+			{ 16, 16, 23 },		// 165 bits per transform
+			{ 16, 17, 22 },		// 165 bits per transform
+			{ 16, 18, 21 },		// 165 bits per transform
+			{ 16, 19, 20 },		// 165 bits per transform
+			{ 16, 20, 19 },		// 165 bits per transform
+			{ 16, 21, 18 },		// 165 bits per transform
+			{ 16, 22, 17 },		// 165 bits per transform
+			{ 16, 23, 16 },		// 165 bits per transform
+			{ 16, 24, 7 },		// 165 bits per transform
+			{ 17, 6, 24 },		// 165 bits per transform
+			{ 17, 15, 23 },		// 165 bits per transform
+			{ 17, 16, 22 },		// 165 bits per transform
+			{ 17, 17, 21 },		// 165 bits per transform
+			{ 17, 18, 20 },		// 165 bits per transform
+			{ 17, 19, 19 },		// 165 bits per transform
+			{ 17, 20, 18 },		// 165 bits per transform
+			{ 17, 21, 17 },		// 165 bits per transform
+			{ 17, 22, 16 },		// 165 bits per transform
+			{ 17, 23, 15 },		// 165 bits per transform
+			{ 17, 24, 6 },		// 165 bits per transform
+			{ 18, 5, 24 },		// 165 bits per transform
+			{ 18, 14, 23 },		// 165 bits per transform
+			{ 18, 15, 22 },		// 165 bits per transform
+			{ 18, 16, 21 },		// 165 bits per transform
+			{ 18, 17, 20 },		// 165 bits per transform
+			{ 18, 18, 19 },		// 165 bits per transform
+			{ 18, 19, 18 },		// 165 bits per transform
+			{ 18, 20, 17 },		// 165 bits per transform
+			{ 18, 21, 16 },		// 165 bits per transform
+			{ 18, 22, 15 },		// 165 bits per transform
+			{ 18, 23, 14 },		// 165 bits per transform
+			{ 18, 24, 5 },		// 165 bits per transform
+			{ 19, 4, 24 },		// 165 bits per transform
+			{ 19, 13, 23 },		// 165 bits per transform
+			{ 19, 14, 22 },		// 165 bits per transform
+			{ 19, 15, 21 },		// 165 bits per transform
+			{ 19, 16, 20 },		// 165 bits per transform
+			{ 19, 17, 19 },		// 165 bits per transform
+			{ 19, 18, 18 },		// 165 bits per transform
+			{ 19, 19, 17 },		// 165 bits per transform
+			{ 19, 20, 16 },		// 165 bits per transform
+			{ 19, 21, 15 },		// 165 bits per transform
+			{ 19, 22, 14 },		// 165 bits per transform
+			{ 19, 23, 13 },		// 165 bits per transform
+			{ 19, 24, 4 },		// 165 bits per transform
+			{ 20, 3, 24 },		// 165 bits per transform
+			{ 20, 12, 23 },		// 165 bits per transform
+			{ 20, 13, 22 },		// 165 bits per transform
+			{ 20, 14, 21 },		// 165 bits per transform
+			{ 20, 15, 20 },		// 165 bits per transform
+			{ 20, 16, 19 },		// 165 bits per transform
+			{ 20, 17, 18 },		// 165 bits per transform
+			{ 20, 18, 17 },		// 165 bits per transform
+			{ 20, 19, 16 },		// 165 bits per transform
+			{ 20, 20, 15 },		// 165 bits per transform
+			{ 20, 21, 14 },		// 165 bits per transform
+			{ 20, 22, 13 },		// 165 bits per transform
+			{ 20, 23, 12 },		// 165 bits per transform
+			{ 20, 24, 3 },		// 165 bits per transform
+			{ 21, 2, 24 },		// 165 bits per transform
+			{ 21, 11, 23 },		// 165 bits per transform
+			{ 21, 12, 22 },		// 165 bits per transform
+			{ 21, 13, 21 },		// 165 bits per transform
+			{ 21, 14, 20 },		// 165 bits per transform
+			{ 21, 15, 19 },		// 165 bits per transform
+			{ 21, 16, 18 },		// 165 bits per transform
+			{ 21, 17, 17 },		// 165 bits per transform
+			{ 21, 18, 16 },		// 165 bits per transform
+			{ 21, 19, 15 },		// 165 bits per transform
+			{ 21, 20, 14 },		// 165 bits per transform
+			{ 21, 21, 13 },		// 165 bits per transform
+			{ 21, 22, 12 },		// 165 bits per transform
+			{ 21, 23, 11 },		// 165 bits per transform
+			{ 21, 24, 2 },		// 165 bits per transform
+			{ 22, 1, 24 },		// 165 bits per transform
+			{ 22, 10, 23 },		// 165 bits per transform
+			{ 22, 11, 22 },		// 165 bits per transform
+			{ 22, 12, 21 },		// 165 bits per transform
+			{ 22, 13, 20 },		// 165 bits per transform
+			{ 22, 14, 19 },		// 165 bits per transform
+			{ 22, 15, 18 },		// 165 bits per transform
+			{ 22, 16, 17 },		// 165 bits per transform
+			{ 22, 17, 16 },		// 165 bits per transform
+			{ 22, 18, 15 },		// 165 bits per transform
+			{ 22, 19, 14 },		// 165 bits per transform
+			{ 22, 20, 13 },		// 165 bits per transform
+			{ 22, 21, 12 },		// 165 bits per transform
+			{ 22, 22, 11 },		// 165 bits per transform
+			{ 22, 23, 10 },		// 165 bits per transform
+			{ 22, 24, 1 },		// 165 bits per transform
+			{ 23, 0, 24 },		// 165 bits per transform
+			{ 23, 9, 23 },		// 165 bits per transform
+			{ 23, 10, 22 },		// 165 bits per transform
+			{ 23, 11, 21 },		// 165 bits per transform
+			{ 23, 12, 20 },		// 165 bits per transform
+			{ 23, 13, 19 },		// 165 bits per transform
+			{ 23, 14, 18 },		// 165 bits per transform
+			{ 23, 15, 17 },		// 165 bits per transform
+			{ 23, 16, 16 },		// 165 bits per transform
+			{ 23, 17, 15 },		// 165 bits per transform
+			{ 23, 18, 14 },		// 165 bits per transform
+			{ 23, 19, 13 },		// 165 bits per transform
+			{ 23, 20, 12 },		// 165 bits per transform
+			{ 23, 21, 11 },		// 165 bits per transform
+			{ 23, 22, 10 },		// 165 bits per transform
+			{ 23, 23, 9 },		// 165 bits per transform
+			{ 23, 24, 0 },		// 165 bits per transform
+			{ 24, 0, 23 },		// 165 bits per transform
+			{ 24, 1, 22 },		// 165 bits per transform
+			{ 24, 2, 21 },		// 165 bits per transform
+			{ 24, 3, 20 },		// 165 bits per transform
+			{ 24, 4, 19 },		// 165 bits per transform
+			{ 24, 5, 18 },		// 165 bits per transform
+			{ 24, 6, 17 },		// 165 bits per transform
+			{ 24, 7, 16 },		// 165 bits per transform
+			{ 24, 8, 15 },		// 165 bits per transform
+			{ 24, 9, 14 },		// 165 bits per transform
+			{ 24, 10, 13 },		// 165 bits per transform
+			{ 24, 11, 12 },		// 165 bits per transform
+			{ 24, 12, 11 },		// 165 bits per transform
+			{ 24, 13, 10 },		// 165 bits per transform
+			{ 24, 14, 9 },		// 165 bits per transform
+			{ 24, 15, 8 },		// 165 bits per transform
+			{ 24, 16, 7 },		// 165 bits per transform
+			{ 24, 17, 6 },		// 165 bits per transform
+			{ 24, 18, 5 },		// 165 bits per transform
+			{ 24, 19, 4 },		// 165 bits per transform
+			{ 24, 20, 3 },		// 165 bits per transform
+			{ 24, 21, 2 },		// 165 bits per transform
+			{ 24, 22, 1 },		// 165 bits per transform
+			{ 24, 23, 0 },		// 165 bits per transform
+			{ 1, 23, 24 },		// 168 bits per transform
+			{ 1, 24, 23 },		// 168 bits per transform
+			{ 2, 22, 24 },		// 168 bits per transform
+			{ 2, 24, 22 },		// 168 bits per transform
+			{ 3, 21, 24 },		// 168 bits per transform
+			{ 3, 24, 21 },		// 168 bits per transform
+			{ 4, 20, 24 },		// 168 bits per transform
+			{ 4, 24, 20 },		// 168 bits per transform
+			{ 5, 19, 24 },		// 168 bits per transform
+			{ 5, 24, 19 },		// 168 bits per transform
+			{ 6, 18, 24 },		// 168 bits per transform
+			{ 6, 24, 18 },		// 168 bits per transform
+			{ 7, 17, 24 },		// 168 bits per transform
+			{ 7, 24, 17 },		// 168 bits per transform
+			{ 8, 16, 24 },		// 168 bits per transform
+			{ 8, 24, 16 },		// 168 bits per transform
+			{ 9, 15, 24 },		// 168 bits per transform
+			{ 9, 24, 15 },		// 168 bits per transform
+			{ 10, 14, 24 },		// 168 bits per transform
+			{ 10, 23, 23 },		// 168 bits per transform
+			{ 10, 24, 14 },		// 168 bits per transform
+			{ 11, 13, 24 },		// 168 bits per transform
+			{ 11, 22, 23 },		// 168 bits per transform
+			{ 11, 23, 22 },		// 168 bits per transform
+			{ 11, 24, 13 },		// 168 bits per transform
+			{ 12, 12, 24 },		// 168 bits per transform
+			{ 12, 21, 23 },		// 168 bits per transform
+			{ 12, 22, 22 },		// 168 bits per transform
+			{ 12, 23, 21 },		// 168 bits per transform
+			{ 12, 24, 12 },		// 168 bits per transform
+			{ 13, 11, 24 },		// 168 bits per transform
+			{ 13, 20, 23 },		// 168 bits per transform
+			{ 13, 21, 22 },		// 168 bits per transform
+			{ 13, 22, 21 },		// 168 bits per transform
+			{ 13, 23, 20 },		// 168 bits per transform
+			{ 13, 24, 11 },		// 168 bits per transform
+			{ 14, 10, 24 },		// 168 bits per transform
+			{ 14, 19, 23 },		// 168 bits per transform
+			{ 14, 20, 22 },		// 168 bits per transform
+			{ 14, 21, 21 },		// 168 bits per transform
+			{ 14, 22, 20 },		// 168 bits per transform
+			{ 14, 23, 19 },		// 168 bits per transform
+			{ 14, 24, 10 },		// 168 bits per transform
+			{ 15, 9, 24 },		// 168 bits per transform
+			{ 15, 18, 23 },		// 168 bits per transform
+			{ 15, 19, 22 },		// 168 bits per transform
+			{ 15, 20, 21 },		// 168 bits per transform
+			{ 15, 21, 20 },		// 168 bits per transform
+			{ 15, 22, 19 },		// 168 bits per transform
+			{ 15, 23, 18 },		// 168 bits per transform
+			{ 15, 24, 9 },		// 168 bits per transform
+			{ 16, 8, 24 },		// 168 bits per transform
+			{ 16, 17, 23 },		// 168 bits per transform
+			{ 16, 18, 22 },		// 168 bits per transform
+			{ 16, 19, 21 },		// 168 bits per transform
+			{ 16, 20, 20 },		// 168 bits per transform
+			{ 16, 21, 19 },		// 168 bits per transform
+			{ 16, 22, 18 },		// 168 bits per transform
+			{ 16, 23, 17 },		// 168 bits per transform
+			{ 16, 24, 8 },		// 168 bits per transform
+			{ 17, 7, 24 },		// 168 bits per transform
+			{ 17, 16, 23 },		// 168 bits per transform
+			{ 17, 17, 22 },		// 168 bits per transform
+			{ 17, 18, 21 },		// 168 bits per transform
+			{ 17, 19, 20 },		// 168 bits per transform
+			{ 17, 20, 19 },		// 168 bits per transform
+			{ 17, 21, 18 },		// 168 bits per transform
+			{ 17, 22, 17 },		// 168 bits per transform
+			{ 17, 23, 16 },		// 168 bits per transform
+			{ 17, 24, 7 },		// 168 bits per transform
+			{ 18, 6, 24 },		// 168 bits per transform
+			{ 18, 15, 23 },		// 168 bits per transform
+			{ 18, 16, 22 },		// 168 bits per transform
+			{ 18, 17, 21 },		// 168 bits per transform
+			{ 18, 18, 20 },		// 168 bits per transform
+			{ 18, 19, 19 },		// 168 bits per transform
+			{ 18, 20, 18 },		// 168 bits per transform
+			{ 18, 21, 17 },		// 168 bits per transform
+			{ 18, 22, 16 },		// 168 bits per transform
+			{ 18, 23, 15 },		// 168 bits per transform
+			{ 18, 24, 6 },		// 168 bits per transform
+			{ 19, 5, 24 },		// 168 bits per transform
+			{ 19, 14, 23 },		// 168 bits per transform
+			{ 19, 15, 22 },		// 168 bits per transform
+			{ 19, 16, 21 },		// 168 bits per transform
+			{ 19, 17, 20 },		// 168 bits per transform
+			{ 19, 18, 19 },		// 168 bits per transform
+			{ 19, 19, 18 },		// 168 bits per transform
+			{ 19, 20, 17 },		// 168 bits per transform
+			{ 19, 21, 16 },		// 168 bits per transform
+			{ 19, 22, 15 },		// 168 bits per transform
+			{ 19, 23, 14 },		// 168 bits per transform
+			{ 19, 24, 5 },		// 168 bits per transform
+			{ 20, 4, 24 },		// 168 bits per transform
+			{ 20, 13, 23 },		// 168 bits per transform
+			{ 20, 14, 22 },		// 168 bits per transform
+			{ 20, 15, 21 },		// 168 bits per transform
+			{ 20, 16, 20 },		// 168 bits per transform
+			{ 20, 17, 19 },		// 168 bits per transform
+			{ 20, 18, 18 },		// 168 bits per transform
+			{ 20, 19, 17 },		// 168 bits per transform
+			{ 20, 20, 16 },		// 168 bits per transform
+			{ 20, 21, 15 },		// 168 bits per transform
+			{ 20, 22, 14 },		// 168 bits per transform
+			{ 20, 23, 13 },		// 168 bits per transform
+			{ 20, 24, 4 },		// 168 bits per transform
+			{ 21, 3, 24 },		// 168 bits per transform
+			{ 21, 12, 23 },		// 168 bits per transform
+			{ 21, 13, 22 },		// 168 bits per transform
+			{ 21, 14, 21 },		// 168 bits per transform
+			{ 21, 15, 20 },		// 168 bits per transform
+			{ 21, 16, 19 },		// 168 bits per transform
+			{ 21, 17, 18 },		// 168 bits per transform
+			{ 21, 18, 17 },		// 168 bits per transform
+			{ 21, 19, 16 },		// 168 bits per transform
+			{ 21, 20, 15 },		// 168 bits per transform
+			{ 21, 21, 14 },		// 168 bits per transform
+			{ 21, 22, 13 },		// 168 bits per transform
+			{ 21, 23, 12 },		// 168 bits per transform
+			{ 21, 24, 3 },		// 168 bits per transform
+			{ 22, 2, 24 },		// 168 bits per transform
+			{ 22, 11, 23 },		// 168 bits per transform
+			{ 22, 12, 22 },		// 168 bits per transform
+			{ 22, 13, 21 },		// 168 bits per transform
+			{ 22, 14, 20 },		// 168 bits per transform
+			{ 22, 15, 19 },		// 168 bits per transform
+			{ 22, 16, 18 },		// 168 bits per transform
+			{ 22, 17, 17 },		// 168 bits per transform
+			{ 22, 18, 16 },		// 168 bits per transform
+			{ 22, 19, 15 },		// 168 bits per transform
+			{ 22, 20, 14 },		// 168 bits per transform
+			{ 22, 21, 13 },		// 168 bits per transform
+			{ 22, 22, 12 },		// 168 bits per transform
+			{ 22, 23, 11 },		// 168 bits per transform
+			{ 22, 24, 2 },		// 168 bits per transform
+			{ 23, 1, 24 },		// 168 bits per transform
+			{ 23, 10, 23 },		// 168 bits per transform
+			{ 23, 11, 22 },		// 168 bits per transform
+			{ 23, 12, 21 },		// 168 bits per transform
+			{ 23, 13, 20 },		// 168 bits per transform
+			{ 23, 14, 19 },		// 168 bits per transform
+			{ 23, 15, 18 },		// 168 bits per transform
+			{ 23, 16, 17 },		// 168 bits per transform
+			{ 23, 17, 16 },		// 168 bits per transform
+			{ 23, 18, 15 },		// 168 bits per transform
+			{ 23, 19, 14 },		// 168 bits per transform
+			{ 23, 20, 13 },		// 168 bits per transform
+			{ 23, 21, 12 },		// 168 bits per transform
+			{ 23, 22, 11 },		// 168 bits per transform
+			{ 23, 23, 10 },		// 168 bits per transform
+			{ 23, 24, 1 },		// 168 bits per transform
+			{ 24, 1, 23 },		// 168 bits per transform
+			{ 24, 2, 22 },		// 168 bits per transform
+			{ 24, 3, 21 },		// 168 bits per transform
+			{ 24, 4, 20 },		// 168 bits per transform
+			{ 24, 5, 19 },		// 168 bits per transform
+			{ 24, 6, 18 },		// 168 bits per transform
+			{ 24, 7, 17 },		// 168 bits per transform
+			{ 24, 8, 16 },		// 168 bits per transform
+			{ 24, 9, 15 },		// 168 bits per transform
+			{ 24, 10, 14 },		// 168 bits per transform
+			{ 24, 11, 13 },		// 168 bits per transform
+			{ 24, 12, 12 },		// 168 bits per transform
+			{ 24, 13, 11 },		// 168 bits per transform
+			{ 24, 14, 10 },		// 168 bits per transform
+			{ 24, 15, 9 },		// 168 bits per transform
+			{ 24, 16, 8 },		// 168 bits per transform
+			{ 24, 17, 7 },		// 168 bits per transform
+			{ 24, 18, 6 },		// 168 bits per transform
+			{ 24, 19, 5 },		// 168 bits per transform
+			{ 24, 20, 4 },		// 168 bits per transform
+			{ 24, 21, 3 },		// 168 bits per transform
+			{ 24, 22, 2 },		// 168 bits per transform
+			{ 24, 23, 1 },		// 168 bits per transform
+			{ 2, 23, 24 },		// 171 bits per transform
+			{ 2, 24, 23 },		// 171 bits per transform
+			{ 3, 22, 24 },		// 171 bits per transform
+			{ 3, 24, 22 },		// 171 bits per transform
+			{ 4, 21, 24 },		// 171 bits per transform
+			{ 4, 24, 21 },		// 171 bits per transform
+			{ 5, 20, 24 },		// 171 bits per transform
+			{ 5, 24, 20 },		// 171 bits per transform
+			{ 6, 19, 24 },		// 171 bits per transform
+			{ 6, 24, 19 },		// 171 bits per transform
+			{ 7, 18, 24 },		// 171 bits per transform
+			{ 7, 24, 18 },		// 171 bits per transform
+			{ 8, 17, 24 },		// 171 bits per transform
+			{ 8, 24, 17 },		// 171 bits per transform
+			{ 9, 16, 24 },		// 171 bits per transform
+			{ 9, 24, 16 },		// 171 bits per transform
+			{ 10, 15, 24 },		// 171 bits per transform
+			{ 10, 24, 15 },		// 171 bits per transform
+			{ 11, 14, 24 },		// 171 bits per transform
+			{ 11, 23, 23 },		// 171 bits per transform
+			{ 11, 24, 14 },		// 171 bits per transform
+			{ 12, 13, 24 },		// 171 bits per transform
+			{ 12, 22, 23 },		// 171 bits per transform
+			{ 12, 23, 22 },		// 171 bits per transform
+			{ 12, 24, 13 },		// 171 bits per transform
+			{ 13, 12, 24 },		// 171 bits per transform
+			{ 13, 21, 23 },		// 171 bits per transform
+			{ 13, 22, 22 },		// 171 bits per transform
+			{ 13, 23, 21 },		// 171 bits per transform
+			{ 13, 24, 12 },		// 171 bits per transform
+			{ 14, 11, 24 },		// 171 bits per transform
+			{ 14, 20, 23 },		// 171 bits per transform
+			{ 14, 21, 22 },		// 171 bits per transform
+			{ 14, 22, 21 },		// 171 bits per transform
+			{ 14, 23, 20 },		// 171 bits per transform
+			{ 14, 24, 11 },		// 171 bits per transform
+			{ 15, 10, 24 },		// 171 bits per transform
+			{ 15, 19, 23 },		// 171 bits per transform
+			{ 15, 20, 22 },		// 171 bits per transform
+			{ 15, 21, 21 },		// 171 bits per transform
+			{ 15, 22, 20 },		// 171 bits per transform
+			{ 15, 23, 19 },		// 171 bits per transform
+			{ 15, 24, 10 },		// 171 bits per transform
+			{ 16, 9, 24 },		// 171 bits per transform
+			{ 16, 18, 23 },		// 171 bits per transform
+			{ 16, 19, 22 },		// 171 bits per transform
+			{ 16, 20, 21 },		// 171 bits per transform
+			{ 16, 21, 20 },		// 171 bits per transform
+			{ 16, 22, 19 },		// 171 bits per transform
+			{ 16, 23, 18 },		// 171 bits per transform
+			{ 16, 24, 9 },		// 171 bits per transform
+			{ 17, 8, 24 },		// 171 bits per transform
+			{ 17, 17, 23 },		// 171 bits per transform
+			{ 17, 18, 22 },		// 171 bits per transform
+			{ 17, 19, 21 },		// 171 bits per transform
+			{ 17, 20, 20 },		// 171 bits per transform
+			{ 17, 21, 19 },		// 171 bits per transform
+			{ 17, 22, 18 },		// 171 bits per transform
+			{ 17, 23, 17 },		// 171 bits per transform
+			{ 17, 24, 8 },		// 171 bits per transform
+			{ 18, 7, 24 },		// 171 bits per transform
+			{ 18, 16, 23 },		// 171 bits per transform
+			{ 18, 17, 22 },		// 171 bits per transform
+			{ 18, 18, 21 },		// 171 bits per transform
+			{ 18, 19, 20 },		// 171 bits per transform
+			{ 18, 20, 19 },		// 171 bits per transform
+			{ 18, 21, 18 },		// 171 bits per transform
+			{ 18, 22, 17 },		// 171 bits per transform
+			{ 18, 23, 16 },		// 171 bits per transform
+			{ 18, 24, 7 },		// 171 bits per transform
+			{ 19, 6, 24 },		// 171 bits per transform
+			{ 19, 15, 23 },		// 171 bits per transform
+			{ 19, 16, 22 },		// 171 bits per transform
+			{ 19, 17, 21 },		// 171 bits per transform
+			{ 19, 18, 20 },		// 171 bits per transform
+			{ 19, 19, 19 },		// 171 bits per transform
+			{ 19, 20, 18 },		// 171 bits per transform
+			{ 19, 21, 17 },		// 171 bits per transform
+			{ 19, 22, 16 },		// 171 bits per transform
+			{ 19, 23, 15 },		// 171 bits per transform
+			{ 19, 24, 6 },		// 171 bits per transform
+			{ 20, 5, 24 },		// 171 bits per transform
+			{ 20, 14, 23 },		// 171 bits per transform
+			{ 20, 15, 22 },		// 171 bits per transform
+			{ 20, 16, 21 },		// 171 bits per transform
+			{ 20, 17, 20 },		// 171 bits per transform
+			{ 20, 18, 19 },		// 171 bits per transform
+			{ 20, 19, 18 },		// 171 bits per transform
+			{ 20, 20, 17 },		// 171 bits per transform
+			{ 20, 21, 16 },		// 171 bits per transform
+			{ 20, 22, 15 },		// 171 bits per transform
+			{ 20, 23, 14 },		// 171 bits per transform
+			{ 20, 24, 5 },		// 171 bits per transform
+			{ 21, 4, 24 },		// 171 bits per transform
+			{ 21, 13, 23 },		// 171 bits per transform
+			{ 21, 14, 22 },		// 171 bits per transform
+			{ 21, 15, 21 },		// 171 bits per transform
+			{ 21, 16, 20 },		// 171 bits per transform
+			{ 21, 17, 19 },		// 171 bits per transform
+			{ 21, 18, 18 },		// 171 bits per transform
+			{ 21, 19, 17 },		// 171 bits per transform
+			{ 21, 20, 16 },		// 171 bits per transform
+			{ 21, 21, 15 },		// 171 bits per transform
+			{ 21, 22, 14 },		// 171 bits per transform
+			{ 21, 23, 13 },		// 171 bits per transform
+			{ 21, 24, 4 },		// 171 bits per transform
+			{ 22, 3, 24 },		// 171 bits per transform
+			{ 22, 12, 23 },		// 171 bits per transform
+			{ 22, 13, 22 },		// 171 bits per transform
+			{ 22, 14, 21 },		// 171 bits per transform
+			{ 22, 15, 20 },		// 171 bits per transform
+			{ 22, 16, 19 },		// 171 bits per transform
+			{ 22, 17, 18 },		// 171 bits per transform
+			{ 22, 18, 17 },		// 171 bits per transform
+			{ 22, 19, 16 },		// 171 bits per transform
+			{ 22, 20, 15 },		// 171 bits per transform
+			{ 22, 21, 14 },		// 171 bits per transform
+			{ 22, 22, 13 },		// 171 bits per transform
+			{ 22, 23, 12 },		// 171 bits per transform
+			{ 22, 24, 3 },		// 171 bits per transform
+			{ 23, 2, 24 },		// 171 bits per transform
+			{ 23, 11, 23 },		// 171 bits per transform
+			{ 23, 12, 22 },		// 171 bits per transform
+			{ 23, 13, 21 },		// 171 bits per transform
+			{ 23, 14, 20 },		// 171 bits per transform
+			{ 23, 15, 19 },		// 171 bits per transform
+			{ 23, 16, 18 },		// 171 bits per transform
+			{ 23, 17, 17 },		// 171 bits per transform
+			{ 23, 18, 16 },		// 171 bits per transform
+			{ 23, 19, 15 },		// 171 bits per transform
+			{ 23, 20, 14 },		// 171 bits per transform
+			{ 23, 21, 13 },		// 171 bits per transform
+			{ 23, 22, 12 },		// 171 bits per transform
+			{ 23, 23, 11 },		// 171 bits per transform
+			{ 23, 24, 2 },		// 171 bits per transform
+			{ 24, 2, 23 },		// 171 bits per transform
+			{ 24, 3, 22 },		// 171 bits per transform
+			{ 24, 4, 21 },		// 171 bits per transform
+			{ 24, 5, 20 },		// 171 bits per transform
+			{ 24, 6, 19 },		// 171 bits per transform
+			{ 24, 7, 18 },		// 171 bits per transform
+			{ 24, 8, 17 },		// 171 bits per transform
+			{ 24, 9, 16 },		// 171 bits per transform
+			{ 24, 10, 15 },		// 171 bits per transform
+			{ 24, 11, 14 },		// 171 bits per transform
+			{ 24, 12, 13 },		// 171 bits per transform
+			{ 24, 13, 12 },		// 171 bits per transform
+			{ 24, 14, 11 },		// 171 bits per transform
+			{ 24, 15, 10 },		// 171 bits per transform
+			{ 24, 16, 9 },		// 171 bits per transform
+			{ 24, 17, 8 },		// 171 bits per transform
+			{ 24, 18, 7 },		// 171 bits per transform
+			{ 24, 19, 6 },		// 171 bits per transform
+			{ 24, 20, 5 },		// 171 bits per transform
+			{ 24, 21, 4 },		// 171 bits per transform
+			{ 24, 22, 3 },		// 171 bits per transform
+			{ 24, 23, 2 },		// 171 bits per transform
+			{ 3, 23, 24 },		// 174 bits per transform
+			{ 3, 24, 23 },		// 174 bits per transform
+			{ 4, 22, 24 },		// 174 bits per transform
+			{ 4, 24, 22 },		// 174 bits per transform
+			{ 5, 21, 24 },		// 174 bits per transform
+			{ 5, 24, 21 },		// 174 bits per transform
+			{ 6, 20, 24 },		// 174 bits per transform
+			{ 6, 24, 20 },		// 174 bits per transform
+			{ 7, 19, 24 },		// 174 bits per transform
+			{ 7, 24, 19 },		// 174 bits per transform
+			{ 8, 18, 24 },		// 174 bits per transform
+			{ 8, 24, 18 },		// 174 bits per transform
+			{ 9, 17, 24 },		// 174 bits per transform
+			{ 9, 24, 17 },		// 174 bits per transform
+			{ 10, 16, 24 },		// 174 bits per transform
+			{ 10, 24, 16 },		// 174 bits per transform
+			{ 11, 15, 24 },		// 174 bits per transform
+			{ 11, 24, 15 },		// 174 bits per transform
+			{ 12, 14, 24 },		// 174 bits per transform
+			{ 12, 23, 23 },		// 174 bits per transform
+			{ 12, 24, 14 },		// 174 bits per transform
+			{ 13, 13, 24 },		// 174 bits per transform
+			{ 13, 22, 23 },		// 174 bits per transform
+			{ 13, 23, 22 },		// 174 bits per transform
+			{ 13, 24, 13 },		// 174 bits per transform
+			{ 14, 12, 24 },		// 174 bits per transform
+			{ 14, 21, 23 },		// 174 bits per transform
+			{ 14, 22, 22 },		// 174 bits per transform
+			{ 14, 23, 21 },		// 174 bits per transform
+			{ 14, 24, 12 },		// 174 bits per transform
+			{ 15, 11, 24 },		// 174 bits per transform
+			{ 15, 20, 23 },		// 174 bits per transform
+			{ 15, 21, 22 },		// 174 bits per transform
+			{ 15, 22, 21 },		// 174 bits per transform
+			{ 15, 23, 20 },		// 174 bits per transform
+			{ 15, 24, 11 },		// 174 bits per transform
+			{ 16, 10, 24 },		// 174 bits per transform
+			{ 16, 19, 23 },		// 174 bits per transform
+			{ 16, 20, 22 },		// 174 bits per transform
+			{ 16, 21, 21 },		// 174 bits per transform
+			{ 16, 22, 20 },		// 174 bits per transform
+			{ 16, 23, 19 },		// 174 bits per transform
+			{ 16, 24, 10 },		// 174 bits per transform
+			{ 17, 9, 24 },		// 174 bits per transform
+			{ 17, 18, 23 },		// 174 bits per transform
+			{ 17, 19, 22 },		// 174 bits per transform
+			{ 17, 20, 21 },		// 174 bits per transform
+			{ 17, 21, 20 },		// 174 bits per transform
+			{ 17, 22, 19 },		// 174 bits per transform
+			{ 17, 23, 18 },		// 174 bits per transform
+			{ 17, 24, 9 },		// 174 bits per transform
+			{ 18, 8, 24 },		// 174 bits per transform
+			{ 18, 17, 23 },		// 174 bits per transform
+			{ 18, 18, 22 },		// 174 bits per transform
+			{ 18, 19, 21 },		// 174 bits per transform
+			{ 18, 20, 20 },		// 174 bits per transform
+			{ 18, 21, 19 },		// 174 bits per transform
+			{ 18, 22, 18 },		// 174 bits per transform
+			{ 18, 23, 17 },		// 174 bits per transform
+			{ 18, 24, 8 },		// 174 bits per transform
+			{ 19, 7, 24 },		// 174 bits per transform
+			{ 19, 16, 23 },		// 174 bits per transform
+			{ 19, 17, 22 },		// 174 bits per transform
+			{ 19, 18, 21 },		// 174 bits per transform
+			{ 19, 19, 20 },		// 174 bits per transform
+			{ 19, 20, 19 },		// 174 bits per transform
+			{ 19, 21, 18 },		// 174 bits per transform
+			{ 19, 22, 17 },		// 174 bits per transform
+			{ 19, 23, 16 },		// 174 bits per transform
+			{ 19, 24, 7 },		// 174 bits per transform
+			{ 20, 6, 24 },		// 174 bits per transform
+			{ 20, 15, 23 },		// 174 bits per transform
+			{ 20, 16, 22 },		// 174 bits per transform
+			{ 20, 17, 21 },		// 174 bits per transform
+			{ 20, 18, 20 },		// 174 bits per transform
+			{ 20, 19, 19 },		// 174 bits per transform
+			{ 20, 20, 18 },		// 174 bits per transform
+			{ 20, 21, 17 },		// 174 bits per transform
+			{ 20, 22, 16 },		// 174 bits per transform
+			{ 20, 23, 15 },		// 174 bits per transform
+			{ 20, 24, 6 },		// 174 bits per transform
+			{ 21, 5, 24 },		// 174 bits per transform
+			{ 21, 14, 23 },		// 174 bits per transform
+			{ 21, 15, 22 },		// 174 bits per transform
+			{ 21, 16, 21 },		// 174 bits per transform
+			{ 21, 17, 20 },		// 174 bits per transform
+			{ 21, 18, 19 },		// 174 bits per transform
+			{ 21, 19, 18 },		// 174 bits per transform
+			{ 21, 20, 17 },		// 174 bits per transform
+			{ 21, 21, 16 },		// 174 bits per transform
+			{ 21, 22, 15 },		// 174 bits per transform
+			{ 21, 23, 14 },		// 174 bits per transform
+			{ 21, 24, 5 },		// 174 bits per transform
+			{ 22, 4, 24 },		// 174 bits per transform
+			{ 22, 13, 23 },		// 174 bits per transform
+			{ 22, 14, 22 },		// 174 bits per transform
+			{ 22, 15, 21 },		// 174 bits per transform
+			{ 22, 16, 20 },		// 174 bits per transform
+			{ 22, 17, 19 },		// 174 bits per transform
+			{ 22, 18, 18 },		// 174 bits per transform
+			{ 22, 19, 17 },		// 174 bits per transform
+			{ 22, 20, 16 },		// 174 bits per transform
+			{ 22, 21, 15 },		// 174 bits per transform
+			{ 22, 22, 14 },		// 174 bits per transform
+			{ 22, 23, 13 },		// 174 bits per transform
+			{ 22, 24, 4 },		// 174 bits per transform
+			{ 23, 3, 24 },		// 174 bits per transform
+			{ 23, 12, 23 },		// 174 bits per transform
+			{ 23, 13, 22 },		// 174 bits per transform
+			{ 23, 14, 21 },		// 174 bits per transform
+			{ 23, 15, 20 },		// 174 bits per transform
+			{ 23, 16, 19 },		// 174 bits per transform
+			{ 23, 17, 18 },		// 174 bits per transform
+			{ 23, 18, 17 },		// 174 bits per transform
+			{ 23, 19, 16 },		// 174 bits per transform
+			{ 23, 20, 15 },		// 174 bits per transform
+			{ 23, 21, 14 },		// 174 bits per transform
+			{ 23, 22, 13 },		// 174 bits per transform
+			{ 23, 23, 12 },		// 174 bits per transform
+			{ 23, 24, 3 },		// 174 bits per transform
+			{ 24, 3, 23 },		// 174 bits per transform
+			{ 24, 4, 22 },		// 174 bits per transform
+			{ 24, 5, 21 },		// 174 bits per transform
+			{ 24, 6, 20 },		// 174 bits per transform
+			{ 24, 7, 19 },		// 174 bits per transform
+			{ 24, 8, 18 },		// 174 bits per transform
+			{ 24, 9, 17 },		// 174 bits per transform
+			{ 24, 10, 16 },		// 174 bits per transform
+			{ 24, 11, 15 },		// 174 bits per transform
+			{ 24, 12, 14 },		// 174 bits per transform
+			{ 24, 13, 13 },		// 174 bits per transform
+			{ 24, 14, 12 },		// 174 bits per transform
+			{ 24, 15, 11 },		// 174 bits per transform
+			{ 24, 16, 10 },		// 174 bits per transform
+			{ 24, 17, 9 },		// 174 bits per transform
+			{ 24, 18, 8 },		// 174 bits per transform
+			{ 24, 19, 7 },		// 174 bits per transform
+			{ 24, 20, 6 },		// 174 bits per transform
+			{ 24, 21, 5 },		// 174 bits per transform
+			{ 24, 22, 4 },		// 174 bits per transform
+			{ 24, 23, 3 },		// 174 bits per transform
+			{ 4, 23, 24 },		// 177 bits per transform
+			{ 4, 24, 23 },		// 177 bits per transform
+			{ 5, 22, 24 },		// 177 bits per transform
+			{ 5, 24, 22 },		// 177 bits per transform
+			{ 6, 21, 24 },		// 177 bits per transform
+			{ 6, 24, 21 },		// 177 bits per transform
+			{ 7, 20, 24 },		// 177 bits per transform
+			{ 7, 24, 20 },		// 177 bits per transform
+			{ 8, 19, 24 },		// 177 bits per transform
+			{ 8, 24, 19 },		// 177 bits per transform
+			{ 9, 18, 24 },		// 177 bits per transform
+			{ 9, 24, 18 },		// 177 bits per transform
+			{ 10, 17, 24 },		// 177 bits per transform
+			{ 10, 24, 17 },		// 177 bits per transform
+			{ 11, 16, 24 },		// 177 bits per transform
+			{ 11, 24, 16 },		// 177 bits per transform
+			{ 12, 15, 24 },		// 177 bits per transform
+			{ 12, 24, 15 },		// 177 bits per transform
+			{ 13, 14, 24 },		// 177 bits per transform
+			{ 13, 23, 23 },		// 177 bits per transform
+			{ 13, 24, 14 },		// 177 bits per transform
+			{ 14, 13, 24 },		// 177 bits per transform
+			{ 14, 22, 23 },		// 177 bits per transform
+			{ 14, 23, 22 },		// 177 bits per transform
+			{ 14, 24, 13 },		// 177 bits per transform
+			{ 15, 12, 24 },		// 177 bits per transform
+			{ 15, 21, 23 },		// 177 bits per transform
+			{ 15, 22, 22 },		// 177 bits per transform
+			{ 15, 23, 21 },		// 177 bits per transform
+			{ 15, 24, 12 },		// 177 bits per transform
+			{ 16, 11, 24 },		// 177 bits per transform
+			{ 16, 20, 23 },		// 177 bits per transform
+			{ 16, 21, 22 },		// 177 bits per transform
+			{ 16, 22, 21 },		// 177 bits per transform
+			{ 16, 23, 20 },		// 177 bits per transform
+			{ 16, 24, 11 },		// 177 bits per transform
+			{ 17, 10, 24 },		// 177 bits per transform
+			{ 17, 19, 23 },		// 177 bits per transform
+			{ 17, 20, 22 },		// 177 bits per transform
+			{ 17, 21, 21 },		// 177 bits per transform
+			{ 17, 22, 20 },		// 177 bits per transform
+			{ 17, 23, 19 },		// 177 bits per transform
+			{ 17, 24, 10 },		// 177 bits per transform
+			{ 18, 9, 24 },		// 177 bits per transform
+			{ 18, 18, 23 },		// 177 bits per transform
+			{ 18, 19, 22 },		// 177 bits per transform
+			{ 18, 20, 21 },		// 177 bits per transform
+			{ 18, 21, 20 },		// 177 bits per transform
+			{ 18, 22, 19 },		// 177 bits per transform
+			{ 18, 23, 18 },		// 177 bits per transform
+			{ 18, 24, 9 },		// 177 bits per transform
+			{ 19, 8, 24 },		// 177 bits per transform
+			{ 19, 17, 23 },		// 177 bits per transform
+			{ 19, 18, 22 },		// 177 bits per transform
+			{ 19, 19, 21 },		// 177 bits per transform
+			{ 19, 20, 20 },		// 177 bits per transform
+			{ 19, 21, 19 },		// 177 bits per transform
+			{ 19, 22, 18 },		// 177 bits per transform
+			{ 19, 23, 17 },		// 177 bits per transform
+			{ 19, 24, 8 },		// 177 bits per transform
+			{ 20, 7, 24 },		// 177 bits per transform
+			{ 20, 16, 23 },		// 177 bits per transform
+			{ 20, 17, 22 },		// 177 bits per transform
+			{ 20, 18, 21 },		// 177 bits per transform
+			{ 20, 19, 20 },		// 177 bits per transform
+			{ 20, 20, 19 },		// 177 bits per transform
+			{ 20, 21, 18 },		// 177 bits per transform
+			{ 20, 22, 17 },		// 177 bits per transform
+			{ 20, 23, 16 },		// 177 bits per transform
+			{ 20, 24, 7 },		// 177 bits per transform
+			{ 21, 6, 24 },		// 177 bits per transform
+			{ 21, 15, 23 },		// 177 bits per transform
+			{ 21, 16, 22 },		// 177 bits per transform
+			{ 21, 17, 21 },		// 177 bits per transform
+			{ 21, 18, 20 },		// 177 bits per transform
+			{ 21, 19, 19 },		// 177 bits per transform
+			{ 21, 20, 18 },		// 177 bits per transform
+			{ 21, 21, 17 },		// 177 bits per transform
+			{ 21, 22, 16 },		// 177 bits per transform
+			{ 21, 23, 15 },		// 177 bits per transform
+			{ 21, 24, 6 },		// 177 bits per transform
+			{ 22, 5, 24 },		// 177 bits per transform
+			{ 22, 14, 23 },		// 177 bits per transform
+			{ 22, 15, 22 },		// 177 bits per transform
+			{ 22, 16, 21 },		// 177 bits per transform
+			{ 22, 17, 20 },		// 177 bits per transform
+			{ 22, 18, 19 },		// 177 bits per transform
+			{ 22, 19, 18 },		// 177 bits per transform
+			{ 22, 20, 17 },		// 177 bits per transform
+			{ 22, 21, 16 },		// 177 bits per transform
+			{ 22, 22, 15 },		// 177 bits per transform
+			{ 22, 23, 14 },		// 177 bits per transform
+			{ 22, 24, 5 },		// 177 bits per transform
+			{ 23, 4, 24 },		// 177 bits per transform
+			{ 23, 13, 23 },		// 177 bits per transform
+			{ 23, 14, 22 },		// 177 bits per transform
+			{ 23, 15, 21 },		// 177 bits per transform
+			{ 23, 16, 20 },		// 177 bits per transform
+			{ 23, 17, 19 },		// 177 bits per transform
+			{ 23, 18, 18 },		// 177 bits per transform
+			{ 23, 19, 17 },		// 177 bits per transform
+			{ 23, 20, 16 },		// 177 bits per transform
+			{ 23, 21, 15 },		// 177 bits per transform
+			{ 23, 22, 14 },		// 177 bits per transform
+			{ 23, 23, 13 },		// 177 bits per transform
+			{ 23, 24, 4 },		// 177 bits per transform
+			{ 24, 4, 23 },		// 177 bits per transform
+			{ 24, 5, 22 },		// 177 bits per transform
+			{ 24, 6, 21 },		// 177 bits per transform
+			{ 24, 7, 20 },		// 177 bits per transform
+			{ 24, 8, 19 },		// 177 bits per transform
+			{ 24, 9, 18 },		// 177 bits per transform
+			{ 24, 10, 17 },		// 177 bits per transform
+			{ 24, 11, 16 },		// 177 bits per transform
+			{ 24, 12, 15 },		// 177 bits per transform
+			{ 24, 13, 14 },		// 177 bits per transform
+			{ 24, 14, 13 },		// 177 bits per transform
+			{ 24, 15, 12 },		// 177 bits per transform
+			{ 24, 16, 11 },		// 177 bits per transform
+			{ 24, 17, 10 },		// 177 bits per transform
+			{ 24, 18, 9 },		// 177 bits per transform
+			{ 24, 19, 8 },		// 177 bits per transform
+			{ 24, 20, 7 },		// 177 bits per transform
+			{ 24, 21, 6 },		// 177 bits per transform
+			{ 24, 22, 5 },		// 177 bits per transform
+			{ 24, 23, 4 },		// 177 bits per transform
+			{ 5, 23, 24 },		// 180 bits per transform
+			{ 5, 24, 23 },		// 180 bits per transform
+			{ 6, 22, 24 },		// 180 bits per transform
+			{ 6, 24, 22 },		// 180 bits per transform
+			{ 7, 21, 24 },		// 180 bits per transform
+			{ 7, 24, 21 },		// 180 bits per transform
+			{ 8, 20, 24 },		// 180 bits per transform
+			{ 8, 24, 20 },		// 180 bits per transform
+			{ 9, 19, 24 },		// 180 bits per transform
+			{ 9, 24, 19 },		// 180 bits per transform
+			{ 10, 18, 24 },		// 180 bits per transform
+			{ 10, 24, 18 },		// 180 bits per transform
+			{ 11, 17, 24 },		// 180 bits per transform
+			{ 11, 24, 17 },		// 180 bits per transform
+			{ 12, 16, 24 },		// 180 bits per transform
+			{ 12, 24, 16 },		// 180 bits per transform
+			{ 13, 15, 24 },		// 180 bits per transform
+			{ 13, 24, 15 },		// 180 bits per transform
+			{ 14, 14, 24 },		// 180 bits per transform
+			{ 14, 23, 23 },		// 180 bits per transform
+			{ 14, 24, 14 },		// 180 bits per transform
+			{ 15, 13, 24 },		// 180 bits per transform
+			{ 15, 22, 23 },		// 180 bits per transform
+			{ 15, 23, 22 },		// 180 bits per transform
+			{ 15, 24, 13 },		// 180 bits per transform
+			{ 16, 12, 24 },		// 180 bits per transform
+			{ 16, 21, 23 },		// 180 bits per transform
+			{ 16, 22, 22 },		// 180 bits per transform
+			{ 16, 23, 21 },		// 180 bits per transform
+			{ 16, 24, 12 },		// 180 bits per transform
+			{ 17, 11, 24 },		// 180 bits per transform
+			{ 17, 20, 23 },		// 180 bits per transform
+			{ 17, 21, 22 },		// 180 bits per transform
+			{ 17, 22, 21 },		// 180 bits per transform
+			{ 17, 23, 20 },		// 180 bits per transform
+			{ 17, 24, 11 },		// 180 bits per transform
+			{ 18, 10, 24 },		// 180 bits per transform
+			{ 18, 19, 23 },		// 180 bits per transform
+			{ 18, 20, 22 },		// 180 bits per transform
+			{ 18, 21, 21 },		// 180 bits per transform
+			{ 18, 22, 20 },		// 180 bits per transform
+			{ 18, 23, 19 },		// 180 bits per transform
+			{ 18, 24, 10 },		// 180 bits per transform
+			{ 19, 9, 24 },		// 180 bits per transform
+			{ 19, 18, 23 },		// 180 bits per transform
+			{ 19, 19, 22 },		// 180 bits per transform
+			{ 19, 20, 21 },		// 180 bits per transform
+			{ 19, 21, 20 },		// 180 bits per transform
+			{ 19, 22, 19 },		// 180 bits per transform
+			{ 19, 23, 18 },		// 180 bits per transform
+			{ 19, 24, 9 },		// 180 bits per transform
+			{ 20, 8, 24 },		// 180 bits per transform
+			{ 20, 17, 23 },		// 180 bits per transform
+			{ 20, 18, 22 },		// 180 bits per transform
+			{ 20, 19, 21 },		// 180 bits per transform
+			{ 20, 20, 20 },		// 180 bits per transform
+			{ 20, 21, 19 },		// 180 bits per transform
+			{ 20, 22, 18 },		// 180 bits per transform
+			{ 20, 23, 17 },		// 180 bits per transform
+			{ 20, 24, 8 },		// 180 bits per transform
+			{ 21, 7, 24 },		// 180 bits per transform
+			{ 21, 16, 23 },		// 180 bits per transform
+			{ 21, 17, 22 },		// 180 bits per transform
+			{ 21, 18, 21 },		// 180 bits per transform
+			{ 21, 19, 20 },		// 180 bits per transform
+			{ 21, 20, 19 },		// 180 bits per transform
+			{ 21, 21, 18 },		// 180 bits per transform
+			{ 21, 22, 17 },		// 180 bits per transform
+			{ 21, 23, 16 },		// 180 bits per transform
+			{ 21, 24, 7 },		// 180 bits per transform
+			{ 22, 6, 24 },		// 180 bits per transform
+			{ 22, 15, 23 },		// 180 bits per transform
+			{ 22, 16, 22 },		// 180 bits per transform
+			{ 22, 17, 21 },		// 180 bits per transform
+			{ 22, 18, 20 },		// 180 bits per transform
+			{ 22, 19, 19 },		// 180 bits per transform
+			{ 22, 20, 18 },		// 180 bits per transform
+			{ 22, 21, 17 },		// 180 bits per transform
+			{ 22, 22, 16 },		// 180 bits per transform
+			{ 22, 23, 15 },		// 180 bits per transform
+			{ 22, 24, 6 },		// 180 bits per transform
+			{ 23, 5, 24 },		// 180 bits per transform
+			{ 23, 14, 23 },		// 180 bits per transform
+			{ 23, 15, 22 },		// 180 bits per transform
+			{ 23, 16, 21 },		// 180 bits per transform
+			{ 23, 17, 20 },		// 180 bits per transform
+			{ 23, 18, 19 },		// 180 bits per transform
+			{ 23, 19, 18 },		// 180 bits per transform
+			{ 23, 20, 17 },		// 180 bits per transform
+			{ 23, 21, 16 },		// 180 bits per transform
+			{ 23, 22, 15 },		// 180 bits per transform
+			{ 23, 23, 14 },		// 180 bits per transform
+			{ 23, 24, 5 },		// 180 bits per transform
+			{ 24, 5, 23 },		// 180 bits per transform
+			{ 24, 6, 22 },		// 180 bits per transform
+			{ 24, 7, 21 },		// 180 bits per transform
+			{ 24, 8, 20 },		// 180 bits per transform
+			{ 24, 9, 19 },		// 180 bits per transform
+			{ 24, 10, 18 },		// 180 bits per transform
+			{ 24, 11, 17 },		// 180 bits per transform
+			{ 24, 12, 16 },		// 180 bits per transform
+			{ 24, 13, 15 },		// 180 bits per transform
+			{ 24, 14, 14 },		// 180 bits per transform
+			{ 24, 15, 13 },		// 180 bits per transform
+			{ 24, 16, 12 },		// 180 bits per transform
+			{ 24, 17, 11 },		// 180 bits per transform
+			{ 24, 18, 10 },		// 180 bits per transform
+			{ 24, 19, 9 },		// 180 bits per transform
+			{ 24, 20, 8 },		// 180 bits per transform
+			{ 24, 21, 7 },		// 180 bits per transform
+			{ 24, 22, 6 },		// 180 bits per transform
+			{ 24, 23, 5 },		// 180 bits per transform
+			{ 6, 23, 24 },		// 183 bits per transform
+			{ 6, 24, 23 },		// 183 bits per transform
+			{ 7, 22, 24 },		// 183 bits per transform
+			{ 7, 24, 22 },		// 183 bits per transform
+			{ 8, 21, 24 },		// 183 bits per transform
+			{ 8, 24, 21 },		// 183 bits per transform
+			{ 9, 20, 24 },		// 183 bits per transform
+			{ 9, 24, 20 },		// 183 bits per transform
+			{ 10, 19, 24 },		// 183 bits per transform
+			{ 10, 24, 19 },		// 183 bits per transform
+			{ 11, 18, 24 },		// 183 bits per transform
+			{ 11, 24, 18 },		// 183 bits per transform
+			{ 12, 17, 24 },		// 183 bits per transform
+			{ 12, 24, 17 },		// 183 bits per transform
+			{ 13, 16, 24 },		// 183 bits per transform
+			{ 13, 24, 16 },		// 183 bits per transform
+			{ 14, 15, 24 },		// 183 bits per transform
+			{ 14, 24, 15 },		// 183 bits per transform
+			{ 15, 14, 24 },		// 183 bits per transform
+			{ 15, 23, 23 },		// 183 bits per transform
+			{ 15, 24, 14 },		// 183 bits per transform
+			{ 16, 13, 24 },		// 183 bits per transform
+			{ 16, 22, 23 },		// 183 bits per transform
+			{ 16, 23, 22 },		// 183 bits per transform
+			{ 16, 24, 13 },		// 183 bits per transform
+			{ 17, 12, 24 },		// 183 bits per transform
+			{ 17, 21, 23 },		// 183 bits per transform
+			{ 17, 22, 22 },		// 183 bits per transform
+			{ 17, 23, 21 },		// 183 bits per transform
+			{ 17, 24, 12 },		// 183 bits per transform
+			{ 18, 11, 24 },		// 183 bits per transform
+			{ 18, 20, 23 },		// 183 bits per transform
+			{ 18, 21, 22 },		// 183 bits per transform
+			{ 18, 22, 21 },		// 183 bits per transform
+			{ 18, 23, 20 },		// 183 bits per transform
+			{ 18, 24, 11 },		// 183 bits per transform
+			{ 19, 10, 24 },		// 183 bits per transform
+			{ 19, 19, 23 },		// 183 bits per transform
+			{ 19, 20, 22 },		// 183 bits per transform
+			{ 19, 21, 21 },		// 183 bits per transform
+			{ 19, 22, 20 },		// 183 bits per transform
+			{ 19, 23, 19 },		// 183 bits per transform
+			{ 19, 24, 10 },		// 183 bits per transform
+			{ 20, 9, 24 },		// 183 bits per transform
+			{ 20, 18, 23 },		// 183 bits per transform
+			{ 20, 19, 22 },		// 183 bits per transform
+			{ 20, 20, 21 },		// 183 bits per transform
+			{ 20, 21, 20 },		// 183 bits per transform
+			{ 20, 22, 19 },		// 183 bits per transform
+			{ 20, 23, 18 },		// 183 bits per transform
+			{ 20, 24, 9 },		// 183 bits per transform
+			{ 21, 8, 24 },		// 183 bits per transform
+			{ 21, 17, 23 },		// 183 bits per transform
+			{ 21, 18, 22 },		// 183 bits per transform
+			{ 21, 19, 21 },		// 183 bits per transform
+			{ 21, 20, 20 },		// 183 bits per transform
+			{ 21, 21, 19 },		// 183 bits per transform
+			{ 21, 22, 18 },		// 183 bits per transform
+			{ 21, 23, 17 },		// 183 bits per transform
+			{ 21, 24, 8 },		// 183 bits per transform
+			{ 22, 7, 24 },		// 183 bits per transform
+			{ 22, 16, 23 },		// 183 bits per transform
+			{ 22, 17, 22 },		// 183 bits per transform
+			{ 22, 18, 21 },		// 183 bits per transform
+			{ 22, 19, 20 },		// 183 bits per transform
+			{ 22, 20, 19 },		// 183 bits per transform
+			{ 22, 21, 18 },		// 183 bits per transform
+			{ 22, 22, 17 },		// 183 bits per transform
+			{ 22, 23, 16 },		// 183 bits per transform
+			{ 22, 24, 7 },		// 183 bits per transform
+			{ 23, 6, 24 },		// 183 bits per transform
+			{ 23, 15, 23 },		// 183 bits per transform
+			{ 23, 16, 22 },		// 183 bits per transform
+			{ 23, 17, 21 },		// 183 bits per transform
+			{ 23, 18, 20 },		// 183 bits per transform
+			{ 23, 19, 19 },		// 183 bits per transform
+			{ 23, 20, 18 },		// 183 bits per transform
+			{ 23, 21, 17 },		// 183 bits per transform
+			{ 23, 22, 16 },		// 183 bits per transform
+			{ 23, 23, 15 },		// 183 bits per transform
+			{ 23, 24, 6 },		// 183 bits per transform
+			{ 24, 6, 23 },		// 183 bits per transform
+			{ 24, 7, 22 },		// 183 bits per transform
+			{ 24, 8, 21 },		// 183 bits per transform
+			{ 24, 9, 20 },		// 183 bits per transform
+			{ 24, 10, 19 },		// 183 bits per transform
+			{ 24, 11, 18 },		// 183 bits per transform
+			{ 24, 12, 17 },		// 183 bits per transform
+			{ 24, 13, 16 },		// 183 bits per transform
+			{ 24, 14, 15 },		// 183 bits per transform
+			{ 24, 15, 14 },		// 183 bits per transform
+			{ 24, 16, 13 },		// 183 bits per transform
+			{ 24, 17, 12 },		// 183 bits per transform
+			{ 24, 18, 11 },		// 183 bits per transform
+			{ 24, 19, 10 },		// 183 bits per transform
+			{ 24, 20, 9 },		// 183 bits per transform
+			{ 24, 21, 8 },		// 183 bits per transform
+			{ 24, 22, 7 },		// 183 bits per transform
+			{ 24, 23, 6 },		// 183 bits per transform
+			{ 7, 23, 24 },		// 186 bits per transform
+			{ 7, 24, 23 },		// 186 bits per transform
+			{ 8, 22, 24 },		// 186 bits per transform
+			{ 8, 24, 22 },		// 186 bits per transform
+			{ 9, 21, 24 },		// 186 bits per transform
+			{ 9, 24, 21 },		// 186 bits per transform
+			{ 10, 20, 24 },		// 186 bits per transform
+			{ 10, 24, 20 },		// 186 bits per transform
+			{ 11, 19, 24 },		// 186 bits per transform
+			{ 11, 24, 19 },		// 186 bits per transform
+			{ 12, 18, 24 },		// 186 bits per transform
+			{ 12, 24, 18 },		// 186 bits per transform
+			{ 13, 17, 24 },		// 186 bits per transform
+			{ 13, 24, 17 },		// 186 bits per transform
+			{ 14, 16, 24 },		// 186 bits per transform
+			{ 14, 24, 16 },		// 186 bits per transform
+			{ 15, 15, 24 },		// 186 bits per transform
+			{ 15, 24, 15 },		// 186 bits per transform
+			{ 16, 14, 24 },		// 186 bits per transform
+			{ 16, 23, 23 },		// 186 bits per transform
+			{ 16, 24, 14 },		// 186 bits per transform
+			{ 17, 13, 24 },		// 186 bits per transform
+			{ 17, 22, 23 },		// 186 bits per transform
+			{ 17, 23, 22 },		// 186 bits per transform
+			{ 17, 24, 13 },		// 186 bits per transform
+			{ 18, 12, 24 },		// 186 bits per transform
+			{ 18, 21, 23 },		// 186 bits per transform
+			{ 18, 22, 22 },		// 186 bits per transform
+			{ 18, 23, 21 },		// 186 bits per transform
+			{ 18, 24, 12 },		// 186 bits per transform
+			{ 19, 11, 24 },		// 186 bits per transform
+			{ 19, 20, 23 },		// 186 bits per transform
+			{ 19, 21, 22 },		// 186 bits per transform
+			{ 19, 22, 21 },		// 186 bits per transform
+			{ 19, 23, 20 },		// 186 bits per transform
+			{ 19, 24, 11 },		// 186 bits per transform
+			{ 20, 10, 24 },		// 186 bits per transform
+			{ 20, 19, 23 },		// 186 bits per transform
+			{ 20, 20, 22 },		// 186 bits per transform
+			{ 20, 21, 21 },		// 186 bits per transform
+			{ 20, 22, 20 },		// 186 bits per transform
+			{ 20, 23, 19 },		// 186 bits per transform
+			{ 20, 24, 10 },		// 186 bits per transform
+			{ 21, 9, 24 },		// 186 bits per transform
+			{ 21, 18, 23 },		// 186 bits per transform
+			{ 21, 19, 22 },		// 186 bits per transform
+			{ 21, 20, 21 },		// 186 bits per transform
+			{ 21, 21, 20 },		// 186 bits per transform
+			{ 21, 22, 19 },		// 186 bits per transform
+			{ 21, 23, 18 },		// 186 bits per transform
+			{ 21, 24, 9 },		// 186 bits per transform
+			{ 22, 8, 24 },		// 186 bits per transform
+			{ 22, 17, 23 },		// 186 bits per transform
+			{ 22, 18, 22 },		// 186 bits per transform
+			{ 22, 19, 21 },		// 186 bits per transform
+			{ 22, 20, 20 },		// 186 bits per transform
+			{ 22, 21, 19 },		// 186 bits per transform
+			{ 22, 22, 18 },		// 186 bits per transform
+			{ 22, 23, 17 },		// 186 bits per transform
+			{ 22, 24, 8 },		// 186 bits per transform
+			{ 23, 7, 24 },		// 186 bits per transform
+			{ 23, 16, 23 },		// 186 bits per transform
+			{ 23, 17, 22 },		// 186 bits per transform
+			{ 23, 18, 21 },		// 186 bits per transform
+			{ 23, 19, 20 },		// 186 bits per transform
+			{ 23, 20, 19 },		// 186 bits per transform
+			{ 23, 21, 18 },		// 186 bits per transform
+			{ 23, 22, 17 },		// 186 bits per transform
+			{ 23, 23, 16 },		// 186 bits per transform
+			{ 23, 24, 7 },		// 186 bits per transform
+			{ 24, 7, 23 },		// 186 bits per transform
+			{ 24, 8, 22 },		// 186 bits per transform
+			{ 24, 9, 21 },		// 186 bits per transform
+			{ 24, 10, 20 },		// 186 bits per transform
+			{ 24, 11, 19 },		// 186 bits per transform
+			{ 24, 12, 18 },		// 186 bits per transform
+			{ 24, 13, 17 },		// 186 bits per transform
+			{ 24, 14, 16 },		// 186 bits per transform
+			{ 24, 15, 15 },		// 186 bits per transform
+			{ 24, 16, 14 },		// 186 bits per transform
+			{ 24, 17, 13 },		// 186 bits per transform
+			{ 24, 18, 12 },		// 186 bits per transform
+			{ 24, 19, 11 },		// 186 bits per transform
+			{ 24, 20, 10 },		// 186 bits per transform
+			{ 24, 21, 9 },		// 186 bits per transform
+			{ 24, 22, 8 },		// 186 bits per transform
+			{ 24, 23, 7 },		// 186 bits per transform
+			{ 8, 23, 24 },		// 189 bits per transform
+			{ 8, 24, 23 },		// 189 bits per transform
+			{ 9, 22, 24 },		// 189 bits per transform
+			{ 9, 24, 22 },		// 189 bits per transform
+			{ 10, 21, 24 },		// 189 bits per transform
+			{ 10, 24, 21 },		// 189 bits per transform
+			{ 11, 20, 24 },		// 189 bits per transform
+			{ 11, 24, 20 },		// 189 bits per transform
+			{ 12, 19, 24 },		// 189 bits per transform
+			{ 12, 24, 19 },		// 189 bits per transform
+			{ 13, 18, 24 },		// 189 bits per transform
+			{ 13, 24, 18 },		// 189 bits per transform
+			{ 14, 17, 24 },		// 189 bits per transform
+			{ 14, 24, 17 },		// 189 bits per transform
+			{ 15, 16, 24 },		// 189 bits per transform
+			{ 15, 24, 16 },		// 189 bits per transform
+			{ 16, 15, 24 },		// 189 bits per transform
+			{ 16, 24, 15 },		// 189 bits per transform
+			{ 17, 14, 24 },		// 189 bits per transform
+			{ 17, 23, 23 },		// 189 bits per transform
+			{ 17, 24, 14 },		// 189 bits per transform
+			{ 18, 13, 24 },		// 189 bits per transform
+			{ 18, 22, 23 },		// 189 bits per transform
+			{ 18, 23, 22 },		// 189 bits per transform
+			{ 18, 24, 13 },		// 189 bits per transform
+			{ 19, 12, 24 },		// 189 bits per transform
+			{ 19, 21, 23 },		// 189 bits per transform
+			{ 19, 22, 22 },		// 189 bits per transform
+			{ 19, 23, 21 },		// 189 bits per transform
+			{ 19, 24, 12 },		// 189 bits per transform
+			{ 20, 11, 24 },		// 189 bits per transform
+			{ 20, 20, 23 },		// 189 bits per transform
+			{ 20, 21, 22 },		// 189 bits per transform
+			{ 20, 22, 21 },		// 189 bits per transform
+			{ 20, 23, 20 },		// 189 bits per transform
+			{ 20, 24, 11 },		// 189 bits per transform
+			{ 21, 10, 24 },		// 189 bits per transform
+			{ 21, 19, 23 },		// 189 bits per transform
+			{ 21, 20, 22 },		// 189 bits per transform
+			{ 21, 21, 21 },		// 189 bits per transform
+			{ 21, 22, 20 },		// 189 bits per transform
+			{ 21, 23, 19 },		// 189 bits per transform
+			{ 21, 24, 10 },		// 189 bits per transform
+			{ 22, 9, 24 },		// 189 bits per transform
+			{ 22, 18, 23 },		// 189 bits per transform
+			{ 22, 19, 22 },		// 189 bits per transform
+			{ 22, 20, 21 },		// 189 bits per transform
+			{ 22, 21, 20 },		// 189 bits per transform
+			{ 22, 22, 19 },		// 189 bits per transform
+			{ 22, 23, 18 },		// 189 bits per transform
+			{ 22, 24, 9 },		// 189 bits per transform
+			{ 23, 8, 24 },		// 189 bits per transform
+			{ 23, 17, 23 },		// 189 bits per transform
+			{ 23, 18, 22 },		// 189 bits per transform
+			{ 23, 19, 21 },		// 189 bits per transform
+			{ 23, 20, 20 },		// 189 bits per transform
+			{ 23, 21, 19 },		// 189 bits per transform
+			{ 23, 22, 18 },		// 189 bits per transform
+			{ 23, 23, 17 },		// 189 bits per transform
+			{ 23, 24, 8 },		// 189 bits per transform
+			{ 24, 8, 23 },		// 189 bits per transform
+			{ 24, 9, 22 },		// 189 bits per transform
+			{ 24, 10, 21 },		// 189 bits per transform
+			{ 24, 11, 20 },		// 189 bits per transform
+			{ 24, 12, 19 },		// 189 bits per transform
+			{ 24, 13, 18 },		// 189 bits per transform
+			{ 24, 14, 17 },		// 189 bits per transform
+			{ 24, 15, 16 },		// 189 bits per transform
+			{ 24, 16, 15 },		// 189 bits per transform
+			{ 24, 17, 14 },		// 189 bits per transform
+			{ 24, 18, 13 },		// 189 bits per transform
+			{ 24, 19, 12 },		// 189 bits per transform
+			{ 24, 20, 11 },		// 189 bits per transform
+			{ 24, 21, 10 },		// 189 bits per transform
+			{ 24, 22, 9 },		// 189 bits per transform
+			{ 24, 23, 8 },		// 189 bits per transform
+			{ 0, 24, 24 },		// 192 bits per transform
+			{ 9, 23, 24 },		// 192 bits per transform
+			{ 9, 24, 23 },		// 192 bits per transform
+			{ 10, 22, 24 },		// 192 bits per transform
+			{ 10, 24, 22 },		// 192 bits per transform
+			{ 11, 21, 24 },		// 192 bits per transform
+			{ 11, 24, 21 },		// 192 bits per transform
+			{ 12, 20, 24 },		// 192 bits per transform
+			{ 12, 24, 20 },		// 192 bits per transform
+			{ 13, 19, 24 },		// 192 bits per transform
+			{ 13, 24, 19 },		// 192 bits per transform
+			{ 14, 18, 24 },		// 192 bits per transform
+			{ 14, 24, 18 },		// 192 bits per transform
+			{ 15, 17, 24 },		// 192 bits per transform
+			{ 15, 24, 17 },		// 192 bits per transform
+			{ 16, 16, 24 },		// 192 bits per transform
+			{ 16, 24, 16 },		// 192 bits per transform
+			{ 17, 15, 24 },		// 192 bits per transform
+			{ 17, 24, 15 },		// 192 bits per transform
+			{ 18, 14, 24 },		// 192 bits per transform
+			{ 18, 23, 23 },		// 192 bits per transform
+			{ 18, 24, 14 },		// 192 bits per transform
+			{ 19, 13, 24 },		// 192 bits per transform
+			{ 19, 22, 23 },		// 192 bits per transform
+			{ 19, 23, 22 },		// 192 bits per transform
+			{ 19, 24, 13 },		// 192 bits per transform
+			{ 20, 12, 24 },		// 192 bits per transform
+			{ 20, 21, 23 },		// 192 bits per transform
+			{ 20, 22, 22 },		// 192 bits per transform
+			{ 20, 23, 21 },		// 192 bits per transform
+			{ 20, 24, 12 },		// 192 bits per transform
+			{ 21, 11, 24 },		// 192 bits per transform
+			{ 21, 20, 23 },		// 192 bits per transform
+			{ 21, 21, 22 },		// 192 bits per transform
+			{ 21, 22, 21 },		// 192 bits per transform
+			{ 21, 23, 20 },		// 192 bits per transform
+			{ 21, 24, 11 },		// 192 bits per transform
+			{ 22, 10, 24 },		// 192 bits per transform
+			{ 22, 19, 23 },		// 192 bits per transform
+			{ 22, 20, 22 },		// 192 bits per transform
+			{ 22, 21, 21 },		// 192 bits per transform
+			{ 22, 22, 20 },		// 192 bits per transform
+			{ 22, 23, 19 },		// 192 bits per transform
+			{ 22, 24, 10 },		// 192 bits per transform
+			{ 23, 9, 24 },		// 192 bits per transform
+			{ 23, 18, 23 },		// 192 bits per transform
+			{ 23, 19, 22 },		// 192 bits per transform
+			{ 23, 20, 21 },		// 192 bits per transform
+			{ 23, 21, 20 },		// 192 bits per transform
+			{ 23, 22, 19 },		// 192 bits per transform
+			{ 23, 23, 18 },		// 192 bits per transform
+			{ 23, 24, 9 },		// 192 bits per transform
+			{ 24, 0, 24 },		// 192 bits per transform
+			{ 24, 9, 23 },		// 192 bits per transform
+			{ 24, 10, 22 },		// 192 bits per transform
+			{ 24, 11, 21 },		// 192 bits per transform
+			{ 24, 12, 20 },		// 192 bits per transform
+			{ 24, 13, 19 },		// 192 bits per transform
+			{ 24, 14, 18 },		// 192 bits per transform
+			{ 24, 15, 17 },		// 192 bits per transform
+			{ 24, 16, 16 },		// 192 bits per transform
+			{ 24, 17, 15 },		// 192 bits per transform
+			{ 24, 18, 14 },		// 192 bits per transform
+			{ 24, 19, 13 },		// 192 bits per transform
+			{ 24, 20, 12 },		// 192 bits per transform
+			{ 24, 21, 11 },		// 192 bits per transform
+			{ 24, 22, 10 },		// 192 bits per transform
+			{ 24, 23, 9 },		// 192 bits per transform
+			{ 24, 24, 0 },		// 192 bits per transform
+			{ 1, 24, 24 },		// 195 bits per transform
+			{ 10, 23, 24 },		// 195 bits per transform
+			{ 10, 24, 23 },		// 195 bits per transform
+			{ 11, 22, 24 },		// 195 bits per transform
+			{ 11, 24, 22 },		// 195 bits per transform
+			{ 12, 21, 24 },		// 195 bits per transform
+			{ 12, 24, 21 },		// 195 bits per transform
+			{ 13, 20, 24 },		// 195 bits per transform
+			{ 13, 24, 20 },		// 195 bits per transform
+			{ 14, 19, 24 },		// 195 bits per transform
+			{ 14, 24, 19 },		// 195 bits per transform
+			{ 15, 18, 24 },		// 195 bits per transform
+			{ 15, 24, 18 },		// 195 bits per transform
+			{ 16, 17, 24 },		// 195 bits per transform
+			{ 16, 24, 17 },		// 195 bits per transform
+			{ 17, 16, 24 },		// 195 bits per transform
+			{ 17, 24, 16 },		// 195 bits per transform
+			{ 18, 15, 24 },		// 195 bits per transform
+			{ 18, 24, 15 },		// 195 bits per transform
+			{ 19, 14, 24 },		// 195 bits per transform
+			{ 19, 23, 23 },		// 195 bits per transform
+			{ 19, 24, 14 },		// 195 bits per transform
+			{ 20, 13, 24 },		// 195 bits per transform
+			{ 20, 22, 23 },		// 195 bits per transform
+			{ 20, 23, 22 },		// 195 bits per transform
+			{ 20, 24, 13 },		// 195 bits per transform
+			{ 21, 12, 24 },		// 195 bits per transform
+			{ 21, 21, 23 },		// 195 bits per transform
+			{ 21, 22, 22 },		// 195 bits per transform
+			{ 21, 23, 21 },		// 195 bits per transform
+			{ 21, 24, 12 },		// 195 bits per transform
+			{ 22, 11, 24 },		// 195 bits per transform
+			{ 22, 20, 23 },		// 195 bits per transform
+			{ 22, 21, 22 },		// 195 bits per transform
+			{ 22, 22, 21 },		// 195 bits per transform
+			{ 22, 23, 20 },		// 195 bits per transform
+			{ 22, 24, 11 },		// 195 bits per transform
+			{ 23, 10, 24 },		// 195 bits per transform
+			{ 23, 19, 23 },		// 195 bits per transform
+			{ 23, 20, 22 },		// 195 bits per transform
+			{ 23, 21, 21 },		// 195 bits per transform
+			{ 23, 22, 20 },		// 195 bits per transform
+			{ 23, 23, 19 },		// 195 bits per transform
+			{ 23, 24, 10 },		// 195 bits per transform
+			{ 24, 1, 24 },		// 195 bits per transform
+			{ 24, 10, 23 },		// 195 bits per transform
+			{ 24, 11, 22 },		// 195 bits per transform
+			{ 24, 12, 21 },		// 195 bits per transform
+			{ 24, 13, 20 },		// 195 bits per transform
+			{ 24, 14, 19 },		// 195 bits per transform
+			{ 24, 15, 18 },		// 195 bits per transform
+			{ 24, 16, 17 },		// 195 bits per transform
+			{ 24, 17, 16 },		// 195 bits per transform
+			{ 24, 18, 15 },		// 195 bits per transform
+			{ 24, 19, 14 },		// 195 bits per transform
+			{ 24, 20, 13 },		// 195 bits per transform
+			{ 24, 21, 12 },		// 195 bits per transform
+			{ 24, 22, 11 },		// 195 bits per transform
+			{ 24, 23, 10 },		// 195 bits per transform
+			{ 24, 24, 1 },		// 195 bits per transform
+			{ 2, 24, 24 },		// 198 bits per transform
+			{ 11, 23, 24 },		// 198 bits per transform
+			{ 11, 24, 23 },		// 198 bits per transform
+			{ 12, 22, 24 },		// 198 bits per transform
+			{ 12, 24, 22 },		// 198 bits per transform
+			{ 13, 21, 24 },		// 198 bits per transform
+			{ 13, 24, 21 },		// 198 bits per transform
+			{ 14, 20, 24 },		// 198 bits per transform
+			{ 14, 24, 20 },		// 198 bits per transform
+			{ 15, 19, 24 },		// 198 bits per transform
+			{ 15, 24, 19 },		// 198 bits per transform
+			{ 16, 18, 24 },		// 198 bits per transform
+			{ 16, 24, 18 },		// 198 bits per transform
+			{ 17, 17, 24 },		// 198 bits per transform
+			{ 17, 24, 17 },		// 198 bits per transform
+			{ 18, 16, 24 },		// 198 bits per transform
+			{ 18, 24, 16 },		// 198 bits per transform
+			{ 19, 15, 24 },		// 198 bits per transform
+			{ 19, 24, 15 },		// 198 bits per transform
+			{ 20, 14, 24 },		// 198 bits per transform
+			{ 20, 23, 23 },		// 198 bits per transform
+			{ 20, 24, 14 },		// 198 bits per transform
+			{ 21, 13, 24 },		// 198 bits per transform
+			{ 21, 22, 23 },		// 198 bits per transform
+			{ 21, 23, 22 },		// 198 bits per transform
+			{ 21, 24, 13 },		// 198 bits per transform
+			{ 22, 12, 24 },		// 198 bits per transform
+			{ 22, 21, 23 },		// 198 bits per transform
+			{ 22, 22, 22 },		// 198 bits per transform
+			{ 22, 23, 21 },		// 198 bits per transform
+			{ 22, 24, 12 },		// 198 bits per transform
+			{ 23, 11, 24 },		// 198 bits per transform
+			{ 23, 20, 23 },		// 198 bits per transform
+			{ 23, 21, 22 },		// 198 bits per transform
+			{ 23, 22, 21 },		// 198 bits per transform
+			{ 23, 23, 20 },		// 198 bits per transform
+			{ 23, 24, 11 },		// 198 bits per transform
+			{ 24, 2, 24 },		// 198 bits per transform
+			{ 24, 11, 23 },		// 198 bits per transform
+			{ 24, 12, 22 },		// 198 bits per transform
+			{ 24, 13, 21 },		// 198 bits per transform
+			{ 24, 14, 20 },		// 198 bits per transform
+			{ 24, 15, 19 },		// 198 bits per transform
+			{ 24, 16, 18 },		// 198 bits per transform
+			{ 24, 17, 17 },		// 198 bits per transform
+			{ 24, 18, 16 },		// 198 bits per transform
+			{ 24, 19, 15 },		// 198 bits per transform
+			{ 24, 20, 14 },		// 198 bits per transform
+			{ 24, 21, 13 },		// 198 bits per transform
+			{ 24, 22, 12 },		// 198 bits per transform
+			{ 24, 23, 11 },		// 198 bits per transform
+			{ 24, 24, 2 },		// 198 bits per transform
+			{ 3, 24, 24 },		// 201 bits per transform
+			{ 12, 23, 24 },		// 201 bits per transform
+			{ 12, 24, 23 },		// 201 bits per transform
+			{ 13, 22, 24 },		// 201 bits per transform
+			{ 13, 24, 22 },		// 201 bits per transform
+			{ 14, 21, 24 },		// 201 bits per transform
+			{ 14, 24, 21 },		// 201 bits per transform
+			{ 15, 20, 24 },		// 201 bits per transform
+			{ 15, 24, 20 },		// 201 bits per transform
+			{ 16, 19, 24 },		// 201 bits per transform
+			{ 16, 24, 19 },		// 201 bits per transform
+			{ 17, 18, 24 },		// 201 bits per transform
+			{ 17, 24, 18 },		// 201 bits per transform
+			{ 18, 17, 24 },		// 201 bits per transform
+			{ 18, 24, 17 },		// 201 bits per transform
+			{ 19, 16, 24 },		// 201 bits per transform
+			{ 19, 24, 16 },		// 201 bits per transform
+			{ 20, 15, 24 },		// 201 bits per transform
+			{ 20, 24, 15 },		// 201 bits per transform
+			{ 21, 14, 24 },		// 201 bits per transform
+			{ 21, 23, 23 },		// 201 bits per transform
+			{ 21, 24, 14 },		// 201 bits per transform
+			{ 22, 13, 24 },		// 201 bits per transform
+			{ 22, 22, 23 },		// 201 bits per transform
+			{ 22, 23, 22 },		// 201 bits per transform
+			{ 22, 24, 13 },		// 201 bits per transform
+			{ 23, 12, 24 },		// 201 bits per transform
+			{ 23, 21, 23 },		// 201 bits per transform
+			{ 23, 22, 22 },		// 201 bits per transform
+			{ 23, 23, 21 },		// 201 bits per transform
+			{ 23, 24, 12 },		// 201 bits per transform
+			{ 24, 3, 24 },		// 201 bits per transform
+			{ 24, 12, 23 },		// 201 bits per transform
+			{ 24, 13, 22 },		// 201 bits per transform
+			{ 24, 14, 21 },		// 201 bits per transform
+			{ 24, 15, 20 },		// 201 bits per transform
+			{ 24, 16, 19 },		// 201 bits per transform
+			{ 24, 17, 18 },		// 201 bits per transform
+			{ 24, 18, 17 },		// 201 bits per transform
+			{ 24, 19, 16 },		// 201 bits per transform
+			{ 24, 20, 15 },		// 201 bits per transform
+			{ 24, 21, 14 },		// 201 bits per transform
+			{ 24, 22, 13 },		// 201 bits per transform
+			{ 24, 23, 12 },		// 201 bits per transform
+			{ 24, 24, 3 },		// 201 bits per transform
+			{ 4, 24, 24 },		// 204 bits per transform
+			{ 13, 23, 24 },		// 204 bits per transform
+			{ 13, 24, 23 },		// 204 bits per transform
+			{ 14, 22, 24 },		// 204 bits per transform
+			{ 14, 24, 22 },		// 204 bits per transform
+			{ 15, 21, 24 },		// 204 bits per transform
+			{ 15, 24, 21 },		// 204 bits per transform
+			{ 16, 20, 24 },		// 204 bits per transform
+			{ 16, 24, 20 },		// 204 bits per transform
+			{ 17, 19, 24 },		// 204 bits per transform
+			{ 17, 24, 19 },		// 204 bits per transform
+			{ 18, 18, 24 },		// 204 bits per transform
+			{ 18, 24, 18 },		// 204 bits per transform
+			{ 19, 17, 24 },		// 204 bits per transform
+			{ 19, 24, 17 },		// 204 bits per transform
+			{ 20, 16, 24 },		// 204 bits per transform
+			{ 20, 24, 16 },		// 204 bits per transform
+			{ 21, 15, 24 },		// 204 bits per transform
+			{ 21, 24, 15 },		// 204 bits per transform
+			{ 22, 14, 24 },		// 204 bits per transform
+			{ 22, 23, 23 },		// 204 bits per transform
+			{ 22, 24, 14 },		// 204 bits per transform
+			{ 23, 13, 24 },		// 204 bits per transform
+			{ 23, 22, 23 },		// 204 bits per transform
+			{ 23, 23, 22 },		// 204 bits per transform
+			{ 23, 24, 13 },		// 204 bits per transform
+			{ 24, 4, 24 },		// 204 bits per transform
+			{ 24, 13, 23 },		// 204 bits per transform
+			{ 24, 14, 22 },		// 204 bits per transform
+			{ 24, 15, 21 },		// 204 bits per transform
+			{ 24, 16, 20 },		// 204 bits per transform
+			{ 24, 17, 19 },		// 204 bits per transform
+			{ 24, 18, 18 },		// 204 bits per transform
+			{ 24, 19, 17 },		// 204 bits per transform
+			{ 24, 20, 16 },		// 204 bits per transform
+			{ 24, 21, 15 },		// 204 bits per transform
+			{ 24, 22, 14 },		// 204 bits per transform
+			{ 24, 23, 13 },		// 204 bits per transform
+			{ 24, 24, 4 },		// 204 bits per transform
+			{ 5, 24, 24 },		// 207 bits per transform
+			{ 14, 23, 24 },		// 207 bits per transform
+			{ 14, 24, 23 },		// 207 bits per transform
+			{ 15, 22, 24 },		// 207 bits per transform
+			{ 15, 24, 22 },		// 207 bits per transform
+			{ 16, 21, 24 },		// 207 bits per transform
+			{ 16, 24, 21 },		// 207 bits per transform
+			{ 17, 20, 24 },		// 207 bits per transform
+			{ 17, 24, 20 },		// 207 bits per transform
+			{ 18, 19, 24 },		// 207 bits per transform
+			{ 18, 24, 19 },		// 207 bits per transform
+			{ 19, 18, 24 },		// 207 bits per transform
+			{ 19, 24, 18 },		// 207 bits per transform
+			{ 20, 17, 24 },		// 207 bits per transform
+			{ 20, 24, 17 },		// 207 bits per transform
+			{ 21, 16, 24 },		// 207 bits per transform
+			{ 21, 24, 16 },		// 207 bits per transform
+			{ 22, 15, 24 },		// 207 bits per transform
+			{ 22, 24, 15 },		// 207 bits per transform
+			{ 23, 14, 24 },		// 207 bits per transform
+			{ 23, 23, 23 },		// 207 bits per transform
+			{ 23, 24, 14 },		// 207 bits per transform
+			{ 24, 5, 24 },		// 207 bits per transform
+			{ 24, 14, 23 },		// 207 bits per transform
+			{ 24, 15, 22 },		// 207 bits per transform
+			{ 24, 16, 21 },		// 207 bits per transform
+			{ 24, 17, 20 },		// 207 bits per transform
+			{ 24, 18, 19 },		// 207 bits per transform
+			{ 24, 19, 18 },		// 207 bits per transform
+			{ 24, 20, 17 },		// 207 bits per transform
+			{ 24, 21, 16 },		// 207 bits per transform
+			{ 24, 22, 15 },		// 207 bits per transform
+			{ 24, 23, 14 },		// 207 bits per transform
+			{ 24, 24, 5 },		// 207 bits per transform
+			{ 6, 24, 24 },		// 210 bits per transform
+			{ 15, 23, 24 },		// 210 bits per transform
+			{ 15, 24, 23 },		// 210 bits per transform
+			{ 16, 22, 24 },		// 210 bits per transform
+			{ 16, 24, 22 },		// 210 bits per transform
+			{ 17, 21, 24 },		// 210 bits per transform
+			{ 17, 24, 21 },		// 210 bits per transform
+			{ 18, 20, 24 },		// 210 bits per transform
+			{ 18, 24, 20 },		// 210 bits per transform
+			{ 19, 19, 24 },		// 210 bits per transform
+			{ 19, 24, 19 },		// 210 bits per transform
+			{ 20, 18, 24 },		// 210 bits per transform
+			{ 20, 24, 18 },		// 210 bits per transform
+			{ 21, 17, 24 },		// 210 bits per transform
+			{ 21, 24, 17 },		// 210 bits per transform
+			{ 22, 16, 24 },		// 210 bits per transform
+			{ 22, 24, 16 },		// 210 bits per transform
+			{ 23, 15, 24 },		// 210 bits per transform
+			{ 23, 24, 15 },		// 210 bits per transform
+			{ 24, 6, 24 },		// 210 bits per transform
+			{ 24, 15, 23 },		// 210 bits per transform
+			{ 24, 16, 22 },		// 210 bits per transform
+			{ 24, 17, 21 },		// 210 bits per transform
+			{ 24, 18, 20 },		// 210 bits per transform
+			{ 24, 19, 19 },		// 210 bits per transform
+			{ 24, 20, 18 },		// 210 bits per transform
+			{ 24, 21, 17 },		// 210 bits per transform
+			{ 24, 22, 16 },		// 210 bits per transform
+			{ 24, 23, 15 },		// 210 bits per transform
+			{ 24, 24, 6 },		// 210 bits per transform
+			{ 7, 24, 24 },		// 213 bits per transform
+			{ 16, 23, 24 },		// 213 bits per transform
+			{ 16, 24, 23 },		// 213 bits per transform
+			{ 17, 22, 24 },		// 213 bits per transform
+			{ 17, 24, 22 },		// 213 bits per transform
+			{ 18, 21, 24 },		// 213 bits per transform
+			{ 18, 24, 21 },		// 213 bits per transform
+			{ 19, 20, 24 },		// 213 bits per transform
+			{ 19, 24, 20 },		// 213 bits per transform
+			{ 20, 19, 24 },		// 213 bits per transform
+			{ 20, 24, 19 },		// 213 bits per transform
+			{ 21, 18, 24 },		// 213 bits per transform
+			{ 21, 24, 18 },		// 213 bits per transform
+			{ 22, 17, 24 },		// 213 bits per transform
+			{ 22, 24, 17 },		// 213 bits per transform
+			{ 23, 16, 24 },		// 213 bits per transform
+			{ 23, 24, 16 },		// 213 bits per transform
+			{ 24, 7, 24 },		// 213 bits per transform
+			{ 24, 16, 23 },		// 213 bits per transform
+			{ 24, 17, 22 },		// 213 bits per transform
+			{ 24, 18, 21 },		// 213 bits per transform
+			{ 24, 19, 20 },		// 213 bits per transform
+			{ 24, 20, 19 },		// 213 bits per transform
+			{ 24, 21, 18 },		// 213 bits per transform
+			{ 24, 22, 17 },		// 213 bits per transform
+			{ 24, 23, 16 },		// 213 bits per transform
+			{ 24, 24, 7 },		// 213 bits per transform
+			{ 8, 24, 24 },		// 216 bits per transform
+			{ 17, 23, 24 },		// 216 bits per transform
+			{ 17, 24, 23 },		// 216 bits per transform
+			{ 18, 22, 24 },		// 216 bits per transform
+			{ 18, 24, 22 },		// 216 bits per transform
+			{ 19, 21, 24 },		// 216 bits per transform
+			{ 19, 24, 21 },		// 216 bits per transform
+			{ 20, 20, 24 },		// 216 bits per transform
+			{ 20, 24, 20 },		// 216 bits per transform
+			{ 21, 19, 24 },		// 216 bits per transform
+			{ 21, 24, 19 },		// 216 bits per transform
+			{ 22, 18, 24 },		// 216 bits per transform
+			{ 22, 24, 18 },		// 216 bits per transform
+			{ 23, 17, 24 },		// 216 bits per transform
+			{ 23, 24, 17 },		// 216 bits per transform
+			{ 24, 8, 24 },		// 216 bits per transform
+			{ 24, 17, 23 },		// 216 bits per transform
+			{ 24, 18, 22 },		// 216 bits per transform
+			{ 24, 19, 21 },		// 216 bits per transform
+			{ 24, 20, 20 },		// 216 bits per transform
+			{ 24, 21, 19 },		// 216 bits per transform
+			{ 24, 22, 18 },		// 216 bits per transform
+			{ 24, 23, 17 },		// 216 bits per transform
+			{ 24, 24, 8 },		// 216 bits per transform
+			{ 9, 24, 24 },		// 219 bits per transform
+			{ 18, 23, 24 },		// 219 bits per transform
+			{ 18, 24, 23 },		// 219 bits per transform
+			{ 19, 22, 24 },		// 219 bits per transform
+			{ 19, 24, 22 },		// 219 bits per transform
+			{ 20, 21, 24 },		// 219 bits per transform
+			{ 20, 24, 21 },		// 219 bits per transform
+			{ 21, 20, 24 },		// 219 bits per transform
+			{ 21, 24, 20 },		// 219 bits per transform
+			{ 22, 19, 24 },		// 219 bits per transform
+			{ 22, 24, 19 },		// 219 bits per transform
+			{ 23, 18, 24 },		// 219 bits per transform
+			{ 23, 24, 18 },		// 219 bits per transform
+			{ 24, 9, 24 },		// 219 bits per transform
+			{ 24, 18, 23 },		// 219 bits per transform
+			{ 24, 19, 22 },		// 219 bits per transform
+			{ 24, 20, 21 },		// 219 bits per transform
+			{ 24, 21, 20 },		// 219 bits per transform
+			{ 24, 22, 19 },		// 219 bits per transform
+			{ 24, 23, 18 },		// 219 bits per transform
+			{ 24, 24, 9 },		// 219 bits per transform
+			{ 10, 24, 24 },		// 222 bits per transform
+			{ 19, 23, 24 },		// 222 bits per transform
+			{ 19, 24, 23 },		// 222 bits per transform
+			{ 20, 22, 24 },		// 222 bits per transform
+			{ 20, 24, 22 },		// 222 bits per transform
+			{ 21, 21, 24 },		// 222 bits per transform
+			{ 21, 24, 21 },		// 222 bits per transform
+			{ 22, 20, 24 },		// 222 bits per transform
+			{ 22, 24, 20 },		// 222 bits per transform
+			{ 23, 19, 24 },		// 222 bits per transform
+			{ 23, 24, 19 },		// 222 bits per transform
+			{ 24, 10, 24 },		// 222 bits per transform
+			{ 24, 19, 23 },		// 222 bits per transform
+			{ 24, 20, 22 },		// 222 bits per transform
+			{ 24, 21, 21 },		// 222 bits per transform
+			{ 24, 22, 20 },		// 222 bits per transform
+			{ 24, 23, 19 },		// 222 bits per transform
+			{ 24, 24, 10 },		// 222 bits per transform
+			{ 11, 24, 24 },		// 225 bits per transform
+			{ 20, 23, 24 },		// 225 bits per transform
+			{ 20, 24, 23 },		// 225 bits per transform
+			{ 21, 22, 24 },		// 225 bits per transform
+			{ 21, 24, 22 },		// 225 bits per transform
+			{ 22, 21, 24 },		// 225 bits per transform
+			{ 22, 24, 21 },		// 225 bits per transform
+			{ 23, 20, 24 },		// 225 bits per transform
+			{ 23, 24, 20 },		// 225 bits per transform
+			{ 24, 11, 24 },		// 225 bits per transform
+			{ 24, 20, 23 },		// 225 bits per transform
+			{ 24, 21, 22 },		// 225 bits per transform
+			{ 24, 22, 21 },		// 225 bits per transform
+			{ 24, 23, 20 },		// 225 bits per transform
+			{ 24, 24, 11 },		// 225 bits per transform
+			{ 12, 24, 24 },		// 228 bits per transform
+			{ 21, 23, 24 },		// 228 bits per transform
+			{ 21, 24, 23 },		// 228 bits per transform
+			{ 22, 22, 24 },		// 228 bits per transform
+			{ 22, 24, 22 },		// 228 bits per transform
+			{ 23, 21, 24 },		// 228 bits per transform
+			{ 23, 24, 21 },		// 228 bits per transform
+			{ 24, 12, 24 },		// 228 bits per transform
+			{ 24, 21, 23 },		// 228 bits per transform
+			{ 24, 22, 22 },		// 228 bits per transform
+			{ 24, 23, 21 },		// 228 bits per transform
+			{ 24, 24, 12 },		// 228 bits per transform
+			{ 13, 24, 24 },		// 231 bits per transform
+			{ 22, 23, 24 },		// 231 bits per transform
+			{ 22, 24, 23 },		// 231 bits per transform
+			{ 23, 22, 24 },		// 231 bits per transform
+			{ 23, 24, 22 },		// 231 bits per transform
+			{ 24, 13, 24 },		// 231 bits per transform
+			{ 24, 22, 23 },		// 231 bits per transform
+			{ 24, 23, 22 },		// 231 bits per transform
+			{ 24, 24, 13 },		// 231 bits per transform
+			{ 14, 24, 24 },		// 234 bits per transform
+			{ 23, 23, 24 },		// 234 bits per transform
+			{ 23, 24, 23 },		// 234 bits per transform
+			{ 24, 14, 24 },		// 234 bits per transform
+			{ 24, 23, 23 },		// 234 bits per transform
+			{ 24, 24, 14 },		// 234 bits per transform
+			{ 15, 24, 24 },		// 237 bits per transform
+			{ 24, 15, 24 },		// 237 bits per transform
+			{ 24, 24, 15 },		// 237 bits per transform
+			{ 16, 24, 24 },		// 240 bits per transform
+			{ 24, 16, 24 },		// 240 bits per transform
+			{ 24, 24, 16 },		// 240 bits per transform
+			{ 17, 24, 24 },		// 243 bits per transform
+			{ 24, 17, 24 },		// 243 bits per transform
+			{ 24, 24, 17 },		// 243 bits per transform
+			{ 18, 24, 24 },		// 246 bits per transform
+			{ 24, 18, 24 },		// 246 bits per transform
+			{ 24, 24, 18 },		// 246 bits per transform
+			{ 19, 24, 24 },		// 249 bits per transform
+			{ 24, 19, 24 },		// 249 bits per transform
+			{ 24, 24, 19 },		// 249 bits per transform
+			{ 20, 24, 24 },		// 252 bits per transform
+			{ 24, 20, 24 },		// 252 bits per transform
+			{ 24, 24, 20 },		// 252 bits per transform
+			{ 21, 24, 24 },		// 255 bits per transform
+			{ 24, 21, 24 },		// 255 bits per transform
+			{ 24, 24, 21 },		// 255 bits per transform
+			{ 22, 24, 24 },		// 258 bits per transform
+			{ 24, 22, 24 },		// 258 bits per transform
+			{ 24, 24, 22 },		// 258 bits per transform
+			{ 23, 24, 24 },		// 261 bits per transform
+			{ 24, 23, 24 },		// 261 bits per transform
+			{ 24, 24, 23 },		// 261 bits per transform
+			{ 24, 24, 24 },		// 288 bits per transform
 		};
 	}
 
diff --git a/includes/acl/compression/impl/write_stream_data.h b/includes/acl/compression/impl/write_stream_data.h
--- a/includes/acl/compression/impl/write_stream_data.h
+++ b/includes/acl/compression/impl/write_stream_data.h
@@ -334,8 +334,8 @@ namespace acl
 				}
 				else
 				{
-					const uint64_t raw_sample_u64 = *safe_ptr_cast<const uint64_t>(raw_sample_ptr);
-					memcpy_bits(animated_track_data_begin, out_bit_offset, &raw_sample_u64, 0, num_bits_at_bit_rate);
+					const uint64_t* raw_sample_u64 = safe_ptr_cast<const uint64_t>(raw_sample_ptr);
+					memcpy_bits(animated_track_data_begin, out_bit_offset, raw_sample_u64, 0, num_bits_at_bit_rate);
 				}
 
 				out_bit_offset += num_bits_at_bit_rate;
@@ -478,12 +478,29 @@ namespace acl
 			auto group_entry_action = [&segment, &format_per_track_group](animation_track_type8 group_type, uint32_t group_size, uint32_t bone_index)
 			{
 				const transform_streams& bone_stream = segment.bone_streams[bone_index];
+
+				uint32_t bit_rate;
 				if (group_type == animation_track_type8::rotation)
-					format_per_track_group[group_size] = (uint8_t)get_num_bits_at_bit_rate(bone_stream.rotations.get_bit_rate());
+					bit_rate = bone_stream.rotations.get_bit_rate();
 				else if (group_type == animation_track_type8::translation)
-					format_per_track_group[group_size] = (uint8_t)get_num_bits_at_bit_rate(bone_stream.translations.get_bit_rate());
+					bit_rate = bone_stream.translations.get_bit_rate();
 				else
-					format_per_track_group[group_size] = (uint8_t)get_num_bits_at_bit_rate(bone_stream.scales.get_bit_rate());
+					bit_rate = bone_stream.scales.get_bit_rate();
+
+				const uint32_t num_bits = get_num_bits_at_bit_rate(bit_rate);
+				ACL_ASSERT(num_bits <= 32, "Expected 32 bits or less");
+
+				// We only have 25 bit rates and the largest number of bits is 32 (highest bit rate).
+				// This would require 6 bits to store in the per sub-track metadata but it would leave
+				// most of the entries unused.
+				// Instead, we store the number of bits on 5 bits which has a max value of 31.
+				// To do so, we remap 32 to 31 since that value is unused.
+				// This leaves 3 unused bits in our per sub-track metadata.
+				// These will later be needed:
+				//    - 1 bit to dictate if rotations contain 3 or 4 components (to allow mixing full quats in with packed quats)
+				//    - 2 bits to dictate which rotation component is dropped (to allow the largest component to be dropped over our segment)
+
+				format_per_track_group[group_size] = (bit_rate == k_highest_bit_rate) ? 31 : (uint8_t)num_bits;
 			};
 
 			auto group_flush_action = [&format_per_track_data, format_per_track_data_end, &format_per_track_group](animation_track_type8 group_type, uint32_t group_size)
diff --git a/includes/acl/compression/impl/write_track_metadata.h b/includes/acl/compression/impl/write_track_metadata.h
--- a/includes/acl/compression/impl/write_track_metadata.h
+++ b/includes/acl/compression/impl/write_track_metadata.h
@@ -179,16 +179,13 @@ namespace acl
 						float* data = reinterpret_cast<float*>(output_buffer);
 						data[0] = desc.precision;
 						data[1] = desc.shell_distance;
-						data[2] = desc.constant_rotation_threshold_angle;
-						data[3] = desc.constant_translation_threshold;
-						data[4] = desc.constant_scale_threshold;
 
-						rtm::quat_store(desc.default_value.rotation, data + 5);
-						rtm::vector_store3(desc.default_value.translation, data + 9);
-						rtm::vector_store3(desc.default_value.scale, data + 12);
+						rtm::quat_store(desc.default_value.rotation, data + 2);
+						rtm::vector_store3(desc.default_value.translation, data + 6);
+						rtm::vector_store3(desc.default_value.scale, data + 9);
 					}
 
-					output_buffer += sizeof(float) * 15;
+					output_buffer += sizeof(float) * 12;
 				}
 			}
 
diff --git a/includes/acl/core/compressed_tracks_version.h b/includes/acl/core/compressed_tracks_version.h
--- a/includes/acl/core/compressed_tracks_version.h
+++ b/includes/acl/core/compressed_tracks_version.h
@@ -70,6 +70,7 @@ namespace acl
 		//v01_99_99	= 6,			// ACL v2.0.0-wip
 		v02_00_00	= 7,			// ACL v2.0.0
 		v02_01_99	= 8,			// ACL v2.1.0-wip
+		v02_01_99_1	= 9,			// ACL v2.1.0-wip (removed constant thresholds in track desc, increased bit rates, remapped raw num bits to 31 in compressed tracks)
 
 		//////////////////////////////////////////////////////////////////////////
 		// First version marker, this is equal to the first version supported: ACL 2.0.0
@@ -79,7 +80,7 @@ namespace acl
 
 		//////////////////////////////////////////////////////////////////////////
 		// Always assigned to the latest version supported.
-		latest		= v02_01_99,
+		latest		= v02_01_99_1,
 	};
 
 	ACL_IMPL_VERSION_NAMESPACE_END
diff --git a/includes/acl/core/fwd.h b/includes/acl/core/fwd.h
--- a/includes/acl/core/fwd.h
+++ b/includes/acl/core/fwd.h
@@ -82,14 +82,31 @@ namespace acl
 	namespace acl_impl
 	{
 		template <class item_type, bool is_const>
-		class iterator_impl;
+		class array_iterator_impl;
+
+		template <class item_type, bool is_const>
+		class array_reverse_iterator_impl;
 	}
 
+	//ACL_DEPRECATED("Renamed to array_iterator, to be removed in v3.0")
+	template <class item_type>
+	using iterator = acl_impl::array_iterator_impl<item_type, false>;
+
+	template <class item_type>
+	using array_iterator = acl_impl::array_iterator_impl<item_type, false>;
+
+	template <class item_type>
+	using array_reverse_iterator = acl_impl::array_reverse_iterator_impl<item_type, false>;
+
+	//ACL_DEPRECATED("Renamed to const_array_iterator, to be removed in v3.0")
+	template <class item_type>
+	using const_iterator = acl_impl::array_iterator_impl<item_type, true>;
+
 	template <class item_type>
-	using iterator = acl_impl::iterator_impl<item_type, false>;
+	using const_array_iterator = acl_impl::array_iterator_impl<item_type, true>;
 
 	template <class item_type>
-	using const_iterator = acl_impl::iterator_impl<item_type, true>;
+	using const_array_reverse_iterator = acl_impl::array_reverse_iterator_impl<item_type, true>;
 
 	struct invalid_ptr_offset;
 	template<typename data_type, typename offset_type> class ptr_offset;
diff --git a/includes/acl/core/impl/compiler_utils.h b/includes/acl/core/impl/compiler_utils.h
--- a/includes/acl/core/impl/compiler_utils.h
+++ b/includes/acl/core/impl/compiler_utils.h
@@ -118,5 +118,5 @@ namespace acl
 
 // When enabled, constant sub-tracks will use the weighted average of every sample instead of the first sample
 // Disabled by default, most clips have no measurable gain but some clips suffer greatly, needs to be investigated, possibly a bug somewhere
+// Note: Code has been removed in the pull request that closes: https://github.com/nfrechette/acl/issues/353
 //#define ACL_IMPL_ENABLE_WEIGHTED_AVERAGE_CONSTANT_SUB_TRACKS
-
diff --git a/includes/acl/core/impl/compressed_tracks.impl.h b/includes/acl/core/impl/compressed_tracks.impl.h
--- a/includes/acl/core/impl/compressed_tracks.impl.h
+++ b/includes/acl/core/impl/compressed_tracks.impl.h
@@ -238,6 +238,10 @@ namespace acl
 		if (version >= compressed_tracks_version16::v02_01_99)
 			track_description_size += sizeof(float) * 10;
 
+		// ACL 2.1 removes: constant thresholds
+		if (version >= compressed_tracks_version16::v02_01_99_1)
+			track_description_size -= sizeof(float) * 3;
+
 		const float* description_data = reinterpret_cast<const float*>(descriptions + (size_t(track_index) * track_description_size));
 
 		// Because the data has already been compressed, any track output remapping has already happened
@@ -246,15 +250,17 @@ namespace acl
 		out_description.parent_index = parent_track_indices[track_index];
 		out_description.precision = description_data[0];
 		out_description.shell_distance = description_data[1];
-		out_description.constant_rotation_threshold_angle = description_data[2];
-		out_description.constant_translation_threshold = description_data[3];
-		out_description.constant_scale_threshold = description_data[4];
 
+		// ACL 2.1 adds: default_value
 		if (version >= compressed_tracks_version16::v02_01_99)
 		{
-			out_description.default_value.rotation = rtm::quat_load(description_data + 5);
-			out_description.default_value.translation = rtm::vector_load3(description_data + 9);
-			out_description.default_value.scale = rtm::vector_load3(description_data + 12);
+			// ACL 2.1 removes: constant thresholds
+			if (version < compressed_tracks_version16::v02_01_99_1)
+				description_data += 3;
+
+			out_description.default_value.rotation = rtm::quat_load(description_data + 2);
+			out_description.default_value.translation = rtm::vector_load3(description_data + 6);
+			out_description.default_value.scale = rtm::vector_load3(description_data + 9);
 		}
 		else
 		{
diff --git a/includes/acl/core/impl/track_desc.impl.h b/includes/acl/core/impl/track_desc.impl.h
--- a/includes/acl/core/impl/track_desc.impl.h
+++ b/includes/acl/core/impl/track_desc.impl.h
@@ -55,15 +55,6 @@ namespace acl
 		if (shell_distance < 0.0F || !rtm::scalar_is_finite(shell_distance))
 			return error_result("Invalid shell_distance");
 
-		if (constant_rotation_threshold_angle < 0.0F || !rtm::scalar_is_finite(constant_rotation_threshold_angle))
-			return error_result("Invalid constant_rotation_threshold_angle");
-
-		if (constant_translation_threshold < 0.0F || !rtm::scalar_is_finite(constant_translation_threshold))
-			return error_result("Invalid constant_translation_threshold");
-
-		if (constant_scale_threshold < 0.0F || !rtm::scalar_is_finite(constant_scale_threshold))
-			return error_result("Invalid constant_scale_threshold");
-
 		if (!rtm::qvv_is_finite(default_value))
 			return error_result("Invalid default_value must be finite");
 
diff --git a/includes/acl/core/impl/variable_bit_rates.h b/includes/acl/core/impl/variable_bit_rates.h
--- a/includes/acl/core/impl/variable_bit_rates.h
+++ b/includes/acl/core/impl/variable_bit_rates.h
@@ -38,15 +38,19 @@ namespace acl
 
 	namespace acl_impl
 	{
-		// Bit rate 0 is reserved for tracks that are constant in a segment
-		constexpr uint8_t k_bit_rate_num_bits[] = { 0, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 32 };
+		// Used by ACL 2.0 and earlier
+		constexpr uint8_t k_bit_rate_num_bits_v0[] = { 0, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 32 };
+
+		// Used by ACL 2.1 and later
+		constexpr uint8_t k_bit_rate_num_bits[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 32 };
 
+		// Bit rate 0 is reserved for tracks that are constant in a segment
 		constexpr uint8_t k_invalid_bit_rate = 0xFF;
 		constexpr uint8_t k_lowest_bit_rate = 1;
 		constexpr uint8_t k_highest_bit_rate = sizeof(k_bit_rate_num_bits) - 1;
 		constexpr uint32_t k_num_bit_rates = sizeof(k_bit_rate_num_bits);
 
-		static_assert(k_num_bit_rates == 19, "Expecting 19 bit rates");
+		static_assert(k_num_bit_rates == 25, "Expecting 25 bit rates");
 
 		inline uint32_t get_num_bits_at_bit_rate(uint32_t bit_rate)
 		{
diff --git a/includes/acl/core/iterator.h b/includes/acl/core/iterator.h
--- a/includes/acl/core/iterator.h
+++ b/includes/acl/core/iterator.h
@@ -39,12 +39,12 @@ namespace acl
 	namespace acl_impl
 	{
 		template <class item_type, bool is_const>
-		class iterator_impl
+		class array_iterator_impl
 		{
 		public:
 			using item_ptr_type = typename std::conditional<is_const, const item_type*, item_type*>::type;
 
-			constexpr iterator_impl(item_ptr_type items, size_t num_items) : m_items(items), m_num_items(num_items) {}
+			constexpr array_iterator_impl(item_ptr_type items, size_t num_items) : m_items(items), m_num_items(num_items) {}
 
 			constexpr item_ptr_type begin() const { return m_items; }
 			constexpr item_ptr_type end() const { return m_items + m_num_items; }
@@ -53,24 +53,90 @@ namespace acl
 			item_ptr_type	m_items;
 			size_t			m_num_items;
 		};
+
+		template <class item_type, bool is_const>
+		class array_reverse_iterator_impl
+		{
+		public:
+			using item_ptr_type = typename std::conditional<is_const, const item_type*, item_type*>::type;
+
+			constexpr array_reverse_iterator_impl(item_ptr_type items, size_t num_items) : m_items(items), m_num_items(num_items) {}
+
+			constexpr std::reverse_iterator<item_ptr_type> begin() const { return std::reverse_iterator<item_ptr_type>(m_items + m_num_items); }
+			constexpr std::reverse_iterator<item_ptr_type> end() const { return std::reverse_iterator<item_ptr_type>(m_items); }
+
+		private:
+			item_ptr_type	m_items;
+			size_t			m_num_items;
+		};
+	}
+
+	//ACL_DEPRECATED("Renamed to array_iterator, to be removed in v3.0")
+	template <class item_type>
+	using iterator = acl_impl::array_iterator_impl<item_type, false>;
+
+	template <class item_type>
+	using array_iterator = acl_impl::array_iterator_impl<item_type, false>;
+
+	//ACL_DEPRECATED("Renamed to const_array_iterator, to be removed in v3.0")
+	template <class item_type>
+	using const_iterator = acl_impl::array_iterator_impl<item_type, true>;
+
+	template <class item_type>
+	using const_array_iterator = acl_impl::array_iterator_impl<item_type, true>;
+
+	template <class item_type, size_t num_items>
+	array_iterator<item_type> make_iterator(item_type (&items)[num_items])
+	{
+		return array_iterator<item_type>(items, num_items);
+	}
+
+	template <class item_type, size_t num_items>
+	const_array_iterator<item_type> make_iterator(item_type const (&items)[num_items])
+	{
+		return const_array_iterator<item_type>(items, num_items);
+	}
+
+	template <class item_type>
+	array_iterator<item_type> make_iterator(item_type* items, size_t num_items)
+	{
+		return array_iterator<item_type>(items, num_items);
+	}
+
+	template <class item_type>
+	const_array_iterator<item_type> make_iterator(const item_type* items, size_t num_items)
+	{
+		return const_array_iterator<item_type>(items, num_items);
 	}
 
 	template <class item_type>
-	using iterator = acl_impl::iterator_impl<item_type, false>;
+	using array_reverse_iterator = acl_impl::array_reverse_iterator_impl<item_type, false>;
 
 	template <class item_type>
-	using const_iterator = acl_impl::iterator_impl<item_type, true>;
+	using const_array_reverse_iterator = acl_impl::array_reverse_iterator_impl<item_type, true>;
 
 	template <class item_type, size_t num_items>
-	iterator<item_type> make_iterator(item_type (&items)[num_items])
+	array_reverse_iterator<item_type> make_reverse_iterator(item_type(&items)[num_items])
 	{
-		return iterator<item_type>(items, num_items);
+		return array_reverse_iterator<item_type>(items, num_items);
 	}
 
 	template <class item_type, size_t num_items>
-	const_iterator<item_type> make_iterator(item_type const (&items)[num_items])
+	const_array_reverse_iterator<item_type> make_reverse_iterator(item_type const (&items)[num_items])
+	{
+		return const_array_reverse_iterator<item_type>(items, num_items);
+	}
+
+	template <class item_type>
+	array_reverse_iterator<item_type> make_reverse_iterator(item_type* items, size_t num_items)
+	{
+		return array_reverse_iterator<item_type>(items, num_items);
+	}
+
+	template <class item_type>
+	const_array_reverse_iterator<item_type> make_reverse_iterator(const item_type* items, size_t num_items)
 	{
-		return const_iterator<item_type>(items, num_items);
+		return const_array_reverse_iterator<item_type>(items, num_items);
 	}
 
 	ACL_IMPL_VERSION_NAMESPACE_END
diff --git a/includes/acl/core/track_desc.h b/includes/acl/core/track_desc.h
--- a/includes/acl/core/track_desc.h
+++ b/includes/acl/core/track_desc.h
@@ -25,6 +25,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 
 #include "acl/version.h"
+#include "acl/core/error.h"
 #include "acl/core/error_result.h"
 #include "acl/core/track_types.h"
 #include "acl/core/impl/compiler_utils.h"
@@ -70,6 +71,15 @@ namespace acl
 		error_result is_valid() const;
 	};
 
+	// Disable warning for implicit constructor using deprecated members
+#if defined(RTM_COMPILER_CLANG)
+	#pragma clang diagnostic push
+	#pragma clang diagnostic ignored "-Wdeprecated-declarations"
+#elif defined(RTM_COMPILER_GCC)
+	#pragma GCC diagnostic push
+	#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
+#endif
+
 	//////////////////////////////////////////////////////////////////////////
 	// This structure describes the various settings for transform tracks.
 	// Used by: quatf, qvvf
@@ -126,12 +136,14 @@ namespace acl
 		// was chosen. You will typically NEVER need to change this, the value has been
 		// selected to be as safe as possible and is independent of game engine units.
 		// Defaults to '0.00284714461' radians
+		ACL_DEPRECATED("Replaced by error metric, to be removed in v3.0")
 		float constant_rotation_threshold_angle = 0.00284714461F;
 
 		//////////////////////////////////////////////////////////////////////////
 		// Threshold value to use when detecting if translation tracks are constant or default.
 		// Note that you will need to change this value if your units are not in centimeters.
 		// Defaults to '0.001' centimeters.
+		ACL_DEPRECATED("Replaced by error metric, to be removed in v3.0")
 		float constant_translation_threshold = 0.001F;
 
 		//////////////////////////////////////////////////////////////////////////
@@ -139,6 +151,7 @@ namespace acl
 		// There are no units for scale as such a value that was deemed safe was selected
 		// as a default.
 		// Defaults to '0.00001'
+		ACL_DEPRECATED("Replaced by error metric, to be removed in v3.0")
 		float constant_scale_threshold = 0.00001F;
 
 		uint32_t padding = 0;
@@ -154,6 +167,12 @@ namespace acl
 		error_result is_valid() const;
 	};
 
+#if defined(RTM_COMPILER_CLANG)
+	#pragma clang diagnostic pop
+#elif defined(RTM_COMPILER_GCC)
+	#pragma GCC diagnostic pop
+#endif
+
 	ACL_IMPL_VERSION_NAMESPACE_END
 }
 
diff --git a/includes/acl/core/variable_bit_rates.h b/includes/acl/core/variable_bit_rates.h
--- a/includes/acl/core/variable_bit_rates.h
+++ b/includes/acl/core/variable_bit_rates.h
@@ -38,7 +38,7 @@ namespace acl
 
 	// Bit rate 0 is reserved for tracks that are constant in a segment
 	ACL_DEPRECATED("Internal implementation detail; to be removed in v3.0")
-	constexpr uint8_t k_bit_rate_num_bits[] = { 0, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 32 };
+	constexpr uint8_t k_bit_rate_num_bits[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 32 };
 
 	ACL_DEPRECATED("Internal implementation detail; to be removed in v3.0")
 	constexpr uint8_t k_invalid_bit_rate = 0xFF;
@@ -47,16 +47,15 @@ namespace acl
 	constexpr uint8_t k_lowest_bit_rate = 1;
 
 	ACL_DEPRECATED("Internal implementation detail; to be removed in v3.0")
-	constexpr uint8_t k_highest_bit_rate = 18;
+	constexpr uint8_t k_highest_bit_rate = 24;
 
-	ACL_DEPRECATED("Internal implementation detail; to be removed in v3.0")
-	constexpr uint32_t k_num_bit_rates = 19;
+	static_assert(get_array_size(k_bit_rate_num_bits) == 25, "Expecting 25 bit rates");
 
 	ACL_DEPRECATED("Internal implementation detail; to be removed in v3.0")
 	inline uint32_t get_num_bits_at_bit_rate(uint32_t bit_rate)
 	{
-		ACL_ASSERT(bit_rate <= 18, "Invalid bit rate: %u", bit_rate);
-		constexpr uint8_t bit_rate_num_bits[] = { 0, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 32 };
+		ACL_ASSERT(bit_rate <= 24, "Invalid bit rate: %u", bit_rate);
+		constexpr uint8_t bit_rate_num_bits[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 32 };
 		return bit_rate_num_bits[bit_rate];
 	}
 
@@ -65,7 +64,7 @@ namespace acl
 	constexpr bool is_constant_bit_rate(uint32_t bit_rate) { return bit_rate == 0; }
 
 	ACL_DEPRECATED("Internal implementation detail; to be removed in v3.0")
-	constexpr bool is_raw_bit_rate(uint32_t bit_rate) { return bit_rate == 18; }
+	constexpr bool is_raw_bit_rate(uint32_t bit_rate) { return bit_rate == 24; }
 
 	ACL_DEPRECATED("Internal implementation detail; to be removed in v3.0")
 	struct BoneBitRate
diff --git a/includes/acl/decompression/impl/decompression_version_selector.h b/includes/acl/decompression/impl/decompression_version_selector.h
--- a/includes/acl/decompression/impl/decompression_version_selector.h
+++ b/includes/acl/decompression/impl/decompression_version_selector.h
@@ -106,6 +106,30 @@ namespace acl
 			RTM_FORCE_INLINE static void decompress_track(context_type& context, uint32_t track_index, track_writer_type& writer) { acl_impl::decompress_track_v0<decompression_settings_type>(context, track_index, writer); }
 		};
 
+		template<>
+		struct decompression_version_selector<compressed_tracks_version16::v02_01_99_1>
+		{
+			static constexpr bool is_version_supported(compressed_tracks_version16 version) { return version == compressed_tracks_version16::v02_01_99_1; }
+
+			template<class decompression_settings_type, class context_type, class database_settings_type>
+			RTM_FORCE_INLINE static bool initialize(context_type& context, const compressed_tracks& tracks, const database_context<database_settings_type>* database) { return acl_impl::initialize_v0<decompression_settings_type>(context, tracks, database); }
+
+			template<class context_type>
+			RTM_FORCE_INLINE static bool is_dirty(const context_type& context, const compressed_tracks& tracks) { return acl_impl::is_dirty_v0(context, tracks); }
+
+			template<class decompression_settings_type, class context_type>
+			RTM_FORCE_INLINE static void set_looping_policy(context_type& context, sample_looping_policy policy) { acl_impl::set_looping_policy_v0<decompression_settings_type>(context, policy); }
+
+			template<class decompression_settings_type, class context_type>
+			RTM_FORCE_INLINE static void seek(context_type& context, float sample_time, sample_rounding_policy rounding_policy) { acl_impl::seek_v0<decompression_settings_type>(context, sample_time, rounding_policy); }
+
+			template<class decompression_settings_type, class track_writer_type, class context_type>
+			RTM_FORCE_INLINE static void decompress_tracks(context_type& context, track_writer_type& writer) { acl_impl::decompress_tracks_v0<decompression_settings_type>(context, writer); }
+
+			template<class decompression_settings_type, class track_writer_type, class context_type>
+			RTM_FORCE_INLINE static void decompress_track(context_type& context, uint32_t track_index, track_writer_type& writer) { acl_impl::decompress_track_v0<decompression_settings_type>(context, track_index, writer); }
+		};
+
 		//////////////////////////////////////////////////////////////////////////
 		// Not optimized for any particular version.
 		//////////////////////////////////////////////////////////////////////////
@@ -126,6 +150,7 @@ namespace acl
 				{
 				case compressed_tracks_version16::v02_00_00:
 				case compressed_tracks_version16::v02_01_99:
+				case compressed_tracks_version16::v02_01_99_1:
 					return acl_impl::initialize_v0<decompression_settings_type>(context, tracks, database);
 				default:
 					ACL_ASSERT(false, "Unsupported version");
@@ -141,6 +166,7 @@ namespace acl
 				{
 				case compressed_tracks_version16::v02_00_00:
 				case compressed_tracks_version16::v02_01_99:
+				case compressed_tracks_version16::v02_01_99_1:
 					return acl_impl::is_dirty_v0(context, tracks);
 				default:
 					ACL_ASSERT(false, "Unsupported version");
@@ -156,6 +182,7 @@ namespace acl
 				{
 				case compressed_tracks_version16::v02_00_00:
 				case compressed_tracks_version16::v02_01_99:
+				case compressed_tracks_version16::v02_01_99_1:
 					acl_impl::set_looping_policy_v0<decompression_settings_type>(context, policy);
 					break;
 				default:
@@ -172,6 +199,7 @@ namespace acl
 				{
 				case compressed_tracks_version16::v02_00_00:
 				case compressed_tracks_version16::v02_01_99:
+				case compressed_tracks_version16::v02_01_99_1:
 					acl_impl::seek_v0<decompression_settings_type>(context, sample_time, rounding_policy);
 					break;
 				default:
@@ -188,6 +216,7 @@ namespace acl
 				{
 				case compressed_tracks_version16::v02_00_00:
 				case compressed_tracks_version16::v02_01_99:
+				case compressed_tracks_version16::v02_01_99_1:
 					acl_impl::decompress_tracks_v0<decompression_settings_type>(context, writer);
 					break;
 				default:
@@ -204,6 +233,7 @@ namespace acl
 				{
 				case compressed_tracks_version16::v02_00_00:
 				case compressed_tracks_version16::v02_01_99:
+				case compressed_tracks_version16::v02_01_99_1:
 					acl_impl::decompress_track_v0<decompression_settings_type>(context, track_index, writer);
 					break;
 				default:
diff --git a/includes/acl/decompression/impl/scalar_track_decompression.h b/includes/acl/decompression/impl/scalar_track_decompression.h
--- a/includes/acl/decompression/impl/scalar_track_decompression.h
+++ b/includes/acl/decompression/impl/scalar_track_decompression.h
@@ -223,11 +223,19 @@ namespace acl
 
 			const track_type8 track_type = header.track_type;
 
+			const compressed_tracks_version16 version = context.get_version();
+			const uint8_t* num_bits_at_bit_rate = version == compressed_tracks_version16::v02_00_00 ? k_bit_rate_num_bits_v0 : k_bit_rate_num_bits;
+
+#if defined(ACL_HAS_ASSERT_CHECKS)
+			const uint32_t max_bit_rate = version == compressed_tracks_version16::v02_00_00 ? sizeof(k_bit_rate_num_bits_v0) : sizeof(k_bit_rate_num_bits);
+#endif
+
 			for (uint32_t track_index = 0; track_index < num_tracks; ++track_index)
 			{
 				const acl_impl::track_metadata& metadata = per_track_metadata[track_index];
-				const uint8_t bit_rate = metadata.bit_rate;
-				const uint32_t num_bits_per_component = get_num_bits_at_bit_rate(bit_rate);
+				const uint32_t bit_rate = metadata.bit_rate;
+				ACL_ASSERT(bit_rate < max_bit_rate, "Invalid bit rate: %u", bit_rate);
+				const uint32_t num_bits_per_component = num_bits_at_bit_rate[bit_rate];
 
 				rtm::scalarf alpha = interpolation_alpha;
 				if (decompression_settings_type::is_per_track_rounding_supported())
@@ -241,7 +249,7 @@ namespace acl
 				if (track_type == track_type8::float1f && decompression_settings_type::is_track_type_supported(track_type8::float1f))
 				{
 					rtm::scalarf value;
-					if (is_constant_bit_rate(bit_rate))
+					if (num_bits_per_component == 0)	// Constant bit rate
 					{
 						value = rtm::scalar_load(constant_values);
 						constant_values += 1;
@@ -250,7 +258,7 @@ namespace acl
 					{
 						rtm::scalarf value0;
 						rtm::scalarf value1;
-						if (is_raw_bit_rate(bit_rate))
+						if (num_bits_per_component == 32)	// Raw bit rate
 						{
 							value0 = unpack_scalarf_32_unsafe(animated_values, track_bit_offset0);
 							value1 = unpack_scalarf_32_unsafe(animated_values, track_bit_offset1);
@@ -279,7 +287,7 @@ namespace acl
 				else if (track_type == track_type8::float2f && decompression_settings_type::is_track_type_supported(track_type8::float2f))
 				{
 					rtm::vector4f value;
-					if (is_constant_bit_rate(bit_rate))
+					if (num_bits_per_component == 0)	// Constant bit rate
 					{
 						value = rtm::vector_load(constant_values);
 						constant_values += 2;
@@ -288,7 +296,7 @@ namespace acl
 					{
 						rtm::vector4f value0;
 						rtm::vector4f value1;
-						if (is_raw_bit_rate(bit_rate))
+						if (num_bits_per_component == 32)	// Raw bit rate
 						{
 							value0 = unpack_vector2_64_unsafe(animated_values, track_bit_offset0);
 							value1 = unpack_vector2_64_unsafe(animated_values, track_bit_offset1);
@@ -317,7 +325,7 @@ namespace acl
 				else if (track_type == track_type8::float3f && decompression_settings_type::is_track_type_supported(track_type8::float3f))
 				{
 					rtm::vector4f value;
-					if (is_constant_bit_rate(bit_rate))
+					if (num_bits_per_component == 0)	// Constant bit rate
 					{
 						value = rtm::vector_load(constant_values);
 						constant_values += 3;
@@ -326,7 +334,7 @@ namespace acl
 					{
 						rtm::vector4f value0;
 						rtm::vector4f value1;
-						if (is_raw_bit_rate(bit_rate))
+						if (num_bits_per_component == 32)	// Raw bit rate
 						{
 							value0 = unpack_vector3_96_unsafe(animated_values, track_bit_offset0);
 							value1 = unpack_vector3_96_unsafe(animated_values, track_bit_offset1);
@@ -355,7 +363,7 @@ namespace acl
 				else if (track_type == track_type8::float4f && decompression_settings_type::is_track_type_supported(track_type8::float4f))
 				{
 					rtm::vector4f value;
-					if (is_constant_bit_rate(bit_rate))
+					if (num_bits_per_component == 0)	// Constant bit rate
 					{
 						value = rtm::vector_load(constant_values);
 						constant_values += 4;
@@ -364,7 +372,7 @@ namespace acl
 					{
 						rtm::vector4f value0;
 						rtm::vector4f value1;
-						if (is_raw_bit_rate(bit_rate))
+						if (num_bits_per_component == 32)	// Raw bit rate
 						{
 							value0 = unpack_vector4_128_unsafe(animated_values, track_bit_offset0);
 							value1 = unpack_vector4_128_unsafe(animated_values, track_bit_offset1);
@@ -393,7 +401,7 @@ namespace acl
 				else if (track_type == track_type8::vector4f && decompression_settings_type::is_track_type_supported(track_type8::vector4f))
 				{
 					rtm::vector4f value;
-					if (is_constant_bit_rate(bit_rate))
+					if (num_bits_per_component == 0)	// Constant bit rate
 					{
 						value = rtm::vector_load(constant_values);
 						constant_values += 4;
@@ -402,7 +410,7 @@ namespace acl
 					{
 						rtm::vector4f value0;
 						rtm::vector4f value1;
-						if (is_raw_bit_rate(bit_rate))
+						if (num_bits_per_component == 32)	// Raw bit rate
 						{
 							value0 = unpack_vector4_128_unsafe(animated_values, track_bit_offset0);
 							value1 = unpack_vector4_128_unsafe(animated_values, track_bit_offset1);
@@ -467,6 +475,13 @@ namespace acl
 				interpolation_alpha = rtm::scalar_set(apply_rounding_policy(context.interpolation_alpha, rounding_policy_));
 			}
 
+			const compressed_tracks_version16 version = context.get_version();
+			const uint8_t* num_bits_at_bit_rate = version == compressed_tracks_version16::v02_00_00 ? k_bit_rate_num_bits_v0 : k_bit_rate_num_bits;
+
+#if defined(ACL_HAS_ASSERT_CHECKS)
+			const uint32_t max_bit_rate = version == compressed_tracks_version16::v02_00_00 ? sizeof(k_bit_rate_num_bits_v0) : sizeof(k_bit_rate_num_bits);
+#endif
+
 			const float* constant_values = scalars_header.get_track_constant_values();
 			const float* range_values = scalars_header.get_track_range_values();
 
@@ -478,32 +493,34 @@ namespace acl
 			for (uint32_t scan_track_index = 0; scan_track_index < track_index; ++scan_track_index)
 			{
 				const acl_impl::track_metadata& metadata = per_track_metadata[scan_track_index];
-				const uint8_t bit_rate = metadata.bit_rate;
-				const uint32_t num_bits_per_component = get_num_bits_at_bit_rate(bit_rate);
+				const uint32_t bit_rate = metadata.bit_rate;
+				ACL_ASSERT(bit_rate < max_bit_rate, "Invalid bit rate: %u", bit_rate);
+				const uint32_t num_bits_per_component = num_bits_at_bit_rate[bit_rate];
 				track_bit_offset += num_bits_per_component * num_element_components;
 
-				if (is_constant_bit_rate(bit_rate))
+				if (num_bits_per_component == 0)	// Constant bit rate
 					constant_values += num_element_components;
-				else if (!is_raw_bit_rate(bit_rate))
+				else if (num_bits_per_component < 32)	// Not raw bit rate
 					range_values += num_element_components * 2;
 			}
 
 			const acl_impl::track_metadata& metadata = per_track_metadata[track_index];
-			const uint8_t bit_rate = metadata.bit_rate;
-			const uint32_t num_bits_per_component = get_num_bits_at_bit_rate(bit_rate);
+			const uint32_t bit_rate = metadata.bit_rate;
+			ACL_ASSERT(bit_rate < max_bit_rate, "Invalid bit rate: %u", bit_rate);
+			const uint32_t num_bits_per_component = num_bits_at_bit_rate[bit_rate];
 
 			const uint8_t* animated_values = scalars_header.get_track_animated_values();
 
 			if (track_type == track_type8::float1f && decompression_settings_type::is_track_type_supported(track_type8::float1f))
 			{
 				rtm::scalarf value;
-				if (is_constant_bit_rate(bit_rate))
+				if (num_bits_per_component == 0)	// Constant bit rate
 					value = rtm::scalar_load(constant_values);
 				else
 				{
 					rtm::scalarf value0;
 					rtm::scalarf value1;
-					if (is_raw_bit_rate(bit_rate))
+					if (num_bits_per_component == 32)	// Raw bit rate
 					{
 						value0 = unpack_scalarf_32_unsafe(animated_values, context.key_frame_bit_offsets[0] + track_bit_offset);
 						value1 = unpack_scalarf_32_unsafe(animated_values, context.key_frame_bit_offsets[1] + track_bit_offset);
@@ -527,13 +544,13 @@ namespace acl
 			else if (track_type == track_type8::float2f && decompression_settings_type::is_track_type_supported(track_type8::float2f))
 			{
 				rtm::vector4f value;
-				if (is_constant_bit_rate(bit_rate))
+				if (num_bits_per_component == 0)	// Constant bit rate
 					value = rtm::vector_load(constant_values);
 				else
 				{
 					rtm::vector4f value0;
 					rtm::vector4f value1;
-					if (is_raw_bit_rate(bit_rate))
+					if (num_bits_per_component == 32)	// Raw bit rate
 					{
 						value0 = unpack_vector2_64_unsafe(animated_values, context.key_frame_bit_offsets[0] + track_bit_offset);
 						value1 = unpack_vector2_64_unsafe(animated_values, context.key_frame_bit_offsets[1] + track_bit_offset);
@@ -557,13 +574,13 @@ namespace acl
 			else if (track_type == track_type8::float3f && decompression_settings_type::is_track_type_supported(track_type8::float3f))
 			{
 				rtm::vector4f value;
-				if (is_constant_bit_rate(bit_rate))
+				if (num_bits_per_component == 0)	// Constant bit rate
 					value = rtm::vector_load(constant_values);
 				else
 				{
 					rtm::vector4f value0;
 					rtm::vector4f value1;
-					if (is_raw_bit_rate(bit_rate))
+					if (num_bits_per_component == 32)	// Raw bit rate
 					{
 						value0 = unpack_vector3_96_unsafe(animated_values, context.key_frame_bit_offsets[0] + track_bit_offset);
 						value1 = unpack_vector3_96_unsafe(animated_values, context.key_frame_bit_offsets[1] + track_bit_offset);
@@ -587,13 +604,13 @@ namespace acl
 			else if (track_type == track_type8::float4f && decompression_settings_type::is_track_type_supported(track_type8::float4f))
 			{
 				rtm::vector4f value;
-				if (is_constant_bit_rate(bit_rate))
+				if (num_bits_per_component == 0)	// Constant bit rate
 					value = rtm::vector_load(constant_values);
 				else
 				{
 					rtm::vector4f value0;
 					rtm::vector4f value1;
-					if (is_raw_bit_rate(bit_rate))
+					if (num_bits_per_component == 32)	// Raw bit rate
 					{
 						value0 = unpack_vector4_128_unsafe(animated_values, context.key_frame_bit_offsets[0] + track_bit_offset);
 						value1 = unpack_vector4_128_unsafe(animated_values, context.key_frame_bit_offsets[1] + track_bit_offset);
@@ -617,13 +634,13 @@ namespace acl
 			else if (track_type == track_type8::vector4f && decompression_settings_type::is_track_type_supported(track_type8::vector4f))
 			{
 				rtm::vector4f value;
-				if (is_constant_bit_rate(bit_rate))
+				if (num_bits_per_component == 0)	// Constant bit rate
 					value = rtm::vector_load(constant_values);
 				else
 				{
 					rtm::vector4f value0;
 					rtm::vector4f value1;
-					if (is_raw_bit_rate(bit_rate))
+					if (num_bits_per_component == 32)	// Raw bit rate
 					{
 						value0 = unpack_vector4_128_unsafe(animated_values, context.key_frame_bit_offsets[0] + track_bit_offset);
 						value1 = unpack_vector4_128_unsafe(animated_values, context.key_frame_bit_offsets[1] + track_bit_offset);
diff --git a/includes/acl/decompression/impl/transform_animated_track_cache.h b/includes/acl/decompression/impl/transform_animated_track_cache.h
--- a/includes/acl/decompression/impl/transform_animated_track_cache.h
+++ b/includes/acl/decompression/impl/transform_animated_track_cache.h
@@ -517,6 +517,10 @@ namespace acl
 			uint32_t num_to_unpack, segment_animated_sampling_context_v0& segment_sampling_context)
 		{
 			const rotation_format8 rotation_format = get_rotation_format<decompression_settings_type>(decomp_context.rotation_format);
+			const compressed_tracks_version16 version = get_version<decompression_settings_type>(decomp_context.get_version());
+
+			// See write_format_per_track_data(..) for details
+			const uint32_t num_raw_bit_rate_bits = version >= compressed_tracks_version16::v02_01_99_1 ? 31 : 32;
 
 			uint32_t segment_range_ignore_mask = 0;
 			uint32_t clip_range_ignore_mask = 0;
@@ -582,7 +586,7 @@ namespace acl
 						sample_segment_range_ignore_mask = 0xFF;	// Ignore segment range
 						sample_clip_range_ignore_mask = 0x00;
 					}
-					else if (num_bits_at_bit_rate == 32)			// Raw bit rate
+					else if (num_bits_at_bit_rate == num_raw_bit_rate_bits)	// Raw bit rate
 					{
 						rotation_as_vec = unpack_vector3_96_unsafe(animated_track_data, animated_track_data_bit_offset);
 						animated_track_data_bit_offset += 96;
@@ -688,6 +692,10 @@ namespace acl
 			const clip_animated_sampling_context_v0& clip_sampling_context, const segment_animated_sampling_context_v0& segment_sampling_context)
 		{
 			const rotation_format8 rotation_format = get_rotation_format<decompression_settings_type>(decomp_context.rotation_format);
+			const compressed_tracks_version16 version = get_version<decompression_settings_type>(decomp_context.get_version());
+
+			// See write_format_per_track_data(..) for details
+			const uint32_t num_raw_bit_rate_bits = version >= compressed_tracks_version16::v02_01_99_1 ? 31 : 32;
 
 			uint32_t segment_range_ignore_mask = 0;
 			uint32_t clip_range_ignore_mask = 0;
@@ -707,13 +715,23 @@ namespace acl
 				{
 				default:
 				case 3:
-					skip_size += format_per_track_data[2];
+				{
+					// TODO: Can we do an alternate more efficient implementation? We want to increment by one if num bits == 31
+					const uint32_t num_bits_at_bit_rate = format_per_track_data[2];
+					skip_size += (num_bits_at_bit_rate == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate;
+				}
 					ACL_SWITCH_CASE_FALLTHROUGH_INTENTIONAL;
 				case 2:
-					skip_size += format_per_track_data[1];
+				{
+					const uint32_t num_bits_at_bit_rate = format_per_track_data[1];
+					skip_size += (num_bits_at_bit_rate == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate;
+				}
 					ACL_SWITCH_CASE_FALLTHROUGH_INTENTIONAL;
 				case 1:
-					skip_size += format_per_track_data[0];
+				{
+					const uint32_t num_bits_at_bit_rate = format_per_track_data[0];
+					skip_size += (num_bits_at_bit_rate == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate;
+				}
 					ACL_SWITCH_CASE_FALLTHROUGH_INTENTIONAL;
 				case 0:
 					// Nothing to skip
@@ -762,7 +780,7 @@ namespace acl
 					segment_range_ignore_mask = 0xFF;	// Ignore segment range
 					clip_range_ignore_mask = 0x00;
 				}
-				else if (num_bits_at_bit_rate == 32)	// Raw bit rate
+				else if (num_bits_at_bit_rate == num_raw_bit_rate_bits)	// Raw bit rate
 				{
 					rotation_as_vec = unpack_vector3_96_unsafe(animated_track_data, animated_track_data_bit_offset);
 					segment_range_ignore_mask = 0xFF;	// Ignore segment range
@@ -856,6 +874,10 @@ namespace acl
 			const clip_animated_sampling_context_v0& clip_sampling_context, segment_animated_sampling_context_v0& segment_sampling_context)
 		{
 			const vector_format8 format = get_vector_format<decompression_settings_adapter_type>(decompression_settings_adapter_type::get_vector_format(decomp_context));
+			const compressed_tracks_version16 version = get_version<decompression_settings_adapter_type>(decomp_context.get_version());
+
+			// See write_format_per_track_data(..) for details
+			const uint32_t num_raw_bit_rate_bits = version >= compressed_tracks_version16::v02_01_99_1 ? 31 : 32;
 
 			const uint8_t* format_per_track_data = segment_sampling_context.format_per_track_data;
 			const uint8_t* segment_range_data = segment_sampling_context.segment_range_data;
@@ -884,7 +906,7 @@ namespace acl
 						segment_range_data += sizeof(uint16_t) * 3;
 						range_ignore_flags = 0x01;	// Skip segment only
 					}
-					else if (num_bits_at_bit_rate == 32)	// Raw bit rate
+					else if (num_bits_at_bit_rate == num_raw_bit_rate_bits)	// Raw bit rate
 					{
 						sample = unpack_vector3_96_unsafe(animated_track_data, animated_track_data_bit_offset);
 						animated_track_data_bit_offset += 96;
@@ -973,6 +995,10 @@ namespace acl
 			const clip_animated_sampling_context_v0& clip_sampling_context, const segment_animated_sampling_context_v0& segment_sampling_context)
 		{
 			const vector_format8 format = get_vector_format<decompression_settings_adapter_type>(decompression_settings_adapter_type::get_vector_format(decomp_context));
+			const compressed_tracks_version16 version = get_version<decompression_settings_adapter_type>(decomp_context.get_version());
+
+			// See write_format_per_track_data(..) for details
+			const uint32_t num_raw_bit_rate_bits = version >= compressed_tracks_version16::v02_01_99_1 ? 31 : 32;
 
 			const uint8_t* format_per_track_data = segment_sampling_context.format_per_track_data;
 			const uint8_t* segment_range_data = segment_sampling_context.segment_range_data;
@@ -996,13 +1022,23 @@ namespace acl
 				{
 				default:
 				case 3:
-					skip_size += format_per_track_data[2];
+				{
+					// TODO: Can we do an alternate more efficient implementation? We want to increment by one if num bits == 31
+					const uint32_t num_bits_at_bit_rate = format_per_track_data[2];
+					skip_size += (num_bits_at_bit_rate == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate;
+				}
 					ACL_SWITCH_CASE_FALLTHROUGH_INTENTIONAL;
 				case 2:
-					skip_size += format_per_track_data[1];
+				{
+					const uint32_t num_bits_at_bit_rate = format_per_track_data[1];
+					skip_size += (num_bits_at_bit_rate == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate;
+				}
 					ACL_SWITCH_CASE_FALLTHROUGH_INTENTIONAL;
 				case 1:
-					skip_size += format_per_track_data[0];
+				{
+					const uint32_t num_bits_at_bit_rate = format_per_track_data[0];
+					skip_size += (num_bits_at_bit_rate == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate;
+				}
 					ACL_SWITCH_CASE_FALLTHROUGH_INTENTIONAL;
 				case 0:
 					// Nothing to skip
@@ -1021,7 +1057,7 @@ namespace acl
 					sample = unpack_vector3_u48_unsafe(segment_range_data);
 					range_ignore_flags = 0x01;	// Skip segment only
 				}
-				else if (num_bits_at_bit_rate == 32)	// Raw bit rate
+				else if (num_bits_at_bit_rate == num_raw_bit_rate_bits)	// Raw bit rate
 				{
 					sample = unpack_vector3_96_unsafe(animated_track_data, animated_track_data_bit_offset);
 					range_ignore_flags = 0x03;	// Skip clip and segment
@@ -1066,13 +1102,21 @@ namespace acl
 		}
 
 		// Force inline this function, we only use it to keep the code readable
+		template<class decompression_settings_adapter_type>
 		RTM_FORCE_INLINE RTM_DISABLE_SECURITY_COOKIE_CHECK void count_animated_group_bit_size(
+			const persistent_transform_decompression_context_v0& decomp_context,
 			const uint8_t* format_per_track_data0, const uint8_t* format_per_track_data1, uint32_t num_groups_to_skip,
 			uint32_t& out_group_bit_size_per_component0, uint32_t& out_group_bit_size_per_component1)
 		{
+			const compressed_tracks_version16 version = get_version<decompression_settings_adapter_type>(decomp_context.get_version());
+
+			// See write_format_per_track_data(..) for details
+			const uint32_t num_raw_bit_rate_bits = version >= compressed_tracks_version16::v02_01_99_1 ? 31 : 32;
+
 			// TODO: Do the same with NEON
 #if defined(RTM_AVX_INTRINSICS)
-			__m128i zero = _mm_setzero_si128();
+			const __m128i zero = _mm_setzero_si128();
+			const __m128i num_raw_bit_rate_bits_v = _mm_set1_epi32(num_raw_bit_rate_bits);
 			__m128i group_bit_size_per_component0_v = zero;
 			__m128i group_bit_size_per_component1_v = zero;
 
@@ -1083,8 +1127,27 @@ namespace acl
 				const __m128i group_bit_size_per_component0_u8 = _mm_loadu_si128(reinterpret_cast<const __m128i*>(format_per_track_data0 + group_offset));
 				const __m128i group_bit_size_per_component1_u8 = _mm_loadu_si128(reinterpret_cast<const __m128i*>(format_per_track_data1 + group_offset));
 
-				group_bit_size_per_component0_v = _mm_add_epi32(group_bit_size_per_component0_v, _mm_unpacklo_epi16(_mm_unpacklo_epi8(group_bit_size_per_component0_u8, zero), zero));
-				group_bit_size_per_component1_v = _mm_add_epi32(group_bit_size_per_component1_v, _mm_unpacklo_epi16(_mm_unpacklo_epi8(group_bit_size_per_component1_u8, zero), zero));
+				// Unpack from uint8_t to uint32_t
+				__m128i group_bit_size_per_component0_u32 = _mm_unpacklo_epi16(_mm_unpacklo_epi8(group_bit_size_per_component0_u8, zero), zero);
+				__m128i group_bit_size_per_component1_u32 = _mm_unpacklo_epi16(_mm_unpacklo_epi8(group_bit_size_per_component1_u8, zero), zero);
+
+				if (version >= compressed_tracks_version16::v02_01_99_1)
+				{
+					// If the number of bits is 31, we are the raw bit rate and we need to add 1 (we'll add 31 below, and 1 more for a total of 32 bits)
+					// If the number of bits is 31, our mask's value will be 0xFFFFFFFF which is -1, otherwise it is 0x00000000
+					const __m128i is_raw_num_bits0 = _mm_cmpeq_epi32(group_bit_size_per_component0_u32, num_raw_bit_rate_bits_v);
+					const __m128i is_raw_num_bits1 = _mm_cmpeq_epi32(group_bit_size_per_component1_u32, num_raw_bit_rate_bits_v);
+
+					// We subtract the mask value directly, it is either -1 or 0
+					group_bit_size_per_component0_u32 = _mm_sub_epi32(group_bit_size_per_component0_u32, is_raw_num_bits0);
+					group_bit_size_per_component1_u32 = _mm_sub_epi32(group_bit_size_per_component1_u32, is_raw_num_bits1);
+				}
+				else
+					(void)num_raw_bit_rate_bits_v;
+
+				// Add how many bits per component we have
+				group_bit_size_per_component0_v = _mm_add_epi32(group_bit_size_per_component0_v, group_bit_size_per_component0_u32);
+				group_bit_size_per_component1_v = _mm_add_epi32(group_bit_size_per_component1_v, group_bit_size_per_component1_u32);
 			}
 
 			// Now we sum horizontally
@@ -1099,17 +1162,28 @@ namespace acl
 
 			for (uint32_t group_index = 0; group_index < num_groups_to_skip; ++group_index)
 			{
-				group_bit_size_per_component0 += format_per_track_data0[(group_index * 4) + 0];
-				group_bit_size_per_component1 += format_per_track_data1[(group_index * 4) + 0];
+				// TODO: Can we do an alternate more efficient implementation? We want to increment by one if num bits == 31
+
+				const uint32_t num_bits_at_bit_rate_0_0 = format_per_track_data0[(group_index * 4) + 0];
+				const uint32_t num_bits_at_bit_rate_1_0 = format_per_track_data1[(group_index * 4) + 0];
+				const uint32_t num_bits_at_bit_rate_0_1 = format_per_track_data0[(group_index * 4) + 1];
+				const uint32_t num_bits_at_bit_rate_1_1 = format_per_track_data1[(group_index * 4) + 1];
+				const uint32_t num_bits_at_bit_rate_0_2 = format_per_track_data0[(group_index * 4) + 2];
+				const uint32_t num_bits_at_bit_rate_1_2 = format_per_track_data1[(group_index * 4) + 2];
+				const uint32_t num_bits_at_bit_rate_0_3 = format_per_track_data0[(group_index * 4) + 3];
+				const uint32_t num_bits_at_bit_rate_1_3 = format_per_track_data1[(group_index * 4) + 3];
+
+				group_bit_size_per_component0 += (num_bits_at_bit_rate_0_0 == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate_0_0;
+				group_bit_size_per_component1 += (num_bits_at_bit_rate_1_0 == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate_1_0;
 
-				group_bit_size_per_component0 += format_per_track_data0[(group_index * 4) + 1];
-				group_bit_size_per_component1 += format_per_track_data1[(group_index * 4) + 1];
+				group_bit_size_per_component0 += (num_bits_at_bit_rate_0_1 == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate_0_1;
+				group_bit_size_per_component1 += (num_bits_at_bit_rate_1_1 == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate_1_1;
 
-				group_bit_size_per_component0 += format_per_track_data0[(group_index * 4) + 2];
-				group_bit_size_per_component1 += format_per_track_data1[(group_index * 4) + 2];
+				group_bit_size_per_component0 += (num_bits_at_bit_rate_0_2 == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate_0_2;
+				group_bit_size_per_component1 += (num_bits_at_bit_rate_1_2 == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate_1_2;
 
-				group_bit_size_per_component0 += format_per_track_data0[(group_index * 4) + 3];
-				group_bit_size_per_component1 += format_per_track_data1[(group_index * 4) + 3];
+				group_bit_size_per_component0 += (num_bits_at_bit_rate_0_3 == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate_0_3;
+				group_bit_size_per_component1 += (num_bits_at_bit_rate_1_3 == num_raw_bit_rate_bits) ? 32 : num_bits_at_bit_rate_1_3;
 			}
 
 			out_group_bit_size_per_component0 = group_bit_size_per_component0;
@@ -1603,7 +1677,7 @@ namespace acl
 
 					uint32_t group_bit_size_per_component0;
 					uint32_t group_bit_size_per_component1;
-					count_animated_group_bit_size(format_per_track_data0, format_per_track_data1, num_groups_to_skip, group_bit_size_per_component0, group_bit_size_per_component1);
+					count_animated_group_bit_size<decompression_settings_type>(decomp_context, format_per_track_data0, format_per_track_data1, num_groups_to_skip, group_bit_size_per_component0, group_bit_size_per_component1);
 
 					const uint32_t format_per_track_data_skip_size = num_groups_to_skip * 4;
 					const uint32_t segment_range_data_skip_size = num_groups_to_skip * 6 * 4;
@@ -1777,7 +1851,7 @@ namespace acl
 
 					uint32_t group_bit_size_per_component0;
 					uint32_t group_bit_size_per_component1;
-					count_animated_group_bit_size(format_per_track_data0, format_per_track_data1, num_groups_to_skip, group_bit_size_per_component0, group_bit_size_per_component1);
+					count_animated_group_bit_size<decompression_settings_adapter_type>(decomp_context, format_per_track_data0, format_per_track_data1, num_groups_to_skip, group_bit_size_per_component0, group_bit_size_per_component1);
 
 					const uint32_t format_per_track_data_skip_size = num_groups_to_skip * 4;
 					const uint32_t segment_range_data_skip_size = num_groups_to_skip * 6 * 4;
@@ -1899,7 +1973,7 @@ namespace acl
 
 					uint32_t group_bit_size_per_component0;
 					uint32_t group_bit_size_per_component1;
-					count_animated_group_bit_size(format_per_track_data0, format_per_track_data1, num_groups_to_skip, group_bit_size_per_component0, group_bit_size_per_component1);
+					count_animated_group_bit_size<decompression_settings_adapter_type>(decomp_context, format_per_track_data0, format_per_track_data1, num_groups_to_skip, group_bit_size_per_component0, group_bit_size_per_component1);
 
 					const uint32_t format_per_track_data_skip_size = num_groups_to_skip * 4;
 					const uint32_t segment_range_data_skip_size = num_groups_to_skip * 6 * 4;
diff --git a/includes/acl/decompression/impl/transform_decompression_context.h b/includes/acl/decompression/impl/transform_decompression_context.h
--- a/includes/acl/decompression/impl/transform_decompression_context.h
+++ b/includes/acl/decompression/impl/transform_decompression_context.h
@@ -120,6 +120,7 @@ namespace acl
 			static constexpr vector_format8 get_vector_format(const persistent_transform_decompression_context_v0& context) { return context.translation_format; }
 			static constexpr bool is_vector_format_supported(vector_format8 format) { return decompression_settings_type::is_translation_format_supported(format); }
 			static constexpr bool is_per_track_rounding_supported() { return decompression_settings_type::is_per_track_rounding_supported(); }
+			static constexpr compressed_tracks_version16 version_supported() { return decompression_settings_type::version_supported(); }
 		};
 
 		template<class decompression_settings_type>
@@ -130,6 +131,7 @@ namespace acl
 			static constexpr vector_format8 get_vector_format(const persistent_transform_decompression_context_v0& context) { return context.scale_format; }
 			static constexpr bool is_vector_format_supported(vector_format8 format) { return decompression_settings_type::is_scale_format_supported(format); }
 			static constexpr bool is_per_track_rounding_supported() { return decompression_settings_type::is_per_track_rounding_supported(); }
+			static constexpr compressed_tracks_version16 version_supported() { return decompression_settings_type::version_supported(); }
 		};
 
 		// Returns the statically known number of rotation formats supported by the decompression settings
@@ -189,6 +191,12 @@ namespace acl
 				// otherwise we always interpolate
 				: format == rotation_format8::quatf_full ? (interpolation_alpha > 0.0F && interpolation_alpha < 1.0F) : true;
 		}
+
+		template<class decompression_settings_type>
+		constexpr compressed_tracks_version16 get_version(compressed_tracks_version16 version)
+		{
+			return decompression_settings_type::version_supported() == compressed_tracks_version16::any ? version : decompression_settings_type::version_supported();
+		}
 	}
 
 	ACL_IMPL_VERSION_NAMESPACE_END
diff --git a/includes/acl/io/clip_reader.h b/includes/acl/io/clip_reader.h
--- a/includes/acl/io/clip_reader.h
+++ b/includes/acl/io/clip_reader.h
@@ -187,9 +187,6 @@ namespace acl
 		float m_additive_base_sample_rate				= 0.0F;
 
 		bool m_has_settings								= false;
-		float m_constant_rotation_threshold_angle		= 0.0F;
-		float m_constant_translation_threshold			= 0.0F;
-		float m_constant_scale_threshold				= 0.0F;
 		float m_error_threshold							= 0.0F;
 
 		sjson::StringView* m_bone_names					= nullptr;
@@ -420,9 +417,6 @@ namespace acl
 				if (!get_vector_format(scale_format.c_str(), out_settings->scale_format))
 					goto invalid_value_error;
 
-				m_constant_rotation_threshold_angle = float(constant_rotation_threshold_angle);
-				m_constant_translation_threshold = float(constant_translation_threshold);
-				m_constant_scale_threshold = float(constant_scale_threshold);
 				m_error_threshold = float(error_threshold);
 			}
 
@@ -597,12 +591,7 @@ namespace acl
 					desc.shell_distance = vertex_distance;
 
 					if (m_has_settings)
-					{
 						desc.precision = m_error_threshold;
-						desc.constant_rotation_threshold_angle = m_constant_rotation_threshold_angle;
-						desc.constant_translation_threshold = m_constant_translation_threshold;
-						desc.constant_scale_threshold = m_constant_scale_threshold;
-					}
 
 					// Create a dummy track for now to hold our arguments
 					(*tracks)[i] = track_qvvf::make_ref(desc, nullptr, 0, 30.0F);
@@ -816,9 +805,11 @@ namespace acl
 				m_parser.try_read("parent_index", transform_desc.parent_index, k_invalid_track_index);
 
 				transform_desc.shell_distance = read_optional_float("shell_distance", transform_desc.shell_distance);
-				transform_desc.constant_rotation_threshold_angle = read_optional_float("constant_rotation_threshold_angle", transform_desc.constant_rotation_threshold_angle);
-				transform_desc.constant_translation_threshold = read_optional_float("constant_translation_threshold", transform_desc.constant_translation_threshold);
-				transform_desc.constant_scale_threshold = read_optional_float("constant_scale_threshold", transform_desc.constant_scale_threshold);
+
+				// Deprecated, no longer used
+				read_optional_float("constant_rotation_threshold_angle", -1.0F);
+				read_optional_float("constant_translation_threshold", -1.0F);
+				read_optional_float("constant_scale_threshold", -1.0F);
 
 				scalar_desc.output_index = output_index;
 				transform_desc.output_index = output_index;
diff --git a/includes/acl/io/clip_writer.h b/includes/acl/io/clip_writer.h
--- a/includes/acl/io/clip_writer.h
+++ b/includes/acl/io/clip_writer.h
@@ -121,9 +121,6 @@ namespace acl
 			writer["output_index"] = desc.output_index;
 			writer["parent_index"] = desc.parent_index;
 			writer["shell_distance"] = format_hex_float(desc.shell_distance, buffer, sizeof(buffer));
-			writer["constant_rotation_threshold_angle"] = format_hex_float(desc.constant_rotation_threshold_angle, buffer, sizeof(buffer));
-			writer["constant_translation_threshold"] = format_hex_float(desc.constant_translation_threshold, buffer, sizeof(buffer));
-			writer["constant_scale_threshold"] = format_hex_float(desc.constant_scale_threshold, buffer, sizeof(buffer));
 			writer["bind_rotation"] = [&](sjson::ArrayWriter& rotation_writer)
 			{
 				rotation_writer.push(acl_impl::format_hex_float(rtm::quat_get_x(desc.default_value.rotation), buffer, sizeof(buffer)));
diff --git a/includes/acl/math/scalar_packing.h b/includes/acl/math/scalar_packing.h
--- a/includes/acl/math/scalar_packing.h
+++ b/includes/acl/math/scalar_packing.h
@@ -112,7 +112,7 @@ namespace acl
 	// Assumes the 'vector_data' is in big-endian order and padded in order to load up to 8 bytes from it
 	inline rtm::scalarf RTM_SIMD_CALL unpack_scalarf_uXX_unsafe(uint32_t num_bits, const uint8_t* vector_data, uint32_t bit_offset)
 	{
-		ACL_ASSERT(num_bits <= 19, "This function does not support reading more than 19 bits per component");
+		ACL_ASSERT(num_bits <= 23, "This function does not support reading more than 23 bits per component");
 
 		struct PackedTableEntry
 		{
@@ -125,14 +125,14 @@ namespace acl
 			uint32_t mask;
 		};
 
-		// TODO: We technically don't need the first 3 entries, which could save a few bytes
-		alignas(64) static constexpr PackedTableEntry k_packed_constants[20] =
+		alignas(64) static constexpr PackedTableEntry k_packed_constants[24] =
 		{
 			PackedTableEntry(0), PackedTableEntry(1), PackedTableEntry(2), PackedTableEntry(3),
 			PackedTableEntry(4), PackedTableEntry(5), PackedTableEntry(6), PackedTableEntry(7),
 			PackedTableEntry(8), PackedTableEntry(9), PackedTableEntry(10), PackedTableEntry(11),
 			PackedTableEntry(12), PackedTableEntry(13), PackedTableEntry(14), PackedTableEntry(15),
 			PackedTableEntry(16), PackedTableEntry(17), PackedTableEntry(18), PackedTableEntry(19),
+			PackedTableEntry(20), PackedTableEntry(21), PackedTableEntry(22), PackedTableEntry(23),
 		};
 
 #if defined(RTM_SSE2_INTRINSICS)
diff --git a/includes/acl/math/vector4_packing.h b/includes/acl/math/vector4_packing.h
--- a/includes/acl/math/vector4_packing.h
+++ b/includes/acl/math/vector4_packing.h
@@ -225,24 +225,43 @@ namespace acl
 		uint32_t vector_z = pack_scalar_unsigned(rtm::vector_get_z(vector), num_bits);
 		uint32_t vector_w = pack_scalar_unsigned(rtm::vector_get_w(vector), num_bits);
 
-		uint64_t vector_u64 = static_cast<uint64_t>(vector_x) << (64 - num_bits * 1);
-		vector_u64 |= static_cast<uint64_t>(vector_y) << (64 - num_bits * 2);
-		vector_u64 |= static_cast<uint64_t>(vector_z) << (64 - num_bits * 3);
-		vector_u64 = byte_swap(vector_u64);
+		if (num_bits * 3 >= 64)
+		{
+			// First 3 components don't fit in 64 bits, write [xy] first, and partial [zw] after
+			uint64_t vector_u64 = static_cast<uint64_t>(vector_x) << (64 - num_bits * 1);
+			vector_u64 |= static_cast<uint64_t>(vector_y) << (64 - num_bits * 2);
+			vector_u64 = byte_swap(vector_u64);
 
-		unaligned_write(vector_u64, out_vector_data);
+			unaligned_write(vector_u64, out_vector_data);
 
-		uint32_t vector_u32 = vector_w << (32 - num_bits);
-		vector_u32 = byte_swap(vector_u32);
+			vector_u64 = static_cast<uint64_t>(vector_z) << (64 - num_bits * 1);
+			vector_u64 |= static_cast<uint64_t>(vector_w) << (64 - num_bits * 2);
+			vector_u64 = byte_swap(vector_u64);
+
+			memcpy_bits(out_vector_data, uint64_t(num_bits) * 2, &vector_u64, 0, uint64_t(num_bits) * 2);
+		}
+		else
+		{
+			// Write out [xyz] first, they fit in 64 bits for sure and write out partial [w] after
+			uint64_t vector_u64 = static_cast<uint64_t>(vector_x) << (64 - num_bits * 1);
+			vector_u64 |= static_cast<uint64_t>(vector_y) << (64 - num_bits * 2);
+			vector_u64 |= static_cast<uint64_t>(vector_z) << (64 - num_bits * 3);
+			vector_u64 = byte_swap(vector_u64);
 
-		const uint32_t bit_offset = num_bits * 3;
-		memcpy_bits(out_vector_data, bit_offset, &vector_u32, 0, num_bits);
+			unaligned_write(vector_u64, out_vector_data);
+
+			uint32_t vector_u32 = vector_w << (32 - num_bits);
+			vector_u32 = byte_swap(vector_u32);
+
+			const uint32_t bit_offset = num_bits * 3;
+			memcpy_bits(out_vector_data, bit_offset, &vector_u32, 0, num_bits);
+		}
 	}
 
 	// Assumes the 'vector_data' is in big-endian order and padded in order to load up to 16 bytes from it
 	inline rtm::vector4f RTM_SIMD_CALL unpack_vector4_uXX_unsafe(uint32_t num_bits, const uint8_t* vector_data, uint32_t bit_offset)
 	{
-		ACL_ASSERT(num_bits <= 19, "This function does not support reading more than 19 bits per component");
+		ACL_ASSERT(num_bits <= 23, "This function does not support reading more than 23 bits per component");
 
 		struct PackedTableEntry
 		{
@@ -255,14 +274,14 @@ namespace acl
 			uint32_t mask;
 		};
 
-		// TODO: We technically don't need the first 3 entries, which could save a few bytes
-		alignas(64) static constexpr PackedTableEntry k_packed_constants[20] =
+		alignas(64) static constexpr PackedTableEntry k_packed_constants[24] =
 		{
 			PackedTableEntry(0), PackedTableEntry(1), PackedTableEntry(2), PackedTableEntry(3),
 			PackedTableEntry(4), PackedTableEntry(5), PackedTableEntry(6), PackedTableEntry(7),
 			PackedTableEntry(8), PackedTableEntry(9), PackedTableEntry(10), PackedTableEntry(11),
 			PackedTableEntry(12), PackedTableEntry(13), PackedTableEntry(14), PackedTableEntry(15),
 			PackedTableEntry(16), PackedTableEntry(17), PackedTableEntry(18), PackedTableEntry(19),
+			PackedTableEntry(20), PackedTableEntry(21), PackedTableEntry(22), PackedTableEntry(23),
 		};
 
 #if defined(RTM_SSE2_INTRINSICS)
@@ -807,12 +826,30 @@ namespace acl
 		uint32_t vector_y = pack_scalar_unsigned(rtm::vector_get_y(vector), num_bits);
 		uint32_t vector_z = pack_scalar_unsigned(rtm::vector_get_z(vector), num_bits);
 
-		uint64_t vector_u64 = static_cast<uint64_t>(vector_x) << (64 - num_bits * 1);
-		vector_u64 |= static_cast<uint64_t>(vector_y) << (64 - num_bits * 2);
-		vector_u64 |= static_cast<uint64_t>(vector_z) << (64 - num_bits * 3);
-		vector_u64 = byte_swap(vector_u64);
+		if (num_bits * 3 >= 64)
+		{
+			// All 3 components don't fit in 64 bits, write [xy] first, and partial [z] after
+			uint64_t vector_u64 = static_cast<uint64_t>(vector_x) << (64 - num_bits * 1);
+			vector_u64 |= static_cast<uint64_t>(vector_y) << (64 - num_bits * 2);
+			vector_u64 = byte_swap(vector_u64);
 
-		unaligned_write(vector_u64, out_vector_data);
+			unaligned_write(vector_u64, out_vector_data);
+
+			uint32_t vector_u32 = vector_z << (32 - num_bits);
+			vector_u32 = byte_swap(vector_u32);
+
+			memcpy_bits(out_vector_data, uint64_t(num_bits) * 2, &vector_u32, 0, num_bits);
+		}
+		else
+		{
+			// All 3 components fit in 64 bits
+			uint64_t vector_u64 = static_cast<uint64_t>(vector_x) << (64 - num_bits * 1);
+			vector_u64 |= static_cast<uint64_t>(vector_y) << (64 - num_bits * 2);
+			vector_u64 |= static_cast<uint64_t>(vector_z) << (64 - num_bits * 3);
+			vector_u64 = byte_swap(vector_u64);
+
+			unaligned_write(vector_u64, out_vector_data);
+		}
 	}
 
 	// Packs data in big-endian order and assumes the 'out_vector_data' is padded in order to write up to 16 bytes to it
@@ -822,12 +859,30 @@ namespace acl
 		uint32_t vector_y = pack_scalar_signed(rtm::vector_get_y(vector), num_bits);
 		uint32_t vector_z = pack_scalar_signed(rtm::vector_get_z(vector), num_bits);
 
-		uint64_t vector_u64 = static_cast<uint64_t>(vector_x) << (64 - num_bits * 1);
-		vector_u64 |= static_cast<uint64_t>(vector_y) << (64 - num_bits * 2);
-		vector_u64 |= static_cast<uint64_t>(vector_z) << (64 - num_bits * 3);
-		vector_u64 = byte_swap(vector_u64);
+		if (num_bits * 3 >= 64)
+		{
+			// All 3 components don't fit in 64 bits, write [xy] first, and partial [z] after
+			uint64_t vector_u64 = static_cast<uint64_t>(vector_x) << (64 - num_bits * 1);
+			vector_u64 |= static_cast<uint64_t>(vector_y) << (64 - num_bits * 2);
+			vector_u64 = byte_swap(vector_u64);
 
-		unaligned_write(vector_u64, out_vector_data);
+			unaligned_write(vector_u64, out_vector_data);
+
+			uint32_t vector_u32 = vector_z << (32 - num_bits);
+			vector_u32 = byte_swap(vector_u32);
+
+			memcpy_bits(out_vector_data, uint64_t(num_bits) * 2, &vector_u32, 0, num_bits);
+		}
+		else
+		{
+			// All 3 components fit in 64 bits
+			uint64_t vector_u64 = static_cast<uint64_t>(vector_x) << (64 - num_bits * 1);
+			vector_u64 |= static_cast<uint64_t>(vector_y) << (64 - num_bits * 2);
+			vector_u64 |= static_cast<uint64_t>(vector_z) << (64 - num_bits * 3);
+			vector_u64 = byte_swap(vector_u64);
+
+			unaligned_write(vector_u64, out_vector_data);
+		}
 	}
 
 	inline rtm::vector4f RTM_SIMD_CALL decay_vector3_uXX(rtm::vector4f_arg0 input, uint32_t num_bits)
@@ -860,7 +915,7 @@ namespace acl
 	// Assumes the 'vector_data' is in big-endian order and padded in order to load up to 16 bytes from it
 	inline rtm::vector4f RTM_SIMD_CALL unpack_vector3_uXX_unsafe(uint32_t num_bits, const uint8_t* vector_data, uint32_t bit_offset)
 	{
-		ACL_ASSERT(num_bits <= 19, "This function does not support reading more than 19 bits per component");
+		ACL_ASSERT(num_bits <= 23, "This function does not support reading more than 23 bits per component");
 
 		struct PackedTableEntry
 		{
@@ -873,14 +928,14 @@ namespace acl
 			uint32_t mask;
 		};
 
-		// TODO: We technically don't need the first 3 entries, which could save a few bytes
-		alignas(64) static constexpr PackedTableEntry k_packed_constants[20] =
+		alignas(64) static constexpr PackedTableEntry k_packed_constants[24] =
 		{
 			PackedTableEntry(0), PackedTableEntry(1), PackedTableEntry(2), PackedTableEntry(3),
 			PackedTableEntry(4), PackedTableEntry(5), PackedTableEntry(6), PackedTableEntry(7),
 			PackedTableEntry(8), PackedTableEntry(9), PackedTableEntry(10), PackedTableEntry(11),
 			PackedTableEntry(12), PackedTableEntry(13), PackedTableEntry(14), PackedTableEntry(15),
 			PackedTableEntry(16), PackedTableEntry(17), PackedTableEntry(18), PackedTableEntry(19),
+			PackedTableEntry(20), PackedTableEntry(21), PackedTableEntry(22), PackedTableEntry(23),
 		};
 
 #if defined(RTM_SSE2_INTRINSICS)
@@ -972,8 +1027,6 @@ namespace acl
 	// Assumes the 'vector_data' is in big-endian order and padded in order to load up to 16 bytes from it
 	inline rtm::vector4f RTM_SIMD_CALL unpack_vector3_sXX_unsafe(uint32_t num_bits, const uint8_t* vector_data, uint32_t bit_offset)
 	{
-		ACL_ASSERT(num_bits * 3 <= 64, "Attempting to read too many bits");
-
 		const rtm::vector4f unsigned_value = unpack_vector3_uXX_unsafe(num_bits, vector_data, bit_offset);
 		return rtm::vector_neg_mul_sub(unsigned_value, -2.0F, rtm::vector_set(-1.0F));
 	}
@@ -997,7 +1050,7 @@ namespace acl
 	// Assumes the 'vector_data' is in big-endian order and padded in order to load up to 16 bytes from it
 	inline rtm::vector4f RTM_SIMD_CALL unpack_vector2_uXX_unsafe(uint32_t num_bits, const uint8_t* vector_data, uint32_t bit_offset)
 	{
-		ACL_ASSERT(num_bits <= 19, "This function does not support reading more than 19 bits per component");
+		ACL_ASSERT(num_bits <= 23, "This function does not support reading more than 23 bits per component");
 
 		struct PackedTableEntry
 		{
@@ -1010,14 +1063,14 @@ namespace acl
 			uint32_t mask;
 		};
 
-		// TODO: We technically don't need the first 3 entries, which could save a few bytes
-		alignas(64) static constexpr PackedTableEntry k_packed_constants[20] =
+		alignas(64) static constexpr PackedTableEntry k_packed_constants[24] =
 		{
 			PackedTableEntry(0), PackedTableEntry(1), PackedTableEntry(2), PackedTableEntry(3),
 			PackedTableEntry(4), PackedTableEntry(5), PackedTableEntry(6), PackedTableEntry(7),
 			PackedTableEntry(8), PackedTableEntry(9), PackedTableEntry(10), PackedTableEntry(11),
 			PackedTableEntry(12), PackedTableEntry(13), PackedTableEntry(14), PackedTableEntry(15),
 			PackedTableEntry(16), PackedTableEntry(17), PackedTableEntry(18), PackedTableEntry(19),
+			PackedTableEntry(20), PackedTableEntry(21), PackedTableEntry(22), PackedTableEntry(23),
 		};
 
 #if defined(RTM_SSE2_INTRINSICS)
diff --git a/tools/acl_compressor/acl_compressor.py b/tools/acl_compressor/acl_compressor.py
--- a/tools/acl_compressor/acl_compressor.py
+++ b/tools/acl_compressor/acl_compressor.py
@@ -174,7 +174,7 @@ def create_csv(options):
 		csv_data['stats_bit_rate_csv_file'] = stats_bit_rate_csv_file
 
 		print('Generating CSV file {} ...'.format(stats_bit_rate_csv_filename))
-		print('Algorithm Name,0,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,32', file = stats_bit_rate_csv_file)
+		print('Algorithm Name,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,32', file = stats_bit_rate_csv_file)
 
 	if options['csv_animated_size']:
 		stats_animated_size_csv_filename = os.path.join(stat_dir, 'stats_animated_size.csv')
@@ -457,7 +457,7 @@ def aggregate_stats(agg_run_stats, run_stats):
 		agg_data['total_duration'] = 0.0
 		agg_data['max_error'] = 0
 		agg_data['num_runs'] = 0
-		agg_data['bit_rates'] = [0] * 19
+		agg_data['bit_rates'] = [0] * 25
 		agg_data['compressed_size'] = []
 
 		# Detailed stats
@@ -504,7 +504,7 @@ def aggregate_stats(agg_run_stats, run_stats):
 	if 'segments' in run_stats and len(run_stats['segments']) > 0:
 		for segment in run_stats['segments']:
 			if 'bit_rate_counts' in segment:
-				for i in range(19):
+				for i in range(25):
 					agg_data['bit_rates'][i] += segment['bit_rate_counts'][i]
 
 	# Detailed stats
@@ -659,6 +659,8 @@ def run_stat_parsing(options, stat_queue, result_queue):
 					result_queue.put(('progress', stat_filename))
 				except sjson.ParseException:
 					print('Failed to parse SJSON file: {}'.format(stat_filename.replace('\\\\?\\', '')))
+				except TypeError:
+					print('Failed to process SJSON file: {}'.format(stat_filename.replace('\\\\?\\', '')))
 
 		# Done
 		results = {}
@@ -712,7 +714,7 @@ def aggregate_job_stats(agg_job_results, job_results):
 				agg_job_results['agg_run_stats'][key]['max_error'] = max(agg_job_results['agg_run_stats'][key]['max_error'], job_results['agg_run_stats'][key]['max_error'])
 				agg_job_results['agg_run_stats'][key]['num_runs'] += job_results['agg_run_stats'][key]['num_runs']
 				agg_job_results['agg_run_stats'][key]['compressed_size'] += job_results['agg_run_stats'][key]['compressed_size']
-				for i in range(19):
+				for i in range(25):
 					agg_job_results['agg_run_stats'][key]['bit_rates'][i] += job_results['agg_run_stats'][key]['bit_rates'][i]
 
 				# Detailed stats
diff --git a/tools/acl_compressor/sources/acl_compressor.cpp b/tools/acl_compressor/sources/acl_compressor.cpp
--- a/tools/acl_compressor/sources/acl_compressor.cpp
+++ b/tools/acl_compressor/sources/acl_compressor.cpp
@@ -1003,13 +1003,23 @@ static int safe_main_impl(int argc, char* argv[])
 		if (!read_acl_sjson_file(allocator, options, sjson_type, sjson_clip, sjson_track_list))
 			return -1;
 
-		transform_tracks = std::move(sjson_clip.track_list);
-		base_clip = std::move(sjson_clip.additive_base_track_list);
-		additive_format = sjson_clip.additive_format;
-		bind_pose = std::move(sjson_clip.bind_pose);
-		use_external_config = sjson_clip.has_settings;
-		settings = sjson_clip.settings;
-		scalar_tracks = std::move(sjson_track_list.track_list);
+		use_external_config = sjson_track_list.has_settings;
+		settings = sjson_track_list.settings;
+
+		if (sjson_type == sjson_file_type::raw_track_list && sjson_track_list.track_list.get_track_type() == track_type8::qvvf)
+		{
+			// Re-interpret things as a raw clip
+			transform_tracks = std::move(track_array_cast<track_array_qvvf>(sjson_track_list.track_list));
+			sjson_type = sjson_file_type::raw_clip;
+		}
+		else
+		{
+			transform_tracks = std::move(sjson_clip.track_list);
+			base_clip = std::move(sjson_clip.additive_base_track_list);
+			additive_format = sjson_clip.additive_format;
+			bind_pose = std::move(sjson_clip.bind_pose);
+			scalar_tracks = std::move(sjson_track_list.track_list);
+		}
 	}
 
 #if DEBUG_MEGA_LARGE_CLIP
diff --git a/tools/acl_compressor/sources/validate_tracks.cpp b/tools/acl_compressor/sources/validate_tracks.cpp
--- a/tools/acl_compressor/sources/validate_tracks.cpp
+++ b/tools/acl_compressor/sources/validate_tracks.cpp
@@ -542,9 +542,6 @@ void validate_metadata(const track_array& raw_tracks, const compressed_tracks& t
 			ACL_ASSERT(parent_track_output_index == compressed_desc.parent_index, "Unexpected parent track index");
 			ACL_ASSERT(raw_desc.precision == compressed_desc.precision, "Unexpected precision");
 			ACL_ASSERT(raw_desc.shell_distance == compressed_desc.shell_distance, "Unexpected shell_distance");
-			ACL_ASSERT(raw_desc.constant_rotation_threshold_angle == compressed_desc.constant_rotation_threshold_angle, "Unexpected constant_rotation_threshold_angle");
-			ACL_ASSERT(raw_desc.constant_translation_threshold == compressed_desc.constant_translation_threshold, "Unexpected constant_translation_threshold");
-			ACL_ASSERT(raw_desc.constant_scale_threshold == compressed_desc.constant_scale_threshold, "Unexpected constant_scale_threshold");
 
 			ACL_ASSERT(rtm::quat_near_equal(raw_desc.default_value.rotation, compressed_desc.default_value.rotation, 0.0F), "Unexpected default_value.rotation");
 			ACL_ASSERT(rtm::vector_all_near_equal3(raw_desc.default_value.translation, compressed_desc.default_value.translation, 0.0F), "Unexpected default_value.translation");
@@ -621,9 +618,6 @@ static void compare_raw_with_compressed(iallocator& allocator, const track_array
 			ACL_ASSERT(raw_desc.parent_index == desc.parent_index, "Unexpected parent index");
 			ACL_ASSERT(raw_desc.precision == desc.precision, "Unexpected precision");
 			ACL_ASSERT(raw_desc.shell_distance == desc.shell_distance, "Unexpected shell_distance");
-			ACL_ASSERT(raw_desc.constant_rotation_threshold_angle == desc.constant_rotation_threshold_angle, "Unexpected constant_rotation_threshold_angle");
-			ACL_ASSERT(raw_desc.constant_translation_threshold == desc.constant_translation_threshold, "Unexpected constant_translation_threshold");
-			ACL_ASSERT(raw_desc.constant_scale_threshold == desc.constant_scale_threshold, "Unexpected constant_scale_threshold");
 			ACL_ASSERT(rtm::quat_near_equal(raw_desc.default_value.rotation, desc.default_value.rotation, 0.0F), "Unexpected default_value.rotation");
 			ACL_ASSERT(rtm::vector_all_near_equal3(raw_desc.default_value.translation, desc.default_value.translation, 0.0F), "Unexpected default_value.translation");
 			ACL_ASSERT(rtm::vector_all_near_equal3(raw_desc.default_value.scale, desc.default_value.scale, 0.0F), "Unexpected default_value.scale");
diff --git a/tools/calc_local_bit_rates.py b/tools/calc_local_bit_rates.py
--- a/tools/calc_local_bit_rates.py
+++ b/tools/calc_local_bit_rates.py
@@ -2,7 +2,8 @@
 
 import sys
 
-k_bit_rate_num_bits = [ 0, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 32 ]
+# ACL_BIT_RATE_EXPANSION: Added 1, 2, 20, 21, 22, and 23.
+k_bit_rate_num_bits = [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 32 ]
 
 k_highest_bit_rate = len(k_bit_rate_num_bits) - 1
 k_lowest_bit_rate = 1
diff --git a/tools/format_reference.acl.sjson b/tools/format_reference.acl.sjson
--- a/tools/format_reference.acl.sjson
+++ b/tools/format_reference.acl.sjson
@@ -9,8 +9,8 @@
 // The ACL file format version
 // version = 1		// Initial version
 // version = 2		// Introduced clip compression settings
-//version = 3		// Introduced additive clip related data
-//version = 4		// Introduced track list related data
+// version = 3		// Introduced additive clip related data
+// version = 4		// Introduced track list related data
 version = 5			// Renamed enums for 2.0 and other related changes
 
 // BEGIN CLIP RELATED DATA
@@ -83,18 +83,22 @@ settings =
 
 	// Threshold angle value to use when detecting if a rotation track is constant
 	// Defaults to '0.00284714461' radians
+	// DEPRECATED, NO LONGER USED OR NECESSARY
 	constant_rotation_threshold_angle = 0.00284714461
 
 	// Threshold value to use when detecting if a translation track is constant
 	// Defaults to '0.001' centimeters
+	// DEPRECATED, NO LONGER USED OR NECESSARY
 	constant_translation_threshold = 0.001
 
 	// Threshold value to use when detecting if a scale track is constant
 	// Defaults to '0.00001'
+	// DEPRECATED, NO LONGER USED OR NECESSARY
 	constant_scale_threshold = 0.00001
 
 	// The error threshold used when optimizing the bit rate
 	// Defaults to '0.01' centimeters
+	// DEPRECATED, NO LONGER USED OR NECESSARY
 	error_threshold = 0.01
 }
 
@@ -237,14 +241,17 @@ tracks =
 
 		// The constant rotation detection threshold
 		// Transforms only
+		// DEPRECATED, NO LONGER USED OR NECESSARY
 		constant_rotation_threshold_angle = 0.1
 
 		// The constant translation detection threshold
 		// Transforms only
+		// DEPRECATED, NO LONGER USED OR NECESSARY
 		constant_translation_threshold = 0.1
 
 		// The constant scale detection threshold
 		// Transforms only
+		// DEPRECATED, NO LONGER USED OR NECESSARY
 		constant_scale_threshold = 0.1
 
 		// Bind pose transform information. All three are optional
diff --git a/tools/vs_visualizers/acl.natvis b/tools/vs_visualizers/acl.natvis
--- a/tools/vs_visualizers/acl.natvis
+++ b/tools/vs_visualizers/acl.natvis
@@ -27,9 +27,6 @@
       <Item Name="precision" Condition="m_category == acl::track_category8::scalarf">m_desc.scalar.precision</Item>
       <Item Name="precision" Condition="m_category == acl::track_category8::transformf">m_desc.transform.precision</Item>
       <Item Name="shell_distance" Condition="m_category == acl::track_category8::transformf">m_desc.transform.shell_distance</Item>
-      <Item Name="constant_rotation_threshold_angle" Condition="m_category == acl::track_category8::transformf">m_desc.transform.constant_rotation_threshold_angle</Item>
-      <Item Name="constant_translation_threshold" Condition="m_category == acl::track_category8::transformf">m_desc.transform.constant_translation_threshold</Item>
-      <Item Name="constant_scale_threshold" Condition="m_category == acl::track_category8::transformf">m_desc.transform.constant_scale_threshold</Item>
       <Item Name="output_index" Condition="m_category == acl::track_category8::scalarf">m_desc.scalar.output_index</Item>
       <Item Name="output_index" Condition="m_category == acl::track_category8::transformf">m_desc.transform.output_index</Item>
       <Item Name="parent_index" Condition="m_category == acl::track_category8::transformf">m_desc.transform.parent_index</Item>
@@ -175,8 +172,8 @@
         <Size>m_num_samples</Size>
         <!-- TODO: Support stride -->
         <ValuePointer Condition="m_type == acl::animation_track_type8::rotation">(rtm::float4f*)m_samples</ValuePointer>
-        <ValuePointer Condition="m_type == acl::animation_track_type8::translation">(rtm::float3f*)m_samples</ValuePointer>
-        <ValuePointer Condition="m_type == acl::animation_track_type8::scale">(rtm::float3f*)m_samples</ValuePointer>
+        <ValuePointer Condition="m_type == acl::animation_track_type8::translation">(rtm::float4f*)m_samples</ValuePointer>
+        <ValuePointer Condition="m_type == acl::animation_track_type8::scale">(rtm::float4f*)m_samples</ValuePointer>
       </ArrayItems>
     </Expand>
 


Test patch:
diff --git a/tests/sources/core/test_iterator.cpp b/tests/sources/core/test_iterator.cpp
--- a/tests/sources/core/test_iterator.cpp
+++ b/tests/sources/core/test_iterator.cpp
@@ -31,22 +31,25 @@
 
 using namespace acl;
 
-TEST_CASE("iterator", "[core][iterator]")
+TEST_CASE("array_iterator", "[core][iterator]")
 {
-	constexpr uint32_t num_items = 3;
-	uint32_t items[num_items];
-
-	auto i = iterator<uint32_t>(items, num_items);
-
 	SECTION("mutable returns correct type")
 	{
+		constexpr size_t num_items = 3;
+		uint32_t items[num_items] = { 0, 1, 2 };
+
+		auto i = array_iterator<uint32_t>(items, num_items);
+
 		CHECK(std::is_same<uint32_t*, decltype(i.begin())>::value);
 		CHECK(std::is_same<uint32_t*, decltype(i.end())>::value);
 	}
 
 	SECTION("const returns correct type")
 	{
-		auto ci = const_iterator<uint32_t>(items, num_items);
+		constexpr size_t num_items = 3;
+		const uint32_t items[num_items] = { 0, 1, 2 };
+
+		auto ci = const_array_iterator<uint32_t>(items, num_items);
 
 		CHECK(std::is_same<const uint32_t*, decltype(ci.begin())>::value);
 		CHECK(std::is_same<const uint32_t*, decltype(ci.end())>::value);
@@ -54,14 +57,128 @@ TEST_CASE("iterator", "[core][iterator]")
 
 	SECTION("bounds are correct")
 	{
+		constexpr size_t num_items = 3;
+		uint32_t items[num_items] = { 0, 1, 2 };
+
+		auto i = array_iterator<uint32_t>(items, num_items);
+
 		CHECK(i.begin() == items + 0);
 		CHECK(i.end() == items + num_items);
 	}
 
+	SECTION("const bounds are correct")
+	{
+		constexpr size_t num_items = 3;
+		const uint32_t items[num_items] = { 0, 1, 2 };
+
+		auto ci = const_array_iterator<uint32_t>(items, num_items);
+
+		CHECK(ci.begin() == items + 0);
+		CHECK(ci.end() == items + num_items);
+	}
+
 	SECTION("make_iterator matches")
 	{
+		constexpr size_t num_items = 3;
+		uint32_t items[num_items] = { 0, 1, 2 };
+
+		auto i = array_iterator<uint32_t>(items, num_items);
 		auto j = make_iterator(items);
+
+		CHECK(i.begin() == j.begin());
+		CHECK(i.end() == j.end());
+	}
+
+	SECTION("make_iterator const matches")
+	{
+		constexpr size_t num_items = 3;
+		const uint32_t items[num_items] = { 0, 1, 2 };
+
+		auto ci = const_array_iterator<uint32_t>(items, num_items);
+		auto cj = make_iterator(items);
+
+		CHECK(ci.begin() == cj.begin());
+		CHECK(ci.end() == cj.end());
+	}
+}
+
+TEST_CASE("array_reverse_iterator", "[core][iterator]")
+{
+	SECTION("mutable returns correct type")
+	{
+		constexpr size_t num_items = 3;
+		uint32_t items[num_items] = { 0, 1, 2 };
+
+		auto i = array_reverse_iterator<uint32_t>(items, num_items);
+
+		CHECK(std::is_same<uint32_t*, decltype(&*i.begin())>::value);
+		CHECK(std::is_same<uint32_t*, decltype(&*i.end())>::value);
+	}
+
+	SECTION("const returns correct type")
+	{
+		constexpr size_t num_items = 3;
+		const uint32_t items[num_items] = { 0, 1, 2 };
+
+		auto ci = const_array_reverse_iterator<uint32_t>(items, num_items);
+
+		CHECK(std::is_same<const uint32_t*, decltype(&*ci.begin())>::value);
+		CHECK(std::is_same<const uint32_t*, decltype(&*ci.end())>::value);
+	}
+
+	// Suppress warning about array bounds check around 'items - 1' since we don't read from that value, it is a false positive
+#if defined(RTM_COMPILER_GCC)
+	#pragma GCC diagnostic push
+	#pragma GCC diagnostic ignored "-Warray-bounds"
+#endif
+
+	SECTION("bounds are correct")
+	{
+		constexpr size_t num_items = 3;
+		uint32_t items[num_items] = { 0, 1, 2 };
+
+		auto i = array_reverse_iterator<uint32_t>(items, num_items);
+
+		CHECK(&*i.begin() == items + num_items - 1);
+		CHECK(&*i.end() == items - 1);
+	}
+
+	SECTION("const bounds are correct")
+	{
+		constexpr size_t num_items = 3;
+		const uint32_t items[num_items] = { 0, 1, 2 };
+
+		auto ci = const_array_reverse_iterator<uint32_t>(items, num_items);
+
+		CHECK(&*ci.begin() == items + num_items - 1);
+		CHECK(&*ci.end() == items - 1);
+	}
+
+#if defined(RTM_COMPILER_GCC)
+	#pragma GCC diagnostic pop
+#endif
+
+	SECTION("make_reverse_iterator matches")
+	{
+		constexpr size_t num_items = 3;
+		uint32_t items[num_items] = { 0, 1, 2 };
+
+		auto i = array_reverse_iterator<uint32_t>(items, num_items);
+		auto j = make_reverse_iterator(items);
+
 		CHECK(i.begin() == j.begin());
 		CHECK(i.end() == j.end());
 	}
+
+	SECTION("make_reverse_iterator const matches")
+	{
+		constexpr size_t num_items = 3;
+		const uint32_t items[num_items] = { 0, 1, 2 };
+
+		auto ci = const_array_reverse_iterator<uint32_t>(items, num_items);
+		auto cj = make_reverse_iterator(items);
+
+		CHECK(ci.begin() == cj.begin());
+		CHECK(ci.end() == cj.end());
+	}
 }
diff --git a/tests/sources/io/test_reader_writer.cpp b/tests/sources/io/test_reader_writer.cpp
--- a/tests/sources/io/test_reader_writer.cpp
+++ b/tests/sources/io/test_reader_writer.cpp
@@ -158,9 +158,6 @@ TEST_CASE("sjson_clip_reader_writer", "[io]")
 	desc1.precision = 0.001F;
 	desc1.parent_index = 0;
 	desc1.shell_distance = 0.1241F;
-	desc1.constant_rotation_threshold_angle = 21.0F;
-	desc1.constant_translation_threshold = 0.11F;
-	desc1.constant_scale_threshold = 12.0F;
 	track_qvvf track1 = track_qvvf::make_reserve(desc1, allocator, num_samples, 32.0F);
 	track1[0].rotation = rtm::quat_from_euler(1.1F, 1.5F, 1.7F);
 	track1[0].translation = rtm::vector_set(0.0221F, 10.6F, 22.3F);
@@ -263,9 +260,6 @@ TEST_CASE("sjson_clip_reader_writer", "[io]")
 		CHECK(file_track.get_description().parent_index == ref_track.get_description().parent_index);
 		CHECK(rtm::scalar_near_equal(file_track.get_description().precision, ref_track.get_description().precision, 0.0F));
 		CHECK(rtm::scalar_near_equal(file_track.get_description().shell_distance, ref_track.get_description().shell_distance, 0.0F));
-		CHECK(rtm::scalar_near_equal(file_track.get_description().constant_rotation_threshold_angle, ref_track.get_description().constant_rotation_threshold_angle, 0.0F));
-		CHECK(rtm::scalar_near_equal(file_track.get_description().constant_translation_threshold, ref_track.get_description().constant_translation_threshold, 0.0F));
-		CHECK(rtm::scalar_near_equal(file_track.get_description().constant_scale_threshold, ref_track.get_description().constant_scale_threshold, 0.0F));
 		CHECK(file_track.get_num_samples() == ref_track.get_num_samples());
 		CHECK(file_track.get_output_index() == ref_track.get_output_index());
 		CHECK(file_track.get_sample_rate() == ref_track.get_sample_rate());
diff --git a/tests/sources/math/test_scalar_packing.cpp b/tests/sources/math/test_scalar_packing.cpp
--- a/tests/sources/math/test_scalar_packing.cpp
+++ b/tests/sources/math/test_scalar_packing.cpp
@@ -31,13 +31,16 @@
 using namespace acl;
 using namespace rtm;
 
-struct UnalignedBuffer
+namespace
 {
-	uint32_t padding0;
-	uint16_t padding1;
-	uint8_t buffer[250];
-};
-static_assert((offsetof(UnalignedBuffer, buffer) % 2) == 0, "Minimum packing alignment is 2");
+	struct UnalignedBuffer
+	{
+		uint32_t padding0;
+		uint16_t padding1;
+		uint8_t buffer[250];
+	};
+	static_assert((offsetof(UnalignedBuffer, buffer) % 2) == 0, "Minimum packing alignment is 2");
+}
 
 TEST_CASE("scalar packing math", "[math][scalar][packing]")
 {
@@ -111,47 +114,52 @@ TEST_CASE("unpack_scalarf_96_unsafe", "[math][scalar][packing]")
 	}
 }
 
-TEST_CASE("unpack_scalarf_uXX_unsafe", "[math][scalar][packing]")
+static uint32_t test_unpack_scalarf_uXX_unsafe(uint32_t start_bit_rate, uint32_t end_bit_rate)
 {
-	{
-		UnalignedBuffer tmp0;
-		alignas(16) uint8_t buffer[64];
+	const uint32_t offsets[] = { 0, 1, 5, 31, 32, 33, 63, 64, 65, 93 };
 
-		uint32_t num_errors = 0;
-		vector4f vec0 = vector_set(unpack_scalar_unsigned(0, 16), unpack_scalar_unsigned(12355, 16), unpack_scalar_unsigned(43222, 16), unpack_scalar_unsigned(54432, 16));
-		pack_vector2_uXX_unsafe(vec0, 16, &buffer[0]);
-		scalarf scalar1 = unpack_scalarf_uXX_unsafe(16, &buffer[0], 0);
-		if (!scalar_near_equal(vector_get_x(vec0), scalar_cast(scalar1), 1.0E-6F))
-			num_errors++;
+	UnalignedBuffer tmp0;
+	alignas(16) uint8_t buffer[64];
 
-		for (uint8_t bit_rate = 1; bit_rate < acl_impl::k_highest_bit_rate; ++bit_rate)
+	uint32_t num_errors = 0;
+
+	for (uint32_t bit_rate = start_bit_rate; bit_rate < end_bit_rate; ++bit_rate)
+	{
+		uint32_t num_bits = acl_impl::get_num_bits_at_bit_rate(bit_rate);
+		uint32_t max_value = (1 << num_bits) - 1;
+		for (uint32_t value = 0; value <= max_value; ++value)
 		{
-			uint32_t num_bits = acl_impl::get_num_bits_at_bit_rate(bit_rate);
-			uint32_t max_value = (1 << num_bits) - 1;
-			for (uint32_t value = 0; value <= max_value; ++value)
+			const float value_unsigned = scalar_clamp(unpack_scalar_unsigned(value, num_bits), 0.0F, 1.0F);
+
+			vector4f vec0 = vector_set(value_unsigned, value_unsigned, value_unsigned);
+			pack_vector2_uXX_unsafe(vec0, num_bits, &buffer[0]);
+			scalarf scalar1 = unpack_scalarf_uXX_unsafe(num_bits, &buffer[0], 0);
+			if (!scalar_near_equal(vector_get_x(vec0), scalar_cast(scalar1), 1.0E-6F))
+				num_errors++;
+
+			for (size_t offset_idx = 0; offset_idx < get_array_size(offsets); ++offset_idx)
 			{
-				const float value_unsigned = scalar_clamp(unpack_scalar_unsigned(value, num_bits), 0.0F, 1.0F);
+				const uint32_t offset = offsets[offset_idx];
 
-				vec0 = vector_set(value_unsigned, value_unsigned, value_unsigned);
-				pack_vector2_uXX_unsafe(vec0, num_bits, &buffer[0]);
-				scalar1 = unpack_scalarf_uXX_unsafe(num_bits, &buffer[0], 0);
+				memcpy_bits(&tmp0.buffer[0], offset, &buffer[0], 0, size_t(num_bits) * 4);
+				scalar1 = unpack_scalarf_uXX_unsafe(num_bits, &tmp0.buffer[0], offset);
 				if (!scalar_near_equal(vector_get_x(vec0), scalar_cast(scalar1), 1.0E-6F))
 					num_errors++;
-
-				{
-					const uint8_t offsets[] = { 0, 1, 5, 31, 32, 33, 63, 64, 65, 93 };
-					for (uint8_t offset_idx = 0; offset_idx < get_array_size(offsets); ++offset_idx)
-					{
-						const uint8_t offset = offsets[offset_idx];
-
-						memcpy_bits(&tmp0.buffer[0], offset, &buffer[0], 0, size_t(num_bits) * 4);
-						scalar1 = unpack_scalarf_uXX_unsafe(num_bits, &tmp0.buffer[0], offset);
-						if (!scalar_near_equal(vector_get_x(vec0), scalar_cast(scalar1), 1.0E-6F))
-							num_errors++;
-					}
-				}
 			}
 		}
-		CHECK(num_errors == 0);
 	}
+
+	return num_errors;
+}
+
+TEST_CASE("unpack_scalarf_uXX_unsafe part0", "[math][scalar][packing]")
+{
+	uint32_t num_errors = test_unpack_scalarf_uXX_unsafe(1, acl_impl::k_highest_bit_rate - 1);
+	CHECK(num_errors == 0);
+}
+
+TEST_CASE("unpack_scalarf_uXX_unsafe part1", "[math][scalar][packing]")
+{
+	uint32_t num_errors = test_unpack_scalarf_uXX_unsafe(acl_impl::k_highest_bit_rate - 1, acl_impl::k_highest_bit_rate);
+	CHECK(num_errors == 0);
 }
diff --git a/tests/sources/math/test_vector4_packing.cpp b/tests/sources/math/test_vector4_packing.cpp
--- a/tests/sources/math/test_vector4_packing.cpp
+++ b/tests/sources/math/test_vector4_packing.cpp
@@ -34,13 +34,16 @@
 using namespace acl;
 using namespace rtm;
 
-struct UnalignedBuffer
+namespace
 {
-	uint32_t padding0;
-	uint16_t padding1;
-	uint8_t buffer[250];
-};
-static_assert((offsetof(UnalignedBuffer, buffer) % 2) == 0, "Minimum packing alignment is 2");
+	struct UnalignedBuffer
+	{
+		uint32_t padding0;
+		uint16_t padding1;
+		uint8_t buffer[250];
+	};
+	static_assert((offsetof(UnalignedBuffer, buffer) % 2) == 0, "Minimum packing alignment is 2");
+}
 
 TEST_CASE("pack_vector4_128", "[math][vector4][packing]")
 {
@@ -141,49 +144,65 @@ TEST_CASE("pack_vector4_32", "[math][vector4][packing]")
 	}
 }
 
-TEST_CASE("pack_vector4_XX", "[math][vector4][packing]")
+static uint32_t test_pack_vector4_XX(uint32_t start_bit_rate, uint32_t end_bit_rate)
 {
-	{
-		UnalignedBuffer tmp0;
-		alignas(16) uint8_t buffer[64];
+	const uint32_t offsets[] = { 0, 1, 5, 31, 32, 33, 63, 64, 65, 93 };
 
-		uint32_t num_errors = 0;
-		vector4f vec0 = vector_set(unpack_scalar_unsigned(0, 16), unpack_scalar_unsigned(12355, 16), unpack_scalar_unsigned(43222, 16), unpack_scalar_unsigned(54432, 16));
-		pack_vector4_uXX_unsafe(vec0, 16, &buffer[0]);
-		vector4f vec1 = unpack_vector4_uXX_unsafe(16, &buffer[0], 0);
-		if (!vector_all_near_equal(vec0, vec1, 1.0E-6F))
-			num_errors++;
+	const vector4f vzero = vector_set(0.0F);
+	const vector4f vone = vector_set(1.0F);
+
+	UnalignedBuffer tmp0;
+	alignas(16) uint8_t buffer[64];
+	uint32_t num_errors = 0;
 
-		for (uint8_t bit_rate = 1; bit_rate < acl_impl::k_highest_bit_rate; ++bit_rate)
+	for (uint32_t bit_rate = start_bit_rate; bit_rate < end_bit_rate; ++bit_rate)
+	{
+		uint32_t num_bits = acl_impl::get_num_bits_at_bit_rate(bit_rate);
+		uint32_t max_value = (1 << num_bits) - 1;
+
+		// 4 values at a time to speed things up
+		for (uint32_t value = 0; value <= max_value; value += 4)
 		{
-			uint32_t num_bits = acl_impl::get_num_bits_at_bit_rate(bit_rate);
-			uint32_t max_value = (1 << num_bits) - 1;
-			for (uint32_t value = 0; value <= max_value; ++value)
+			vector4f vec0 = vector_clamp(vector_set(
+				unpack_scalar_unsigned(value, num_bits),
+				unpack_scalar_unsigned(std::min(value + 1, max_value), num_bits),
+				unpack_scalar_unsigned(std::min(value + 2, max_value), num_bits),
+				unpack_scalar_unsigned(std::min(value + 3, max_value), num_bits)), vzero, vone);
+
+			pack_vector4_uXX_unsafe(vec0, num_bits, &buffer[0]);
+			vector4f vec1 = unpack_vector4_uXX_unsafe(num_bits, &buffer[0], 0);
+			if (!vector_all_near_equal(vec0, vec1, 1.0E-6F))
+				num_errors++;
+
+			for (size_t offset_idx = 0; offset_idx < get_array_size(offsets); ++offset_idx)
 			{
-				const float value_unsigned = scalar_clamp(unpack_scalar_unsigned(value, num_bits), 0.0F, 1.0F);
+				const uint32_t offset = offsets[offset_idx];
 
-				vec0 = vector_set(value_unsigned, value_unsigned, value_unsigned);
-				pack_vector4_uXX_unsafe(vec0, num_bits, &buffer[0]);
-				vec1 = unpack_vector4_uXX_unsafe(num_bits, &buffer[0], 0);
+				memcpy_bits(&tmp0.buffer[0], offset, &buffer[0], 0, size_t(num_bits) * 4);
+				vec1 = unpack_vector4_uXX_unsafe(num_bits, &tmp0.buffer[0], offset);
 				if (!vector_all_near_equal(vec0, vec1, 1.0E-6F))
 					num_errors++;
-
-				{
-					const uint8_t offsets[] = { 0, 1, 5, 31, 32, 33, 63, 64, 65, 93 };
-					for (uint8_t offset_idx = 0; offset_idx < get_array_size(offsets); ++offset_idx)
-					{
-						const uint8_t offset = offsets[offset_idx];
-
-						memcpy_bits(&tmp0.buffer[0], offset, &buffer[0], 0, size_t(num_bits) * 4);
-						vec1 = unpack_vector4_uXX_unsafe(num_bits, &tmp0.buffer[0], offset);
-						if (!vector_all_near_equal(vec0, vec1, 1.0E-6F))
-							num_errors++;
-					}
-				}
 			}
 		}
-		CHECK(num_errors == 0);
 	}
+
+	return num_errors;
+}
+
+// Test is slow, split it into two parts, second highest bit rate on its own
+// Highest bit rate is full precision float32, it uses a different function
+TEST_CASE("pack_vector4_XX part0", "[math][vector4][packing]")
+{
+	// Test every possible input up to second highest bit rate
+	uint32_t num_errors = test_pack_vector4_XX(1, acl_impl::k_highest_bit_rate - 1);
+	CHECK(num_errors == 0);
+}
+
+TEST_CASE("pack_vector4_XX part1", "[math][vector4][packing]")
+{
+	// Test every possible input for second highest bit rate
+	uint32_t num_errors = test_pack_vector4_XX(acl_impl::k_highest_bit_rate - 1, acl_impl::k_highest_bit_rate);
+	CHECK(num_errors == 0);
 }
 
 TEST_CASE("pack_vector3_96", "[math][vector4][packing]")
@@ -363,115 +382,125 @@ TEST_CASE("pack_vector3_24", "[math][vector4][packing]")
 	}
 }
 
-TEST_CASE("pack_vector3_XX", "[math][vector4][packing]")
+static uint32_t test_pack_vector3_XX(uint32_t start_bit_rate, uint32_t end_bit_rate)
 {
+	const uint32_t offsets[] = { 0, 1, 5, 31, 32, 33, 63, 64, 65, 93 };
+
+	const vector4f vzero = vector_set(0.0F);
+	const vector4f vone = vector_set(1.0F);
+	const vector4f vneg_one = vector_set(-1.0F);
+
+	UnalignedBuffer tmp0;
+	alignas(16) uint8_t buffer[64];
+
+	uint32_t num_errors = 0;
+
+	for (uint32_t bit_rate = start_bit_rate; bit_rate < end_bit_rate; ++bit_rate)
 	{
-		UnalignedBuffer tmp0;
-		alignas(16) uint8_t buffer[64];
+		uint32_t num_bits = acl_impl::get_num_bits_at_bit_rate(bit_rate);
+		uint32_t max_value = (1 << num_bits) - 1;
 
-		uint32_t num_errors = 0;
-		vector4f vec0 = vector_set(unpack_scalar_signed(0, 16), unpack_scalar_signed(12355, 16), unpack_scalar_signed(43222, 16));
-		pack_vector3_sXX_unsafe(vec0, 16, &buffer[0]);
-		vector4f vec1 = unpack_vector3_sXX_unsafe(16, &buffer[0], 0);
-		if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
-			num_errors++;
-
-		vec0 = vector_set(unpack_scalar_unsigned(0, 16), unpack_scalar_unsigned(12355, 16), unpack_scalar_unsigned(43222, 16));
-		pack_vector3_uXX_unsafe(vec0, 16, &buffer[0]);
-		vec1 = unpack_vector3_uXX_unsafe(16, &buffer[0], 0);
-		if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
-			num_errors++;
-
-		for (uint8_t bit_rate = 1; bit_rate < acl_impl::k_highest_bit_rate; ++bit_rate)
+		// 3 values at a time to speed things up
+		for (uint32_t value = 0; value <= max_value; value += 3)
 		{
-			uint32_t num_bits = acl_impl::get_num_bits_at_bit_rate(bit_rate);
-			uint32_t max_value = (1 << num_bits) - 1;
-			for (uint32_t value = 0; value <= max_value; ++value)
+			vector4f vec0 = vector_clamp(vector_set(
+				unpack_scalar_unsigned(value, num_bits),
+				unpack_scalar_unsigned(std::min(value + 1, max_value), num_bits),
+				unpack_scalar_unsigned(std::min(value + 2, max_value), num_bits)), vzero, vone);
+
+			pack_vector3_uXX_unsafe(vec0, num_bits, &buffer[0]);
+			vector4f vec1 = unpack_vector3_uXX_unsafe(num_bits, &buffer[0], 0);
+			if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
+				num_errors++;
+
+			for (size_t offset_idx = 0; offset_idx < get_array_size(offsets); ++offset_idx)
 			{
-				const float value_signed = scalar_clamp(unpack_scalar_signed(value, num_bits), -1.0F, 1.0F);
-				const float value_unsigned = scalar_clamp(unpack_scalar_unsigned(value, num_bits), 0.0F, 1.0F);
+				const uint32_t offset = offsets[offset_idx];
 
-				vec0 = vector_set(value_unsigned, value_unsigned, value_unsigned);
-				pack_vector3_uXX_unsafe(vec0, num_bits, &buffer[0]);
-				vec1 = unpack_vector3_uXX_unsafe(num_bits, &buffer[0], 0);
+				memcpy_bits(&tmp0.buffer[0], offset, &buffer[0], 0, size_t(num_bits) * 3);
+				vec1 = unpack_vector3_uXX_unsafe(num_bits, &tmp0.buffer[0], offset);
 				if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
 					num_errors++;
+			}
+
+			vec0 = vector_clamp(vector_set(
+				unpack_scalar_signed(value, num_bits),
+				unpack_scalar_signed(std::min(value + 1, max_value), num_bits),
+				unpack_scalar_signed(std::min(value + 2, max_value), num_bits)), vneg_one, vone);
 
-				{
-					const uint8_t offsets[] = { 0, 1, 5, 31, 32, 33, 63, 64, 65, 93 };
-					for (uint8_t offset_idx = 0; offset_idx < get_array_size(offsets); ++offset_idx)
-					{
-						const uint8_t offset = offsets[offset_idx];
-
-						memcpy_bits(&tmp0.buffer[0], offset, &buffer[0], 0, size_t(num_bits) * 3);
-						vec1 = unpack_vector3_uXX_unsafe(num_bits, &tmp0.buffer[0], offset);
-						if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
-							num_errors++;
-					}
-				}
-
-				vec0 = vector_set(value_signed, value_signed, value_signed);
-				pack_vector3_sXX_unsafe(vec0, num_bits, &buffer[0]);
-				vec1 = unpack_vector3_sXX_unsafe(num_bits, &buffer[0], 0);
+			pack_vector3_sXX_unsafe(vec0, num_bits, &buffer[0]);
+			vec1 = unpack_vector3_sXX_unsafe(num_bits, &buffer[0], 0);
+			if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
+				num_errors++;
+
+			for (size_t offset_idx = 0; offset_idx < get_array_size(offsets); ++offset_idx)
+			{
+				const uint32_t offset = offsets[offset_idx];
+
+				memcpy_bits(&tmp0.buffer[0], offset, &buffer[0], 0, size_t(num_bits) * 3);
+				vec1 = unpack_vector3_sXX_unsafe(num_bits, &tmp0.buffer[0], offset);
 				if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
 					num_errors++;
-
-				{
-					const uint8_t offsets[] = { 0, 1, 5, 31, 32, 33, 63, 64, 65, 93 };
-					for (uint8_t offset_idx = 0; offset_idx < get_array_size(offsets); ++offset_idx)
-					{
-						const uint8_t offset = offsets[offset_idx];
-
-						memcpy_bits(&tmp0.buffer[0], offset, &buffer[0], 0, size_t(num_bits) * 3);
-						vec1 = unpack_vector3_sXX_unsafe(num_bits, &tmp0.buffer[0], offset);
-						if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
-							num_errors++;
-					}
-				}
 			}
 		}
-		CHECK(num_errors == 0);
 	}
+
+	return num_errors;
+}
+
+// Test is slow, split it into two parts, second highest bit rate on its own
+// Highest bit rate is full precision float32, it uses a different function
+TEST_CASE("pack_vector3_XX part0", "[math][vector4][packing]")
+{
+	// Test every possible input up to second highest bit rate
+	uint32_t num_errors = test_pack_vector3_XX(1, acl_impl::k_highest_bit_rate - 1);
+	CHECK(num_errors == 0);
+}
+
+TEST_CASE("pack_vector3_XX part1", "[math][vector4][packing]")
+{
+	// Test every possible input for second highest bit rate
+	uint32_t num_errors = test_pack_vector3_XX(acl_impl::k_highest_bit_rate - 1, acl_impl::k_highest_bit_rate);
+	CHECK(num_errors == 0);
 }
 
 TEST_CASE("decay_vector3_XX", "[math][vector4][decay]")
 {
-	{
-		uint32_t num_errors = 0;
+	const vector4f vzero = vector_set(0.0F);
+	const vector4f vone = vector_set(1.0F);
+	const vector4f vneg_one = vector_set(-1.0F);
 
-		vector4f vec0 = vector_set(unpack_scalar_signed(0, 16), unpack_scalar_signed(12355, 16), unpack_scalar_signed(43222, 16));
-		vector4f vec1 = decay_vector3_sXX(vec0, 16);
-		if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
-			num_errors++;
+	uint32_t num_errors = 0;
 
-		vec0 = vector_set(unpack_scalar_unsigned(0, 16), unpack_scalar_unsigned(12355, 16), unpack_scalar_unsigned(43222, 16));
-		vec1 = decay_vector3_uXX(vec0, 16);
-		if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
-			num_errors++;
+	for (uint8_t bit_rate = 1; bit_rate < acl_impl::k_highest_bit_rate; ++bit_rate)
+	{
+		uint32_t num_bits = acl_impl::get_num_bits_at_bit_rate(bit_rate);
+		uint32_t max_value = (1 << num_bits) - 1;
 
-		for (uint8_t bit_rate = 1; bit_rate < acl_impl::k_highest_bit_rate; ++bit_rate)
+		// 3 values at a time to speed things up
+		for (uint32_t value = 0; value <= max_value; value += 3)
 		{
-			uint32_t num_bits = acl_impl::get_num_bits_at_bit_rate(bit_rate);
-			uint32_t max_value = (1 << num_bits) - 1;
-			for (uint32_t value = 0; value <= max_value; ++value)
-			{
-				const float value_signed = scalar_clamp(unpack_scalar_signed(value, num_bits), -1.0F, 1.0F);
-				const float value_unsigned = scalar_clamp(unpack_scalar_unsigned(value, num_bits), 0.0F, 1.0F);
+			vector4f vec0 = vector_clamp(vector_set(
+				unpack_scalar_signed(value, num_bits),
+				unpack_scalar_signed(std::min(value + 1, max_value), num_bits),
+				unpack_scalar_signed(std::min(value + 2, max_value), num_bits)), vneg_one, vone);
 
-				vec0 = vector_set(value_signed, value_signed, value_signed);
-				vec1 = decay_vector3_sXX(vec0, num_bits);
-				if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
-					num_errors++;
+			vector4f vec1 = decay_vector3_sXX(vec0, num_bits);
+			if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
+				num_errors++;
 
-				vec0 = vector_set(value_unsigned, value_unsigned, value_unsigned);
-				vec1 = decay_vector3_uXX(vec0, num_bits);
-				if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
-					num_errors++;
-			}
-		}
+			vec0 = vector_clamp(vector_set(
+				unpack_scalar_unsigned(value, num_bits),
+				unpack_scalar_unsigned(std::min(value + 1, max_value), num_bits),
+				unpack_scalar_unsigned(std::min(value + 2, max_value), num_bits)), vzero, vone);
 
-		CHECK(num_errors == 0);
+			vec1 = decay_vector3_uXX(vec0, num_bits);
+			if (!vector_all_near_equal3(vec0, vec1, 1.0E-6F))
+				num_errors++;
+		}
 	}
+
+	CHECK(num_errors == 0);
 }
 
 TEST_CASE("pack_vector2_64", "[math][vector4][packing]")
@@ -505,49 +534,65 @@ TEST_CASE("pack_vector2_64", "[math][vector4][packing]")
 	}
 }
 
-TEST_CASE("pack_vector2_XX", "[math][vector4][packing]")
+static uint32_t test_pack_vector2_XX(uint32_t start_bit_rate, uint32_t end_bit_rate)
 {
-	{
-		UnalignedBuffer tmp0;
-		alignas(16) uint8_t buffer[64];
+	const uint32_t offsets[] = { 0, 1, 5, 31, 32, 33, 63, 64, 65, 93 };
 
-		uint32_t num_errors = 0;
-		vector4f vec0 = vector_set(unpack_scalar_unsigned(0, 16), unpack_scalar_unsigned(12355, 16), unpack_scalar_unsigned(43222, 16), unpack_scalar_unsigned(54432, 16));
-		pack_vector2_uXX_unsafe(vec0, 16, &buffer[0]);
-		vector4f vec1 = unpack_vector2_uXX_unsafe(16, &buffer[0], 0);
-		if (!vector_all_near_equal2(vec0, vec1, 1.0E-6F))
-			num_errors++;
+	const vector4f vzero = vector_set(0.0F);
+	const vector4f vone = vector_set(1.0F);
+
+	UnalignedBuffer tmp0;
+	alignas(16) uint8_t buffer[64];
+
+	uint32_t num_errors = 0;
 
-		for (uint8_t bit_rate = 1; bit_rate < acl_impl::k_highest_bit_rate; ++bit_rate)
+	for (uint32_t bit_rate = start_bit_rate; bit_rate < end_bit_rate; ++bit_rate)
+	{
+		uint32_t num_bits = acl_impl::get_num_bits_at_bit_rate(bit_rate);
+		uint32_t max_value = (1 << num_bits) - 1;
+
+		// 2 values at a time to speed things up
+		for (uint32_t value = 0; value <= max_value; value += 2)
 		{
-			uint32_t num_bits = acl_impl::get_num_bits_at_bit_rate(bit_rate);
-			uint32_t max_value = (1 << num_bits) - 1;
-			for (uint32_t value = 0; value <= max_value; ++value)
+			vector4f vec0 = vector_clamp(vector_set(
+				unpack_scalar_unsigned(value, num_bits),
+				unpack_scalar_unsigned(std::min(value + 1, max_value), num_bits),
+				0.0F), vzero, vone);
+
+			pack_vector2_uXX_unsafe(vec0, num_bits, &buffer[0]);
+			vector4f vec1 = unpack_vector2_uXX_unsafe(num_bits, &buffer[0], 0);
+			if (!vector_all_near_equal2(vec0, vec1, 1.0E-6F))
+				num_errors++;
+
+			for (size_t offset_idx = 0; offset_idx < get_array_size(offsets); ++offset_idx)
 			{
-				const float value_unsigned = scalar_clamp(unpack_scalar_unsigned(value, num_bits), 0.0F, 1.0F);
+				const uint32_t offset = offsets[offset_idx];
 
-				vec0 = vector_set(value_unsigned, value_unsigned, value_unsigned);
-				pack_vector2_uXX_unsafe(vec0, num_bits, &buffer[0]);
-				vec1 = unpack_vector2_uXX_unsafe(num_bits, &buffer[0], 0);
+				memcpy_bits(&tmp0.buffer[0], offset, &buffer[0], 0, size_t(num_bits) * 4);
+				vec1 = unpack_vector2_uXX_unsafe(num_bits, &tmp0.buffer[0], offset);
 				if (!vector_all_near_equal2(vec0, vec1, 1.0E-6F))
 					num_errors++;
-
-				{
-					const uint8_t offsets[] = { 0, 1, 5, 31, 32, 33, 63, 64, 65, 93 };
-					for (uint8_t offset_idx = 0; offset_idx < get_array_size(offsets); ++offset_idx)
-					{
-						const uint8_t offset = offsets[offset_idx];
-
-						memcpy_bits(&tmp0.buffer[0], offset, &buffer[0], 0, size_t(num_bits) * 4);
-						vec1 = unpack_vector2_uXX_unsafe(num_bits, &tmp0.buffer[0], offset);
-						if (!vector_all_near_equal2(vec0, vec1, 1.0E-6F))
-							num_errors++;
-					}
-				}
 			}
 		}
-		CHECK(num_errors == 0);
 	}
+
+	return num_errors;
+}
+
+// Test is slow, split it into two parts, second highest bit rate on its own
+// Highest bit rate is full precision float32, it uses a different function
+TEST_CASE("pack_vector2_XX part0", "[math][vector4][packing]")
+{
+	// Test every possible input up to second highest bit rate
+	uint32_t num_errors = test_pack_vector2_XX(1, acl_impl::k_highest_bit_rate - 1);
+	CHECK(num_errors == 0);
+}
+
+TEST_CASE("pack_vector2_XX part1", "[math][vector4][packing]")
+{
+	// Test every possible input for second highest bit rate
+	uint32_t num_errors = test_pack_vector2_XX(acl_impl::k_highest_bit_rate - 1, acl_impl::k_highest_bit_rate);
+	CHECK(num_errors == 0);
 }
 
 TEST_CASE("misc vector4 packing", "[math][vector4][packing]")