added power iteration