// Path: src/com/ezio/multiwii/helpers/Functions.java
// public class Functions {
// 
// 	
// 	public static long ConcatInt(int x, int y) {
// 		return (int) ((x * Math.pow(10, numberOfDigits(y))) + y);
// 	}
// 
// 	public static float map(float x, float in_min, float in_max, float out_min, float out_max) {
// 		return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
// 	}
// 
// 	public static int map(int x, int in_min, int in_max, int out_min, int out_max) {
// 		return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
// 	}
// 
// 	public static int numberOfDigits(long n) {
// 		// Guessing 4 digit numbers will be more probable.
// 		// They are set in the first branch.
// 		if (n < 10000L) { // from 1 to 4
// 			if (n < 100L) { // 1 or 2
// 				if (n < 10L) {
// 					return 1;
// 				} else {
// 					return 2;
// 				}
// 			} else { // 3 or 4
// 				if (n < 1000L) {
// 					return 3;
// 				} else {
// 					return 4;
// 				}
// 			}
// 		} else { // from 5 a 20 (albeit longs can't have more than 18 or 19)
// 			if (n < 1000000000000L) { // from 5 to 12
// 				if (n < 100000000L) { // from 5 to 8
// 					if (n < 1000000L) { // 5 or 6
// 						if (n < 100000L) {
// 							return 5;
// 						} else {
// 							return 6;
// 						}
// 					} else { // 7 u 8
// 						if (n < 10000000L) {
// 							return 7;
// 						} else {
// 							return 8;
// 						}
// 					}
// 				} else { // from 9 to 12
// 					if (n < 10000000000L) { // 9 or 10
// 						if (n < 1000000000L) {
// 							return 9;
// 						} else {
// 							return 10;
// 						}
// 					} else { // 11 or 12
// 						if (n < 100000000000L) {
// 							return 11;
// 						} else {
// 							return 12;
// 						}
// 					}
// 				}
// 			} else { // from 13 to ... (18 or 20)
// 				if (n < 10000000000000000L) { // from 13 to 16
// 					if (n < 100000000000000L) { // 13 or 14
// 						if (n < 10000000000000L) {
// 							return 13;
// 						} else {
// 							return 14;
// 						}
// 					} else { // 15 or 16
// 						if (n < 1000000000000000L) {
// 							return 15;
// 						} else {
// 							return 16;
// 						}
// 					}
// 				} else { // from 17 to ...¿20?
// 					if (n < 1000000000000000000L) { // 17 or 18
// 						if (n < 100000000000000000L) {
// 							return 17;
// 						} else {
// 							return 18;
// 						}
// 					} else { // 19? Can it be?
// 						// 10000000000000000000L is'nt a valid long.
// 						return 19;
// 					}
// 				}
// 			}
// 		}
// 	}
// }


import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.View;
import com.ezio.multiwii.helpers.Functions;

	float scaledDensity = 0;

	public float InputX(float x) {
		float a = Functions.map(x, 0, ww, 1000, 2000);
		if (a > 2000)
			a = 2000;
		if (a < 1000)
			a = 1000;
		return a;
	}

	public float InputY(float y) {
		float a = Functions.map(hh - y, 0, ww, 1000, 2000);
		if (a > 2000)
			a = 2000;
		if (a < 1000)
			a = 1000;
		return a;

	}

	public void SetPosition(float xx, float yy) {
		x = (ww / 2) + ((xx - 1500) / 500) * (ww / 2);
		y = (hh / 2) - ((yy - 1500) / 500) * (hh / 2);
		invalidate();

	}

	public StickView(Context context) {
// Path: src/com/ezio/multiwii/helpers/Functions.java
// public class Functions {
// 
// 	
// 	public static long ConcatInt(int x, int y) {
// 		return (int) ((x * Math.pow(10, numberOfDigits(y))) + y);
// 	}
// 
// 	public static float map(float x, float in_min, float in_max, float out_min, float out_max) {
// 		return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
// 	}
// 
// 	public static int map(int x, int in_min, int in_max, int out_min, int out_max) {
// 		return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
// 	}
// 
// 	public static int numberOfDigits(long n) {
// 		// Guessing 4 digit numbers will be more probable.
// 		// They are set in the first branch.
// 		if (n < 10000L) { // from 1 to 4
// 			if (n < 100L) { // 1 or 2
// 				if (n < 10L) {
// 					return 1;
// 				} else {
// 					return 2;
// 				}
// 			} else { // 3 or 4
// 				if (n < 1000L) {
// 					return 3;
// 				} else {
// 					return 4;
// 				}
// 			}
// 		} else { // from 5 a 20 (albeit longs can't have more than 18 or 19)
// 			if (n < 1000000000000L) { // from 5 to 12
// 				if (n < 100000000L) { // from 5 to 8
// 					if (n < 1000000L) { // 5 or 6
// 						if (n < 100000L) {
// 							return 5;
// 						} else {
// 							return 6;
// 						}
// 					} else { // 7 u 8
// 						if (n < 10000000L) {
// 							return 7;
// 						} else {
// 							return 8;
// 						}
// 					}
// 				} else { // from 9 to 12
// 					if (n < 10000000000L) { // 9 or 10
// 						if (n < 1000000000L) {
// 							return 9;
// 						} else {
// 							return 10;
// 						}
// 					} else { // 11 or 12
// 						if (n < 100000000000L) {
// 							return 11;
// 						} else {
// 							return 12;
// 						}
// 					}
// 				}
// 			} else { // from 13 to ... (18 or 20)
// 				if (n < 10000000000000000L) { // from 13 to 16
// 					if (n < 100000000000000L) { // 13 or 14
// 						if (n < 10000000000000L) {
// 							return 13;
// 						} else {
// 							return 14;
// 						}
// 					} else { // 15 or 16
// 						if (n < 1000000000000000L) {
// 							return 15;
// 						} else {
// 							return 16;
// 						}
// 					}
// 				} else { // from 17 to ...¿20?
// 					if (n < 1000000000000000000L) { // 17 or 18
// 						if (n < 100000000000000000L) {
// 							return 17;
// 						} else {
// 							return 18;
// 						}
// 					} else { // 19? Can it be?
// 						// 10000000000000000000L is'nt a valid long.
// 						return 19;
// 					}
// 				}
// 			}
// 		}
// 	}
// }


// Path: src/com/ezio/multiwii/radio/StickView.java
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.View;
import com.ezio.multiwii.helpers.Functions;


	float scaledDensity = 0;

	public float InputX(float x) {
		float a = Functions.map(x, 0, ww, 1000, 2000);
		if (a > 2000)
			a = 2000;
		if (a < 1000)
			a = 1000;
		return a;
	}

	public float InputY(float y) {
		float a = Functions.map(hh - y, 0, ww, 1000, 2000);
		if (a > 2000)
			a = 2000;
		if (a < 1000)
			a = 1000;
		return a;

	}

	public void SetPosition(float xx, float yy) {
		x = (ww / 2) + ((xx - 1500) / 500) * (ww / 2);
		y = (hh / 2) - ((yy - 1500) / 500) * (hh / 2);
		invalidate();

	}

	public StickView(Context context) {
		super(context);