牛顿迭代法及其应用

合集下载

解非线性方程的牛顿迭代法及其应用

解非线性方程的牛顿迭代法及其应用

解非线性方程的牛顿迭代法及其应用一、本文概述非线性方程是数学领域中的一个重要研究对象,其在实际应用中广泛存在,如物理学、工程学、经济学等领域。

求解非线性方程是一个具有挑战性的问题,因为这类方程往往没有简单的解析解,需要通过数值方法进行求解。

牛顿迭代法作为一种古老而有效的数值求解方法,对于求解非线性方程具有重要的应用价值。

本文旨在介绍牛顿迭代法的基本原理、实现步骤以及在实际问题中的应用。

我们将详细阐述牛顿迭代法的基本思想,包括其历史背景、数学原理以及收敛性分析。

我们将通过具体实例,展示牛顿迭代法的计算步骤和实际操作过程,以便读者能够更好地理解和掌握该方法。

我们将探讨牛顿迭代法在各个领域中的实际应用,包括其在物理学、工程学、经济学等领域中的典型应用案例,以及在实际应用中可能遇到的问题和解决方法。

通过本文的介绍,读者可以深入了解牛顿迭代法的基本原理和应用技巧,掌握其在求解非线性方程中的实际应用方法,为进一步的研究和应用提供有力支持。

二、牛顿迭代法的基本原理牛顿迭代法,又称为牛顿-拉夫森方法,是一种在实数或复数域上近似求解方程的方法。

其基本原理是利用泰勒级数的前几项来寻找方程的根。

如果函数f(x)在x0点的导数f'(x0)不为零,那么函数f(x)在x0点附近可以用一阶泰勒级数来近似表示,即:这就是牛顿迭代法的基本迭代公式。

给定一个初始值x0,我们可以通过不断迭代这个公式来逼近f(x)的根。

每次迭代,我们都用当前的近似值x0来更新x0,即:这个过程一直持续到满足某个停止条件,例如迭代次数达到预设的上限,或者连续两次迭代的结果之间的差小于某个预设的阈值。

牛顿迭代法的收敛速度通常比线性搜索方法快,因为它利用了函数的导数信息。

然而,这种方法也有其局限性。

它要求函数在其迭代点处可导,且导数不为零。

牛顿迭代法可能不收敛,如果初始点选择不当,或者函数有多个根,或者根是重根。

因此,在使用牛顿迭代法时,需要谨慎选择初始点,并对迭代过程进行适当的监控和调整。

迭代法和牛顿迭代法的优缺点及应用

迭代法和牛顿迭代法的优缺点及应用

迭代法和牛顿迭代法的优缺点及应用在数值计算和算法设计中,迭代法和牛顿迭代法是两种常见的数值优化方法。

它们可以很好地用于解决非线性方程组、最优化问题以及数学模型的求解等问题。

在实际应用中,它们的优缺点各有不同,可根据问题的特点选择适合的方法。

本文将对迭代法和牛顿迭代法的优缺点及应用进行分析。

一、迭代法1、迭代法的原理迭代法是一种通过不断逼近目标值的方法。

其思想是将一个原问题转化为一个递归求解的过程。

假设我们要求解一个方程f(x) = 0,可以利用如下公式进行迭代:$x_{n+1} = g(x_n)$其中,$g(x_n)$是一个递推公式,用来表示如何从$x_n$ 得到$x_{n+1}$。

通过不断迭代,可以逐渐逼近解。

当迭代次数足够多时,可以得到符合精度的解。

2、迭代法的优点(1)实现简单:迭代法的计算过程非常简单,只需要考虑递推公式即可。

(2)收敛速度较快:迭代法的收敛速度要比其他方法要快,尤其是在某些非线性问题中,迭代法表现出了其优异的收敛性。

(3)适用范围广:迭代法可以用于解决各种类型的数学问题,包括求解非线性方程组、求解最优化问题以及求解微积分方程等。

3、迭代法的缺点(1)收敛不稳定:由于迭代法只是通过不断逼近目标值的过程,收敛的速度和稳定性都受到了影响,可能存在发散的情况。

(2)初值选择的影响:迭代法在求解问题时,对于初值的选择需要非常慎重,因为不同的初值会得到不同的收敛结果。

(3)依赖递推公式:迭代法需要依赖于递推公式,当递推公式难以求解或者导数难以计算时,迭代法的效果可能会受到影响。

二、牛顿迭代法1、牛顿迭代法的原理牛顿迭代法是一种利用函数的一阶导数和二阶导数来逼近根的方法。

对于一个非线性方程f(x)=0,设其在$x_0$处的导数不为0,则可以用如下公式进行迭代:$x_{n+1} = x_n −\frac {f(x_n)}{f′(x_n)}$其中$f'(x_n)$是$f(x_n)$的一阶导数。

牛顿迭代法及其应用

牛顿迭代法及其应用

牛顿迭代法及其应用牛顿迭代法是一种求解函数零点的迭代方法,具有快速收敛、精度高等优点,被广泛应用于计算机、数学、物理等领域。

本文将从理论和实际应用两方面介绍牛顿迭代法,并对其应用进行探讨。

一、理论基础牛顿迭代法是通过一点处的切线来逼近函数零点的方法。

设$f(x)$在$x_0$点有一个零点,且其导数$f'(x_0)$存在且不为零,那么该零点可以通过一点$(x_0,f(x_0))$处的切线与$x$轴的交点来逐步逼近。

假设切线的方程为$y=f'(x_0)(x-x_0)+f(x_0)$,则其中$x$轴上的交点为$x_1=x_0-\frac{f(x_0)}{f'(x_0)}$,这是零点的一个更好的近似值。

用$x_1$代替$x_0$,再利用同样的方法得到$x_2$,不断重复这个过程,即可逐步逼近零点。

这个过程可以用下面的公式表示:$$x_{n+1}=x_n-\frac{f(x_n)}{f'(x_n)}$$这就是牛顿迭代法的基本公式。

从初始值$x_0$开始迭代,不断利用公式进行逼近,直到找到满足$f(x_n)=0$的解。

二、实际应用牛顿迭代法在实际应用中广泛存在,比如在计算机图形学中,通过牛顿迭代法可以精确计算出圆的周长、面积等参数,也可以实现快速的路径追踪和光线追踪。

在金融领域中,牛顿迭代法可以用来计算隐含波动率,即在期权定价模型中,寻找满足期权定价公式的波动率。

由于这个过程中往往要用到反函数,所以牛顿迭代法可以快速找到隐含波动率。

另外,在机器学习、神经网络中,多次用到牛顿迭代法进行梯度下降,智能化运用牛顿迭代法可以提高计算效率,降低误差。

三、应用探讨牛顿迭代法的应用范围较广,但在实际应用中也存在一些问题。

如何避免迭代过程中出现抖动、越界、阻尼等现象,可以通过设置收敛条件、调整步长等方式进行优化。

此外,当函数的导数存在零点或迭代公式不存在时,牛顿迭代法也会失效。

因此,在选择牛顿迭代法时,需要了解函数特性,根据情况选择适合的迭代方法。

牛顿迭代法在优化问题中的应用

牛顿迭代法在优化问题中的应用

牛顿迭代法在优化问题中的应用牛顿迭代法是一种基于泰勒级数的优化算法,可以有效地解决优化问题。

它的基本思想是从一个初始点出发,利用一阶导数和二阶导数信息,逐步找到函数的极值点。

在这篇文章中,我们将介绍牛顿迭代法在优化问题中的应用,并且通过实际例子来演示如何使用该方法求解问题。

一、牛顿迭代法的基本思想牛顿迭代法可以解决那些需要找到函数最值点的问题。

它的基本思想是从一个初始点 $x_0$ 出发,利用函数的一阶导数和二阶导数信息,逐步逼近函数的最值点。

具体的实现方式是通过求解下列方程来确定下一个迭代点 $x_k$:$$f(x_{k+1})=f(x_k)+f'(x_k)(x_{k+1}-x_k) +\frac{1}{2}f''(x_k)(x_{k+1}-x_k)^2 = 0$$其中,$f'(x_k)$ 和 $f''(x_k)$ 分别是函数 $f(x)$ 在点 $x_k$ 处的一阶导数和二阶导数。

这个方程可以通过牛顿迭代法一步一步地求解,直到达到预定的收敛条件。

二、例子说明现在我们通过一个例子来说明牛顿迭代法的运用。

假设我们要求解函数 $f(x)$ 的最小值,其中$$f(x)=x^3-2x^2+4$$首先我们需要求解 $f(x)$ 的一阶导数和二阶导数:$$f'(x) = 3x^2-4x$$$$f''(x) = 6x-4$$接下来设置初始点 $x_0=0$,然后运用牛顿迭代法求解下一个迭代点 $x_1$:$$f(x_1) = f(x_0) + f'(x_0)(x_1-x_0) + \frac{1}{2}f''(x_0)(x_1-x_0)^2=0$$化简得:$$x_1= \frac{4}{3}$$接下来我们将 $x_1$ 作为下一个初始点,并重复上述的操作,得到:$$x_2= 1.33333333...$$这个迭代过程是连续迭代的,当$x_k$ 的值趋近于最小值点时,函数值逐渐接近于 0。

牛顿迭代法在微分方程中的应用

牛顿迭代法在微分方程中的应用

牛顿迭代法在微分方程中的应用介绍:微分方程作为数学中的一门重要分支,被广泛运用在工程、物理和经济等众多领域中。

当我们面对一些复杂的微分方程时,我们会需要使用一些数值方法帮助我们计算其解析解。

牛顿迭代法,作为一种常用的数值方法,被广泛运用在微分方程中的解析中。

一、基本原理牛顿迭代法,是一种寻找方程实根的方法,其基本思想是利用函数在零点处的导数,逐步接近方程的实根。

其公式为:$$x_{n+1}=x_n-\frac {f(x_n)}{f'(x_n)}$$ 其中,x0是迭代初始值,xn是第n次迭代值,f(xn)和f'(xn)分别是函数f(x)在xn处的函数值和导数值。

二、牛顿迭代法的优点1. 速度快牛顿迭代法是一种高效的数值计算方法,其收敛速度非常快,有许多实际应用都需要用到这种方法。

2. 精度高相对于其他数值计算方法,牛顿迭代法的精度比较高,使它成为许多科学研究和工业生产中必不可少的一种数值计算方法。

三、牛顿迭代法在微分方程中的应用牛顿迭代法经常被用来解决微分方程中的数值计算问题。

例如,我们可以利用牛顿迭代法来计算某些微分方程的解析解,其中非常经典的例子是求解关于x的函数f(x)=0的方程。

我们希望通过数值计算来获得此方程一个或多个解析解。

计算过程中,我们首先需要定义一个函数来表示方程的左侧。

例如:$$f(x)=\sin(x)-x/2-\pi/2$$ 如果我们需要解决该方程的解析问题,我们可以通过使用牛顿迭代法找出它的数值解,示例代码如下:return np.sin(x)-x/2-np.pi/2def df(x):return np.cos(x)-0.5def newton(f,df,x0,tol=1e-6,eps=1e-6): xn=x0while True:fx=f(xn)dfx=df(xn)if abs(fx)<tol:breakif abs(dfx)<eps:print("Error: null derivative") return Nonexn=xn-fx/dfxreturn xnroot=newton(f,df,x0)print(root)通过牛顿迭代法,我们可以计算出f(x)=0的解析解。

牛顿迭代法:介绍、原理与运用

牛顿迭代法:介绍、原理与运用

⽜顿迭代法:介绍、原理与运⽤⽜顿迭代法:介绍、原理与运⽤介绍⽜顿迭代法是⼀个可以求⼀个任意函数的零点的⼯具。

它⽐⼆分法快得多。

公式是:x=a-f(a)/f'(a)。

其中a是猜测值,x是新的猜测值。

不断迭代,f(x)就越来越接近0。

原理我们将f(x)做泰勒⼀阶展开:f(x)∼f(a)+(x-a)f'(a)。

令f(x)=0∴f(a)+(x-a)f'(a)=0∴f(a)+xf'(a)-af'(a)=0∴xf'(a)=af'(a)-f(a)∴x=a-f(a)/f'(a)实例:⽜顿迭代法求√2的近似值∵x = √2∴x2 = 2∴x2 -2 = 0令f(x)=⽅程左边,则f(x)∼0↔x∼√2。

f'(x) = 2x。

于是可以得到迭代公式:x=a-f(a)/f'(a)=a-(a2-2)/(2a)=a-a/2+1/a=a/2+1/a代码如下(要求误差⼩于1e-6):#include <stdio.h>#include <math.h>int main(int argc, char const *argv[]){double a = 2.0;double expect_error = 0.000001;double x;double actual_error;unsigned iteration_count = 0;do {if (a == 0.0) a = 0.1; /* 避免0做分母 */x = a/2 + 1/a;actual_error = fabs(2 - x*x);a = x;++iteration_count;printf("%d\t%.9f\t%.9f\n", iteration_count, a, actual_error);} while (actual_error >= expect_error);return 0;}输出:1 1.500000000 0.2500000002 1.416666667 0.0069444443 1.414215686 0.0000060074 1.414213562 0.000000000迭代了4次。

计算方法--牛顿法

牛顿迭代法应用及运算一、实验问题1.给定初值x0及容许误差ε,编制牛顿法解方程f(x)=0的通用程序。

2.给定方程f(x)=x 33−x=0,易知其有三个根x1∗=−√3,x2∗=0,x3∗=√3①由牛顿方法的局部收敛性可知存在δ>0,当x0∈(−δ,+δ)时,Newton迭代序列收敛于根x2∗,试确定尽可能大的δ。

②试取若干初始值,观察当x0∈(−∞,−1),(−1,−δ),(−δ,+δ),(δ,1),(1,+∞)时Newton序列的收敛性以及收敛于哪一个根。

二、实验原理⑴构造迭代函数的一条重要途径,是用近似方程来代替原方程去求根。

因此如果能将非线性方程f(x)=0用线性工程来代替,那么求近似根问题就很容易解决,而且十分方便。

牛顿法就是把非线性方程线性化的一种方法。

设x k是f(x)=0的一个近似根,把f(x)在x k处作一阶泰勒级数展开,即f(x)≈f(x k)+f′(x k)(x−x k)于是我们得到近似方程f(x k)+f′(x k)(x−x k)=0设f′(x k)≠0,则上式解为x̃=x k−f(x k) f′(x k)可以得到牛顿迭代法的公式为x k+1=x k−f(x k)f′(x k)(k=0,1,2,…)已知x0,就可以用牛顿迭代法的公式进行迭代运算,直到|x k+1−x k|<ε可以得到近似结果。

⑵判断牛顿法的局部收敛性,需要考虑单根和双根两种情况:牛顿法的迭代函数为φ(x)=x−f(x)f′(x)对φ(x)求导得φ′(x)=1−(f′(x))2−f′′(x)f(x)(f′(x))2=f′′(x)f(x)(f′(x))2φ′′(x)=[f(x)f′′(x)(f′(x))2]′=f′(x)f′′(x)(f′(x))2+f(x)[f′′(x)(f′(x))2]′i.当x∗是f(x)=0的单根时,则有f(x)=(x−x∗)g(x),且g(x∗)≠0.这时f′(x)=g(x)+(x−x∗)g(x)且f′(x∗)=g(x∗)≠0于是φ′(x∗)=f ′′(x∗)f(x∗)(f′(x∗))2=0,φ′′(x∗)=f′′(x∗)f′(x∗)一半的有φ′′(x∗)≠0。

牛顿迭代法原理

牛顿迭代法原理牛顿迭代法是一种用来求解方程近似解的方法,它是由伟大的数学家牛顿提出的。

牛顿迭代法的原理非常简单,但却非常有效,被广泛应用于科学计算、工程技术和金融领域。

本文将详细介绍牛顿迭代法的原理及其应用。

首先,我们来看一下牛顿迭代法的基本思想。

对于一个函数f(x),我们希望找到它的根,即找到使得f(x)=0的x值。

假设我们已经有一个近似解x0,我们希望通过一些计算,得到一个更接近真实根的近似解x1。

那么,牛顿迭代法的思想就是利用函数f(x)在点x0处的切线来逼近真实根的过程。

具体来说,我们可以通过切线与x轴的交点来得到新的近似解x1,然后以x1为起点,再次利用函数f(x)在x1处的切线来得到更接近真实根的近似解x2,如此循环下去,直到满足我们的精度要求为止。

接下来,我们来具体推导一下牛顿迭代法的数学原理。

假设我们要求解方程f(x)=0,我们已经有一个近似解x0,那么我们可以利用函数f(x)在点x0处的切线来得到新的近似解x1。

根据切线的定义,我们可以得到切线方程为:f'(x0)(x-x0) + f(x0) = 0。

其中f'(x0)表示函数f(x)在点x0处的导数。

由于我们希望找到使得f(x)=0的x 值,因此我们可以将上述方程改写为:x = x0 f(x0)/f'(x0)。

这就是牛顿迭代法的迭代公式。

通过不断地使用这个迭代公式,我们可以逐步逼近真实根,直到满足我们的精度要求为止。

牛顿迭代法的收敛性是其最重要的性质之一。

在一定的条件下,牛顿迭代法可以保证收敛到方程的根。

具体来说,如果我们选择一个足够接近真实根的初始值x0,并且函数f(x)在x0附近具有连续的一阶导数,那么牛顿迭代法就可以保证收敛到方程的根。

这使得牛顿迭代法成为了一种非常有效的求解方程近似解的方法。

除了求解方程的近似解外,牛顿迭代法还被广泛应用于优化问题和数值微分方程的求解中。

在优化问题中,我们可以利用牛顿迭代法来求解函数的极值点,从而得到最优解。

牛顿迭代法及其应用

牛顿迭代法及其应用牛顿迭代法是求解非线性方程的一种常用方法,其基本思想是利用泰勒公式,将原方程式化为近似的一次方程,不断迭代,直到获得满足要求的精度值为止。

在数学、物理、化学等领域,牛顿迭代法被广泛应用。

1. 原理与步骤给定一个函数 f(x),我们希望求出它的一个根,即使得 f(x) = 0 的 x 的值。

考虑到非线性函数的复杂性,我们采用牛顿迭代法来解决。

假设已经猜测出一个近似值 x0,通过泰勒公式将 f(x) 在 x0 处展开:f(x) ≈ f(x0) + f'(x0)(x - x0)为了简化计算,我们令上式等于0,即:f(x0) + f'(x0)(x - x0) = 0将 x 化简可得:x = x0 - f(x0) / f'(x0)将上式作为下一次迭代的初始值,即可不断迭代求解,直到满足要求的精度值。

2. 牛顿迭代法的应用2.1 偏微分方程偏微分方程是现代科学和工程所涉及的许多领域的基础,而牛顿迭代法可用于求解非线性偏微分方程。

由于牛顿迭代法依赖于初始值的选择,因此需要根据实际问题来选择初始值,从而得到精确的解。

2.2 统计学在统计学中,牛顿迭代法被广泛应用于最大似然估计。

最大似然估计是在给定数据集的前提下,寻找一种参数估计方法,使得似然函数(即给定数据集下模型参数的条件下,该数据集出现的概率)最大。

通过牛顿迭代法,可以快速求解似然函数的最大值,从而获得最优的参数估计结果。

2.3 非线性优化在优化问题中,如果目标函数为非线性函数,则无法通过简单的线性规划来解决,需要借助于牛顿迭代法。

通过迭代求解逼近目标函数的零点,可以实现非线性规划问题的求解。

3. 注意事项在使用牛顿迭代法时,需要注意以下几点:3.1 初始值的选择初始值的选择会直接影响到迭代的次数和迭代结果的精度。

一般来说,我们选择敏感度较高的点作为初始值,例如驻点或函数导数为零的点。

3.2 解存在性和唯一性使用牛顿迭代法求解方程时,需要保证解的存在性和唯一性。

计算方法---牛顿迭代法的应用

牛顿迭代法的应用一、牛顿法简介牛顿迭代法(Newton's method )又称为牛顿-拉夫逊方法(Newton-Raphson method ),它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法。

多数方程不存在求根公式,因此求精确根非常困难,甚至不可能,从而寻找方程的近似根就显得特别重要。

牛顿迭代法是求方程根的重要方法之一,其最大优点是在方程f(x) = 0的单根附近具有平方收敛,而且该法还可以用来求方程的重根、复根,此时线性收敛,但是可通过一些方法变成超线性收敛。

该方法广泛用于计算机编程中。

简单迭代法是用直接的方法从原方程中隐含地解出x ,从而确定出)(x ϕ。

而牛顿迭代法是用一种间接而特殊的方法来确定)(x ϕ的。

下面具体推到牛顿迭代公式。

假设k x 是非线性方程为0)(=x f 的一个近似根,把)(x f 在k x 处作泰勒展开:+-+-+=2''')(!2)())(()()(k k k k k x x x f x x x f x f x f若取前两项来近似代替)(x f (称为)(x f 的线性化),则得近似的线性方程0))(()()('=-+≈k k k x x x f x f x f设0)('≠k x f ,令其解为1+k x ,则得)()('1k k k k x f x f x x -=+ (1)这称为0)(=x f 的牛顿迭代公式。

它对应的迭代方程为)()('x f x f x x -=显然是0)(=x f 的同解方程,故其迭代函数为)()()('k k k x f x f x x -=ϕ (0)('≠x f ) 在0)(=x f 的根α的某个邻域)|(|δα≤-x R 内,0)(≈x f1|)('||)(||)(||)(|2'''<≤•=L x f x f x f x ϕ 在α的邻域R 内,对任意初值x 0,应用由公式(1)来解方程的方法称为牛顿迭代法,它是解代数方程和超越方程的有效方法之一。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Asd ssddwfunction FindProxyForURL(url, host){if(isPlainHostName(host)) return 'DIRECT';if(!shExpMatch(url, 'http*')) return 'DIRECT';var ip = dnsResolve(host);// no dns resultif(!ip) return 'PROXY 127.0.0.1:8083;';// ipv6if(shExpMatch(ip, '*:*')) return 'DIRECT';// localelse if(isInNet(ip,'127.0.0.0','255.0.0.0')) return 'DIRECT';else if(isInNet(ip,'10.0.0.0','255.0.0.0')) return 'DIRECT';else if(isInNet(ip,'192.168.0.0','255.255.0.0')) return 'DIRECT';else if(isInNet(ip,'172.16.0.0','255.240.0.0')) return 'DIRECT';else if(isInNet(ip,'169.254.0.0','255.255.0.0')) return 'DIRECT';// video ruleselse if(shExpMatch(url, '*.flv')) return 'PROXY ' + host + ':8081;';else if(shExpMatch(url, '*.mp4')) return 'PROXY ' + host + ':8081;';else if(shExpMatch(url, 'http:*/flv/*.flv?*&key=*')) return 'PROXY ' + host + ':8081;';else if(shExpMatch(url, 'http:*/mp4/*.f4v?*&key=*')) return 'PROXY ' + host + ':8081;';else if(shExpMatch(url, '*.flv?start=*')) return 'PROXY ' + host + ':8081;';else if(shExpMatch(url, '*.mp4?start=*')) return 'PROXY ' + host + ':8081;';else if (isInNet(ip, '58.154.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '58.192.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '58.194.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '58.196.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '58.198.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '58.200.0.0','255.248.0.0')) return 'DIRECT';else if (isInNet(ip, '59.64.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '59.68.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '59.72.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '59.74.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '59.76.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '59.77.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '59.78.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '110.64.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '111.114.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '111.116.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '111.186.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '113.54.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '114.212.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '114.214.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '115.24.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '115.154.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '115.156.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '115.158.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '116.13.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '116.56.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '118.202.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '118.228.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '118.230.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '120.94.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '120.95.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '121.48.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '121.52.160.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '121.192.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '121.193.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '121.194.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '121.248.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '122.204.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '125.216.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '125.218.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '125.219.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '125.220.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '125.222.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '162.105.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '166.111.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '175.185.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '175.186.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '180.84.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '180.201.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '180.208.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '183.168.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '183.170.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '183.172.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '202.4.128.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.38.2.0','255.255.254.0')) return 'DIRECT'; else if (isInNet(ip, '202.38.64.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.38.96.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.38.140.0','255.255.254.0')) return 'DIRECT'; else if (isInNet(ip, '202.38.184.0','255.255.248.0')) return 'DIRECT'; else if (isInNet(ip, '202.38.192.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '202.112.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '202.113.16.0','255.255.240.0')) return 'DIRECT'; else if (isInNet(ip, '202.113.32.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.113.64.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '202.113.128.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '202.113.192.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.113.224.0','255.255.240.0')) return 'DIRECT'; else if (isInNet(ip, '202.113.240.0','255.255.240.0')) return 'DIRECT'; else if (isInNet(ip, '202.114.0.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.114.32.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.114.64.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '202.114.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '202.115.0.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.115.32.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.115.64.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '202.115.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '202.116.0.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.116.32.0','255.255.240.0')) return 'DIRECT'; else if (isInNet(ip, '202.116.48.0','255.255.240.0')) return 'DIRECT'; else if (isInNet(ip, '202.116.64.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.116.96.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.116.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '202.117.0.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '202.117.64.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '202.117.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '202.118.0.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.118.32.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.118.64.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '202.118.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '202.119.0.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.119.32.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.119.64.0','255.255.240.0')) return 'DIRECT'; else if (isInNet(ip, '202.119.80.0','255.255.240.0')) return 'DIRECT'; else if (isInNet(ip, '202.119.96.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.119.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '202.120.0.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '202.120.64.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '202.120.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '202.121.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '202.127.216.0','255.255.248.0')) return 'DIRECT'; else if (isInNet(ip, '202.127.224.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '202.179.240.0','255.255.240.0')) return 'DIRECT'; else if (isInNet(ip, '202.192.0.0','255.248.0.0')) return 'DIRECT'; else if (isInNet(ip, '202.200.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '203.91.120.0','255.255.248.0')) return 'DIRECT'; else if (isInNet(ip, '203.114.244.0','255.255.252.0')) return 'DIRECT'; else if (isInNet(ip, '210.26.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '210.28.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '210.32.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '210.36.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '210.40.0.0','255.248.0.0')) return 'DIRECT';else if (isInNet(ip, '211.64.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '211.68.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '211.70.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '211.80.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '211.81.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '211.82.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '211.83.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '211.84.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '211.86.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '218.192.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '218.193.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '218.194.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '218.195.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '218.196.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '219.216.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '219.218.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '219.220.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '219.221.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '219.222.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '219.224.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '219.226.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '219.227.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '219.228.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '219.230.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '219.242.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '219.244.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '222.16.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '222.18.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '222.20.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '222.22.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '222.23.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '222.24.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '222.26.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '222.28.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '222.192.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '222.196.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '222.199.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '222.200.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '222.204.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '222.206.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '125.61.160.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '125.61.192.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '202.38.146.0','255.255.255.0')) return 'DIRECT'; else if (isInNet(ip, '210.25.0.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '210.25.128.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '210.25.192.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '210.25.225.0','255.255.255.0')) return 'DIRECT'; else if (isInNet(ip, '210.25.226.0','255.255.254.0')) return 'DIRECT'; else if (isInNet(ip, '210.25.228.0','255.255.252.0')) return 'DIRECT'; else if (isInNet(ip, '210.25.232.0','255.255.248.0')) return 'DIRECT'; else if (isInNet(ip, '210.25.240.0','255.255.240.0')) return 'DIRECT'; else if (isInNet(ip, '210.82.118.0','255.255.255.0')) return 'DIRECT'; else if (isInNet(ip, '27.8.0.0','255.248.0.0')) return 'DIRECT';else if (isInNet(ip, '27.36.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '27.40.0.0','255.248.0.0')) return 'DIRECT';else if (isInNet(ip, '58.16.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '58.17.0.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '58.17.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '58.18.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '58.19.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '58.20.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '58.21.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '58.22.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '58.100.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '58.116.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '58.128.0.0','255.248.0.0')) return 'DIRECT'; else if (isInNet(ip, '58.144.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '58.240.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '58.242.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '58.244.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '60.0.0.0','255.248.0.0')) return 'DIRECT';else if (isInNet(ip, '60.8.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '60.10.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '60.11.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '60.12.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '60.13.0.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '60.13.64.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '60.13.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '60.14.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '60.24.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '60.30.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '60.31.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '60.208.0.0','255.248.0.0')) return 'DIRECT'; else if (isInNet(ip, '60.216.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '60.218.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '60.220.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '60.255.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '61.52.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '61.54.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '61.55.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '61.87.192.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '61.133.0.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '61.134.96.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '61.134.128.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '61.134.192.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '61.135.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '61.136.0.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '61.136.64.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '61.137.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '61.138.0.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '61.138.64.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '61.138.128.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '61.139.128.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '61.148.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '61.156.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '61.158.0.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '61.158.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '61.159.0.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '61.161.0.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '61.161.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '61.162.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '61.163.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '61.167.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '61.168.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '61.176.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '61.179.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '61.180.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '61.181.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '61.182.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '61.189.0.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '110.6.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '110.16.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '110.72.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '110.228.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '110.240.0.0','255.240.0.0')) return 'DIRECT'; else if (isInNet(ip, '111.67.192.0','255.255.240.0')) return 'DIRECT'; else if (isInNet(ip, '111.68.64.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '111.85.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '111.160.0.0','255.248.0.0')) return 'DIRECT'; else if (isInNet(ip, '111.192.0.0','255.240.0.0')) return 'DIRECT'; else if (isInNet(ip, '111.208.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '112.80.0.0','255.248.0.0')) return 'DIRECT';else if (isInNet(ip, '112.96.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '112.109.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '112.111.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '112.122.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '112.132.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '112.192.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '112.224.0.0','255.224.0.0')) return 'DIRECT'; else if (isInNet(ip, '113.0.0.0','255.248.0.0')) return 'DIRECT';else if (isInNet(ip, '113.8.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '113.56.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '113.58.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '113.59.0.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '113.194.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '113.200.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '113.204.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '113.224.0.0','255.240.0.0')) return 'DIRECT'; else if (isInNet(ip, '114.110.64.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '114.111.0.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '114.141.128.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '114.240.0.0','255.240.0.0')) return 'DIRECT'; else if (isInNet(ip, '115.46.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '115.48.0.0','255.240.0.0')) return 'DIRECT';else if (isInNet(ip, '115.85.192.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '116.2.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '116.90.184.0','255.255.248.0')) return 'DIRECT'; else if (isInNet(ip, '116.95.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '116.112.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '116.116.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '116.193.32.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '116.199.128.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '116.214.32.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '116.255.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '117.8.0.0','255.248.0.0')) return 'DIRECT';else if (isInNet(ip, '117.106.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '117.112.0.0','255.248.0.0')) return 'DIRECT'; else if (isInNet(ip, '117.120.64.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '117.121.128.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '117.122.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '118.67.112.0','255.255.240.0')) return 'DIRECT'; else if (isInNet(ip, '118.72.0.0','255.248.0.0')) return 'DIRECT';else if (isInNet(ip, '118.80.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '118.88.32.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '118.88.64.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '118.212.0.0','255.255.0.0')) return 'DIRECT'; else if (isInNet(ip, '119.4.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '119.15.136.0','255.255.248.0')) return 'DIRECT'; else if (isInNet(ip, '119.18.208.0','255.255.248.0')) return 'DIRECT'; else if (isInNet(ip, '119.32.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '119.36.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '119.37.0.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '119.37.128.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '119.38.128.0','255.255.192.0')) return 'DIRECT'; else if (isInNet(ip, '119.39.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '119.40.128.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '119.42.0.0','255.255.224.0')) return 'DIRECT'; else if (isInNet(ip, '119.48.0.0','255.248.0.0')) return 'DIRECT';else if (isInNet(ip, '119.62.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '119.108.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '119.112.0.0','255.248.0.0')) return 'DIRECT'; else if (isInNet(ip, '119.162.0.0','255.254.0.0')) return 'DIRECT'; else if (isInNet(ip, '119.164.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '119.176.0.0','255.240.0.0')) return 'DIRECT'; else if (isInNet(ip, '119.248.0.0','255.252.0.0')) return 'DIRECT'; else if (isInNet(ip, '120.0.0.0','255.240.0.0')) return 'DIRECT';else if (isInNet(ip, '120.31.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '120.92.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '120.132.0.0','255.255.128.0')) return 'DIRECT'; else if (isInNet(ip, '121.16.0.0','255.248.0.0')) return 'DIRECT';else if (isInNet(ip, '121.24.0.0','255.252.0.0')) return 'DIRECT';else if (isInNet(ip, '121.28.0.0','255.254.0.0')) return 'DIRECT';else if (isInNet(ip, '121.30.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '121.31.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '121.51.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '121.52.208.0','255.255.240.0')) return 'DIRECT'; else if (isInNet(ip, '121.70.0.0','255.255.0.0')) return 'DIRECT';else if (isInNet(ip, '121.89.0.0','255.255.0.0')) return 'DIRECT';。

相关文档
最新文档