Add Type Check