<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def interact_GxG(pheno,snps1,snps2=None,K=None,covs=None):
 """ Epistasis test between two sets of SNPs Args: pheno: [N x 1] SP.array of 1 phenotype for N individuals snps1: [N x S1] SP.array of S1 SNPs for N individuals snps2: [N x S2] SP.array of S2 SNPs for N individuals K: [N x N] SP.array of LMM-covariance/kinship koefficients (optional) If not provided, then linear regression analysis is performed covs: [N x D] SP.array of D covariates for N individuals Returns: pv: [S2 x S1] SP.array of P values for epistasis tests beten all SNPs in snps1 and snps2 """

    if K is None:
        K=SP.eye(N)
    N=snps1.shape[0]
    if snps2 is None:
        snps2 = snps1
    return interact_GxE(snps=snps1,pheno=pheno,env=snps2,covs=covs,K=K)