The 2015 Arctic Energy Summit is a multidisciplinary event expected to draw several hundred industry officials, scientists, academics, policy makers, energy professionals and community leaders together to collaborate and share leading approaches on Arctic energy issue.
The 2015 Arctic Energy Summit "Security and Affordability for a Resilient North" is organized 28-30 September 2015 in Fairbanks, Alaska at the Carlson Center.
Beyond the hype of an increasingly changing and busy Arctic stand communities and businesses working hard to ensure the lights are on. While the development of rich natural resources that support northern economies grab headlines, policy makers in the North know the struggle to build critical infrastructure, invest in education, and protect a healthy environment.
Join community, business and political leaders from the eight Arctic nations, subject matter experts from around the world, and local traditional knowledge holders as we explore best practices – whether emerging technologies or innovative policy – and ways to leverage of public and private investment to help address these challenges. The Summit is highly participatory and interactive, with your participation resulting in outcomes delivered to the Sustainable Development Working Group of the Arctic Council during the U.S. Chairmanship.
Visit the conference website to register or learn more.


Companies may have migrated to the cloud but it remains vital to sync an on-premise active directory (AD) and the Azure Active Directory (Azure AD). This association permits on-premise network computers to access virtual environments in Azure and conversely cloud-based applications to access on-premise devices.
Azure AD's most popular feature is for businesses integrating on-premises AD domain with applications running in the cloud and users connecting through the internet. The biggest benefit of synchronization is enabling users to access different resources on both on-premise and cloud environments with just a single set of sign-on credentials. Let's look at the services each type of AD provides and why syncing them is essential.
On-premise AD and Azure AD each have different types of oversight and management. AD provides access via authentication and authorization to manage enterprise directories and on-premise resources like applications, printers, and file services. It employs protocols like Kerberos for user authentication and LDAP to interact with resources. It was not, however, designed to control web-based internet services.
Azure AD, on the other hand, uses an entirely different set of protocols (RESTful interfaces) designed to support web-based services, and offers cloud-based identity and access management capabilities through protocols such as SAML and OAuth 2.0. Azure AD provides a service-based approach to Active Directory that is hosted in Azure in the cloud, but also integrates with the on-premise active directory.
Most organizations will not choose one AD approach over the other, but instead they will incorporate both.
As organizations move infrastructure to the cloud, it is essential they integrate on-premise network computers with their Azure virtual machines by providing single identity functionality for users to access cloud applications. Azure AD Connect, the successor to DirSync and Azure AD Sync, is now the only directory synchronization tool supported by Microsoft. It integrates an on-premises AD with Azure AD by managing user and group accounts, linking client computers, and incorporating identity management into applications by implementing single identity and multifactor authentication.
By utilizing Azure AD Connect, systems administrators replicate on-premise AD to Azure AD, so the two different security principals maintain the same password. This means the identical password can be used for on-premises AD and Azure AD achieving single identity.
The next item in syncing the two active directories is to leverage federation between Azure AD and on-premise AD. When a user authenticates against services that leverage Azure AD, the actual authentication is redirected to on-premise AD and then a token is passed back to the Azure AD service. The token message includes the user privileges applied by the cloud service to authenticate that user.
After combining an on-premises AD with Azure AD by setting up directory synchronization and federation, Azure AD essentially becomes a federation hub used to authenticate internet-based services and countless other applications already linked with Azure AD. This enables users to sign on with their AD credentials to seamlessly access applications and internet services.
Another benefit of utilizing Azure AD is to tear down the rigid AD hierarchy of setting up an organization that contains groups of users. This compartmentalization is not flexible enough to meet the requirements of contemporary SaaS solutions.
Many organizations use external cloud-based services such as Salesforce or Dropbox.. These services do not connect to the on-premise AD making it difficult for a system administrator to effectively manage user privileges and identities.
In addition, if company applications are hosted partly on-site and partly in Azure, there may be latency issues sending authentication requests from Azure back to an on-premise network. Implementing directory and identity services in Azure can reduce these system delays.
To sync Azure virtual machines to an on-premise network, configure a site-to-site VPN. There are three phases in creating the virtual network and adding virtual machines in Azure: Configuring an on-premise network with a route that points to and directs traffic to the virtual network; creating the virtual network in Azure; and installing and configuring Azure AD Connect. Follow this procedure to connect an on-premises network to a Microsoft Azure virtual network.
Syncing an on-premise AD with Azure AD leverages existing on-premise infrastructure while taking advantage of the federation and authentication of Microsoft Azure cloud services. This, in turn, allows organizations to provide users with a common identity across on-premise and cloud-based services.
This make those users more productive by simply utilizing single sign-on to access both on-premise and cloud services and applications. For system administrators, multi-factor authentication provides conditional access based on application, device, user identity, network location, and many other options. Finally, for application developers, apps can be created with a common identity model and then integrated into either on-premise AD or Azure AD for cloud-based applications.


A stylish programmable LED suitable for growing all Corals. Looks like an Apple product.60 watts for aquariums from 50 to 240 liters. The new Micmol Aqua Pro color Generation 2 features a 1.8 inch thin uni-body enclosure, carved from a single solid block of aluminium. Created by computer controlled CNC for numerical engineering precision. Inside and out we make use of environmentally friendly materials to minimize the environmental footprint. You have never seen an aquarium light like quite like this one, built to make any aquarium owner proud. A removable panel at the bottom makes cleaning inside completely painless. Once you're inside you will see how clean and organized the new Micmol Aqua Pro color is. It also features a ultra silent cooling fan that you will barely hear when running.


text:
Home All issues Volume 592 (August 2016) A&A, 592 (2016) A128 Full HTML
Volume 592, August 2016
Numerical methods and codes
2. Asp-Clean2004 algorithm
3. Asp-Clean2016: An ...
4. Numerical experiment ...
Efficient implementation of the adaptive scale pixel decomposition algorithm
L. Zhang1,2,3, S. Bhatnagar2, U. Rau2 and M. Zhang1,4
1 Xinjiang Astronomical Observatory, Chinese Academy of Sciences, 830011 Urumqi, PR China
e-mail: zhangli@xao.ac.cn
2 National Radio Astronomy Observatory, Socorro 87801, NM, USA
e-mail: sbhatnag@nrao.edu; rurvashi@nrao.edu
3 University of Chinese Academy of Sciences, 100080 Beijing, PR China
4 Key Laboratory of Radio Astronomy, Chinese Academy of Sciences, 830011 Urumqi, PR China
Accepted: 20 June 2016
Context. Most popular algorithms in use to remove the effects of a telescope's point spread function (PSF) in radio astronomy are variants of the CLEAN algorithm. Most of these algorithms model the sky brightness using the delta-function basis, which results in undesired artefacts when used to image extended emission. The adaptive scale pixel decomposition (Asp-Clean) algorithm models the sky brightness on a scale-sensitive basis and thus gives a significantly better imaging performance when imaging fields that contain both resolved and unresolved emission.
Aims. However, the runtime cost of Asp-Clean is higher than that of scale-insensitive algorithms. In this paper, we identify the most expensive step in the original Asp-Clean algorithm and present an efficient implementation of it, which significantly reduces the computational cost while keeping the imaging performance comparable to the original algorithm. The PSF sidelobe levels of modern wide-band telescopes are significantly reduced, allowing us to make approximations to reduce the computational cost, which in turn allows for the deconvolution of larger images on reasonable timescales.
Methods. As in the original algorithm, scales in the image are estimated through function fitting. Here we introduce an analytical method to model extended emission, and a modified method for estimating the initial values used for the fitting procedure, which ultimately leads to a lower computational cost.
Results. The new implementation was tested with simulated EVLA data and the imaging performance compared well with the original Asp-Clean algorithm. Tests show that the current algorithm can recover features at different scales with lower computational cost.
Key words: methods: data analysis / techniques: image processing
Radio interferometers measure the spatial coherence of the electric field (Thompson et al. 2001) in the Fourier domain. Owing to incomplete sampling in the Fourier plane, the telescope's point spread function (PSF) has wide-spread sidelobes. The true sky brightness is convolved with this PSF, which limits the imaging to no better than a few 100:1 in the dynamic range.
The CLEAN algorithm (Högbom 1974) and its variants (Clark 1980; Schwab & Cotton 1983) have so far been the most popular algorithms in use to remove the effects of the PSF. Most of these algorithms model the sky brightness as a collection of delta functions, with an implicit assumption that the sky is composed of several well-separated point sources. As such, this approach works well for fields dominated by unresolved sources. With the increase in sensitivity of modern radio telescopes, low-level extended emission is often detected in many fields, particularly at low frequencies. Accurate deconvolution of extended emission is an important problem, especially with the sensitivity of new telescopes. Recently, scale-sensitive methods have been developed to mitigate artefacts induced by the original CLEAN algorithm when used to deconvolve extended emission (Bhatnagar & Cornwell 2004; Cornwell 2008; Rau & Cornwell 2011). These scale-sensitive algorithms have been shown to have better performance than scale-insensitive algorithms in recovering extended emission.
The Multi-Scale CLEAN (MS-Clean) algorithm (Cornwell 2008) uses a matched-filtering technique to find the components. It decomposes a sky image into a set of fixed scales, such as tapered and truncated paraboloids. The Asp-Clean algorithm was proposed by Bhatnagar & Cornwell (2004); here the scales are determined adaptively through a fitting procedure and heuristics are developed to limit the set of scales (active set) that need to be fitted during any given iteration. Compared to MS-Clean, the Asp-Clean algorithm gives better imaging performance, but at the cost of a significant increase in computing time.
In this paper, we propose an efficient implementation that significantly reduces the computational cost while keeping the imaging performance comparable to the original Asp-Clean algorithm (referred to as Asp-Clean2004 in the rest of the text). This is possible because the PSF sidelobes of modern wide-band telescopes with excellent coverage of the uv-plane for continuum imaging are significantly reduced. This allows us to approximate the PSF as a single Gaussian. Then the convolution in the objective function of the iterative fitting (using Levenberg-Marquardt (LM) minimization, Marquardt 1963) can be removed. These convolutions are performed through expensive fast Fourier transformation (FFT)-based approach in the Asp-Clean2004 algorithm. With typically large numbers of minimization iterations required, FFT-based convolution was responsible for the high computing cost of the Asp-Clean2004 implementation. Our current approach, referred to as Asp-Clean2016 in the text below, can be thought of as an extreme case of the approximations used in the Clark CLEAN (Clark-Clean) algorithm (Clark 1980), where the full PSF is approximated by a PSF-patch that only includes the highest sidelobe. As the highest sidelobe becomes increasingly smaller with modern wide-band telescopes, Asp-Clean2016 ignores the sidelobes of the PSF entirely. We show that this still leads to convergence and the total runtime is significantly reduced, even if it is at the expense of a slightly larger number of iterations.
We recall the basics of the Asp-Clean2004 algorithm in Sect. 2, while the Asp-Clean2016 algorithm is described in Sect. 3. Numerical experiment and comparisons are presented in Sect. 4, and we summarize our results in Sect. 5.
In the image reconstruction problem, the dirty image Idirty can be expressed as (1)where B is the PSF, Itrue is the true image, Inoise is the noise convolved by the PSF and ⋆ is the convolution operator. One goal of imaging algorithms is to remove the effects of the PSF. In practice, a model with a limited number of components is used to approximate the true image, (2)where the model image , is the ith image component, ϵ is the error between the true image and the model image, and L is the number of components used to approximate the true image. In scale-insensitive algorithms, is a delta function. The true sky, including any extended emission, is thus modelled as a collection of delta functions, which leads to residuals at levels much higher than the thermal noise limit of modern telescopes, as shown by various authors (including Bhatnagar & Cornwell 2004). The primary limitation of the imaging performance of scale-insensitive algorithms is that their models cannot represent the correlation between pixels containing extended emission. This is in conflict with the fundamental assumption underlying scale–insensitive algorithms that each pixel in the image must be independent. The Asp-Clean2004 algorithm tries to solve the deconvolution problem by adaptively determining the scales in various parts of the image by fitting the largest possible scale locally using the following procedure:
Determine the initial values of the scale by smoothing theresidual image with a few Gaussian beams, then identify the peakamong the smoothed images and use the widthof the Gaussian as the initial guess.
Refine the initial values with the LM minimization algorithm to determine the best model, , that fits the data locally.
Update the residual image as .
Repeat steps 1–3 till one of the stopping criteria is satisfied. The stopping criteria can be the total number of iterations or a estimated noise threshold.
As mentioned above, step 2 makes the component scales adaptive (i.e. they are not fixed and pre-determined), while the component scales are fixed and pre-determined in MS-Clean and its variants. The minimization algorithm in step 2 minimizes the objective function χ2, which is given by (3)where ∥ ∥ 2 is the Euclidean norm. In Eq. (3), there is a convolution operation between B and . In a typical function minimization, the objective function is evaluated many times for each fitted scale. The FFT-based convolution used in the Asp-Clean2004 algorithm dominates the computational cost. For an N-pixel image, the fast convolution includes two FFTs, one iFFT, and N multiplication, where the computational complexity of an FFT is about Nlog 2N (Gonzalez & Woods 2010). As such, the computational complexity of a convolution is N(3log 2N + 1) for an N-pixel image. For M evaluations of the objective function, the computational complexity is MN(3log 2N + 1) when solving for a single component. While the Asp-Clean2004 reconstruction gives good results, it is limited by the high computational cost.
3. Asp-Clean2016: An efficient implementation of Asp-Clean2004
As is well known,a two-dimensional Gaussian function g1(a1,x1,y1,ω1) that is convolved with another two-dimensional Gaussian function g2(a2,x2,y2,ω2) results in a new two-dimensional Gaussian function g3(a3,x3,y3,ω3), where ai,xi,yi and ωi are the amplitude, position (xi,yi), and width of Gaussian function gi, respectively. The Fourier convolution theorem states that if the parameters of the convolved result (e.g. g3) and a Gaussian function (e.g. g1) are known, the parameters of another Gaussian function (e.g. g2) can be analytically computed.
We therefore use the objective function (4)where is a Gaussian containing a model component whose parameters (amplitude aic, location xic,yic and width ωic) needs to be determined by optimization (using the LM minimization). After converging to the solution of , the underlying component that models the emission is determined by analytically deconvolving the PSF (approximated as a single Gaussian) as (5)where ωi, ωic, ωb are the widths of , and the main lobe of the PSF, respectively. The amplitude αi that corresponds to the is calculated by the equation (6)where αb and αic are the amplitudes of the Gaussian beam approximated from the PSF and , respectively. As in other algorithms, a loop gain is used before the component is added to the model image. In Eqs. (5)and (6), the αb and ωb of the PSF are fixed, and changes of αi and ωi follow from any adjustments of αic and ωic. Here we would like to point out similarities between our approximation of the PSF by a single Gaussian (effectively ignoring all levels of the PSF sidelobes) and use of an approximate PSF where only the highest near sidelobe of the PSF is included in a similar step as in Clark-Clean. The difference is that our algorithm uses this approximation to the extreme in the estimation phase of the model components, while Clark-Clean uses it in the subtraction step in a minor cycle to determine the next highest peak in the residual image.
Initial values are important to compute an optimal component. In many tests, we found that good initial values that are closer to the optimal component can significantly reduce the iteration counts of the minimization algorithm to find the optimal component. In other words, good initial values can significantly reduce the computational time. As in the Asp-Clean2004 algorithm, good initial values can be obtained by smoothing the current residual image first and then finding the parameters that correspond to the global peak among the smoothed residual images. Smoothing is computed by a convolution, which has the effect of increasing the computational cost. However, when deconvolving PSF-sized features, the peak of the last residual image and the scale of the main lobe of the PSF can be directly used as the initial values of the parameters. Then the simple method can be triggered to reduce the computational cost. In the Asp-Clean2016 algorithm, the simple method is used only when the area of the optimal component in the last iteration is smaller than 5% of the area of the initial guess in the last iteration. After this, the smoothing method is used again until the condition of using the simple method is met. In practice, there are a large number of small scales in image decomposition. The modified scheme not only retains the reconstruction quality, but also reduces the computational cost.
4. Numerical experiment and comparison
We tested the Asp-Clean2016 algorithm and compared it with the Asp-Clean2004 algorithm using simulated L-band EVLA data in the B-configuration1, with a bandwidth of 1 GHz and 32 channels. The observation time was six hours. All simulations were made using the CASA software2. The robust-weighted PSF is displayed in Fig. 1. The maximum negative sidelobe of the PSF was −0.068 (the peak value of the PSF is normalized to 1). The full width at half maximum (FWHM) of the main lobe of the PSF was about 2′′, while the resolution of the images was 1′′.
Robust-weighted PSF in the range −0.068 to 1.0 with the logarithmic scaling (CASA scaling power cycles =−1.4).
Results of the M 31 image from the Asp-Clean2016 algorithm: a) the original image; b) the dirty image with a robust weighting function; c) the reconstructed model image; and d) the corresponding residual image.
We tested the Asp-Clean2016 algorithm on the M 31 image with robust weighting applied. The reconstructed results are displayed in Fig. 2. The original image is shown in Fig. 2a, while the dirty image is displayed in Fig. 2b. Artificial Gaussian noise was added to the simulated visibilities, which resulted in a noise RMS of 5×10-5 Jy in the dirty image. The loop gain used in the reconstruction was 0.35. Comparing the original image in Fig. 2a, the reconstructed image, which has about 900 components (as shown in Fig. 2c), can reconstruct various scales well.
Models and residuals of the M 31 image from the Asp-Clean2004 and Asp-Clean2016 algorithms: a) the Asp-clean2004 model image; b) the Asp-Clean2016 model image; c) the Asp-Clean2004 residual image; and d) the Asp-Clean2016 residual image. The model images and the residual images are displayed in the same respective data ranges.
We found that the reconstructed results of Asp-Clean2016 and Asp-Clean2004 are comparable (e.g. see Fig. 3). In Fig. 3 the fundamental reason for the difference between the model (a) and (b) is that image reconstruction in interferometric imaging is non-unique. In other words, infinite numbers of image models will fit the data equally well. Two different algorithms will rarely produce the same set of image model components. However, they both should fit the data well. In Tables 1 and 2 we show that the amplitude range and the total reconstructed model flux from the Asp-Clean2016 algorithm is closer to the original image. However, the Asp-Clean2004 residual image is more noise-like and includes fewer correlated structures. From the histogram (see Fig. 4) of the residual images, we can see that the residual noise profiles of Asp-Clean2004 and Asp-Clean2016 are very close to each other and also very close to the input Gaussian noise. This shows that the new algorithm improved the computing efficiency without significant degradation in reconstruction quality. In all, the results of the Asp-Clean2016 results are comparable to those of the Asp-Clean2004 algorithm, but the Asp-Clean2016 algorithm had a faster convergence rate. Table 3 shows that the Asp-Clean2016 algorithm converged about 20 times faster in the test.
Model comparison between Asp-Clean2004 and Asp-Clean2016.
Residual comparison between Asp-Clean2004 and Asp-Clean2016.
Numerical comparison between the Asp-Clean2004 and Asp-Clean2016 algorithms.
To compare the performance of the Asp-Clean2004 algorithm and the Asp-Clean2016 algorithm with different weightings, we simulated the M 31 image with uniform, natural, and robust weightings, respectively. The image sizes were the same: 256×256 pixels. The loop gain was 0.35 and other parameters were the same. The numerical results are included in Table 3. Different weightings in the spatial frequency domain result in different PSFs in the spatial domain, which in turn affects structures in the dirty image. However, the Asp-Clean2016 requires approximating the PSF as a Gaussian function. Obviously, the approximation is more effective when the PSF includes weaker sidelobes. Thus, for the Asp-Clean2016 algorithm, the convergence speed with a uniform weighting was faster than with a natural weighting under the same parameters. This is also partly because the performance of the minimization algorithm differs between dirty images. Table 3 shows that the total runtime of Asp-Clean2004 is 20 or more times longer than that of Asp-Clean2016. The mean one-iteration runtime ratios, which are defined as the ratio of total runtime and total numbers of iterations, are higher than 40 in this test. In other words, the mean one-iteration runtime of Asp-Clean2004 is 40 times longer than that of Asp-Clean2016. When reconstructing the 512×512 M 31 image, the Python code for Asp-Clean2016 took several minutes using a typical computer (Intel(R) Core(TM) i7-3770 CPU @3.4 GHz, 4.00 GB RAM). After it is implemented with C++, the runtime is expected to be much shorter.
Histogram of the residual images. "FittedOri" is a Gaussian fitted to the "Original" image noise. "Original" is the added image noise, which is the inverse Fourier transformation of the visibility noise. "Asp04" is the Asp-Clean2004 residual image, and "Asp16" is the Asp-Clean2016 residual image.
In this paper, we approximated the PSF with a single Gaussian, which allowed us to analytically compute the optimal components after a Gaussian was fitted to the current residual image. This greatly reduced the total runtime compared to the 2004 implementation of the Asp-Clean algorithm. We also showed through simulations that there was no significant degradation in the imaging performance when using such an approximate PSF. The approximation we made will only become less of a problem with data produced by future telescopes with tentimes more antennas than current telescopes. This will further reduce the PSF sidelobes, which justifies this analytical approximation of the PSF. In addition, we used a different scheme to determine the initial values of the optimal Gaussian components, which were then passed to the minimization algorithm. In the 2004 implementation, initial values were found by smoothing of the residual image with a few Gaussians of different sizes. The heuristic used in the 2016 implementation can switch between smoothing and the simple method to further reduce the computational cost. Tests showed that Asp-Clean2016 converges faster than Asp-Clean2004, especially for larger images. The current implementation of Asp-Clean2016 is in Python and the CASA package. The Python source code is available on the internet3. Its implementation in the C++ in the CASA package is currently underway.
http://www.aoc.nrao.edu/evla/
http://casa.nrao.edu/
https://github.com/lizhangscience/
We would like to thank the people who develop Python and CASA, which provided an excellent development and simulation environment. L. Zhang thanks for support from the NRAO Graduate Student Internship program. The work was also supported by the National Basic Research Program of China (973 program: 2012CB821804 and 2015CB857100), the Nation Science Foundation of China (11103055) and the West Light Foundation of the Chinese Academy of Sciences (RCPY201105).
Bhatnagar, S., & Cornwell, T. J. 2004, A&A, 426, 747 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
Clark, B. G. 1980, A&A, 89, 377 [NASA ADS] [Google Scholar]
Cornwell, T. J. 2008, EEE J. Selected Topics in Signal Processing, 2, 793 [Google Scholar]
Gonzalez, R. C., & Woods, R. E. 2010, Digital Image Processing, 3rd edn. (Pearson) [Google Scholar]
Högbom, J.A. 1974, A&AS, 15, 417 [Google Scholar]
Marquardt, D. W. 1963, J. SIAM, 11, 431 [Google Scholar]
Rau, U., & Cornwell, T. J. 2011, A&A, 532, A71 [NASA ADS] [CrossRef] [EDP Sciences] [Google Scholar]
Schwab, F. R., & Cotton, W. D. 1983, AJ, 88, 688 [NASA ADS] [CrossRef] [Google Scholar]
Thompson, A. R., Moran, J. M., & Swenson, G. W. 2001, Interferometry and synthesis in radio astronomy, 2nd edn. (Wiley-VCH) [Google Scholar]
Scale sensitive deconvolution of interferometric images — I. Adaptive Scale Pixel (Asp) decomposition
Fused CLEAN deconvolution for compact and diffuse emission
Parameterized reconstruction with random scales for radio synthesis imaging
Faceting for direction-dependent spectral deconvolution
Efficient correction for both direction-dependent and baseline-dependent effects in interferometric imaging: An A-stacking framework

redpajama_set_name: RedPajamaCommonCrawl


Several times a week, when circumstances permit, we take Isaac to a playgroup at the Collingwood Street Center. (The center is a few minutes walk away from our house.) There Isaac can play in a really big space, with children of his own age, and observe behaviors other than mama's and papa's.
Isaac loves things that sparkle, that move, and that are high up. The center's disco ball is all of these. When he sees the ball - especially when it's lighted up by the nearby spotlight and being moved by the motor - he lunges forward and makes a loud 'ba!' sound. It's a challenge just to keep him from leaping into empty space.
One of Isaac's regular watering holes at the center is the wading pool filled with strings of beads and hair curlers. The strings aren't long enough to be a choking hazard and are strong enough not to break under the abuse dealt by the babies.
It's pleasing to see some use for the multi-colored hair curlers in this blow-dry age. The kids absolutely love them, although the parents get a bit nervous when seeing the smallest curlers go into mouths of babes.
Even when replacing socks and moccasins, the wading pool holds its audience. A month ago Isaac would have burst into tears when being manipulated while trying to concentrate on something. Now he barely notices, or notices with a laugh (before he gets back to whatever he was doing).
Let's move on to the other playthings of interest at the center.


For companies managing online, a sites' design is an important aspect to driving sales. But that does not always mean a creative website design is certain to close more sales and generate earnings that is high.
To get your products selling, motivate them to convert in the first place and you have to drive visitors to your own web site. For that, it is essential that your website is optimised for search engines.
Comprehending the tastes of users as well as Search Engine Optimization prerequisites, you should create equilibrium between your website design and Search Engine Optimization. We spoke with expert designers working with some of the best web design firms to ascertain while the SEO of the website negatively affects common mistakes professionals make.
Replacing Essential Content with Pictures: Without a doubt, images, add a web page and a lot of appeal but there is also the possibility to interfere with the effectivity of your Search Engine Optimization.
Search engine spiders tend to read HTML code and textual content only. They categorise (status) pages by text rather than by pictures. It's recommended to use text as an alternative to images to display vital content, links or messages. Add alt tags with some descriptive text that conveys exactly the same message as the image, if you must use graphics on your own page.
Eye catching splash screens may not appear overly eye- catchy to search engines and can in fact function as a barrier between search engines and your website.
Your sites' usability affects. If it's essential to contain flash somewhere in web site, make sure you're not employing it on the website's content, navigation or other important elements.
Really, frameworks are a website design trend that is gone. On top of that, the users sort of confuse and make navigation a little challenging and nerve-racking.
Sectioning content helps it be difficult for search engines to spot valuable content within your web site or website, destroying the effectivity of the Search Engine Optimization of your website's.
Featuring Pop-Up Ads: More often than not, pop-ups are not relevant and obnoxious. The user experience is not only sabotaged by the intrusive attribute but is also regarded in bad taste by search engines.
While it may be justifiable in some cases to use a number of useful popups that offer irrespirable worth to your own visitors and don't make them feel intruded, they should be normally avoided by you for the benefit of your Search Engine Optimization.
Search Engine Optimization is ignored Website Marketing St Albans by most website designers as they believe it will limit their artistic limits. Designers should work with SEO specialists to create a design that offers a seamless user experience and drives valuable traffic.


Coat Stands, coat rails, and coat hooks for the office and home. Stylish designs in many finishes to match your office interior. Sourced from the UK and Europe to for quality and contemporary design. If you need guidance choosing your products call us and we will be pleased to help you.


text:
Tesla Model Y Takes A Blow From Consumer Reports
Tesla Model Y News
by Gill D on November 21, 2020
Tesla is certainly having a week of highs and lows with Elon Musk's COVID-19 diagnosis, Tesla's move to the S&P 500 in December, Musk being listed as third richest man in the world, and now an unflattering review by the latest release from Consumer Reports.
Consumer Reports is an independent, non-profit organization that reviews consumer products for fair marketplace practice. Yesterday, it released its analysis of SUVs and the Tesla Model Y got an unfavourable rating. In fact, they were quite critical and gave the Model Y a "not recommended" score.
Unfortunately, this sent the Model Y plunging to the bottom of the SUV list. The Model Y is Tesla's latest model that went into production this year and was earmarked to become the best Tesla model especially after Consumer Reports took it out for a test drive and received good ratings. But now things have changed after a survey was done on reliability by owners of the Model Y.
Jake Fisher, Consumer Reports director of auto testing said that owners reported significant problems and while it's fairly common for new vehicles to some have reliability problems, he said that Tesla's issues are unusually bad.
"A car might be great to drive and have all the features you want but all that won't matter to you much if you have to keep going back to the dealer for repairs." Fisher added, "It's some basic stuff they're not getting right, which is disappointing. It's disappointing that body panels are not aligned so they can't even shut the back hatch. It's disappointing the paint has so many problems. You'd think this is stuff they would be able to get right from the start."
Some of the issues reported by Tesla Model Y owners included misaligned body panels, mismatched paint, and dust, debris, and human hair stuck in the paint. The survey results placed the Tesla model second last out of 26 auto brands. The Model Y sits in front of Ford's luxury Lincoln brand, but behind Volkswagen.
With Consumer Reports staff regularly praising Teslas in their reviews, there seems to be a disconnect between the positive reviews of Consumer Reports staff and the poor reliability ratings from its survey of owners.
Fisher also said, "This isn't our judgment, it's [the] judgment of Tesla owners. If the reliability improved, I would be very happy to recommend Teslas. They're satisfying and really fun to drive. They're good for the environment. We hope our feedback helps them improve these problems."
Tesla customers still remain loyal to the EV brand, in spite of the issues raised in the survey. "The exact same people who tell us they love their Tesla are telling us about the problems with their cars," Fisher remarked.
It wasn't just Tesla that got knocked with reliability concerns. Ford's Lincoln range reported issues and the new Ford Explorer SUV version got its fair share of reliability problems that placed Ford as one of the lowest scoring models of both domestic and foreign manufacturers this year.
Owners of the Ford Explorer reported having to have transmission replacements, and experiencing issues with the SUV's drive system, in-car electronics, power equipment as well as engine and body hardware problems. The least reliable vehicles in ranking were Chevrolet's Silverado pickup and the GMC Sierra version. And Toyota lost its top rank position to Mazda.
To date, only the Tesla Model 3 has a recommended rating from Consumer Reports and it is also Tesla's bestselling model.
Tag: Consumer Reports, electric vehicles, EV industry, SUV survey, Tesla, Tesla Model 3, Tesla Model Y
Tesla Model S/3/X/Y Wheel Rim Protector Set
Designed to protect your Tesla wheels, our wheel rim protectors are perfect curb rash guards. On top of that, they bring a vibrant color touch to your car. Finally available for...
Tesla Model 3/Y USB Hub - 5 Ports and Secret Compartment For Dashcam &...
With only 2 USB ports, your Tesla is falling short when it comes to charge and plug your everyday devices. Armed with USB splitters or generic USB Hub you can...
Tesla Model Y Roof Rack- Multi-Installations Ready
Get your Tesla ready for sports and adventures with our roof rack for Model Y. Key Features Free Shipping on all US orders. Transform your Model Y, unlock a new level...


text:
Q: What is the difference between const std::vector and std::vector const? I thought the only way to declare a const<vector> is:
const std::vector<T> v;

A: const applies to the thing to its left, except for when there is nothing on the left then it applies to the thing to its right.
So, const int a=1; and int const a=1; are equal.
const int *b and int const *b are equal (pointer to a constant int), but different to int * const b, which is a constant pointer to a non-constant int.
This applies to all data types, I choose int because it is easier to type than std::vector<T>.

redpajama_set_name: RedPajamaStackExchange


StarCityGames.com - Angry, Angry Dinos!
Okay, let's get this out of the way right from the start. Here's your obligatory Jimmie Walker. Now we can dispense with all the "Dino" puns, no doubt much to the chagrin of Luis Scott-Vargas and Rich Hagon. I suppose I've have to deal with the disappointment.
I'll also tell you that this place, which I know friend of the show and Pro Tour Historian Brian David-Marshall has taken his niece, is fifteen minutes from my house. I might go to get some additional inspiration.
You might notice that, for a tribal deck, the creature count might be a little low. The reason for that is twofold. First, I simply expect more Dinosaurs to come thundering into the picture in Rivals of Ixalan. Second, Gishath is expensive to cast. If it gets killed once or twice, we'll need other weapons in our arsenal, so buffing up some of the other creatures with some of those Equipment cards will be one of our paths to victory. The first look for this deck, however, is to strongly focus on the commander.
We're going to try to keep Gishath alive with Hammer of Nazahn and then deal enough damage each turn to get at least one Dinosaur onto the battlefield. Said commander damage will start to pile up, even if we're not going full Voltron, plus it creates other things to worry about—namely, more big Dinosaurs. The other Equipment, Sword of Fire and Ice plus Sword of Feast and Famine, do enough in their own right to warrant inclusion—and looking a little deeper into the library isn't going to hurt. Savage Beating is in the deck specifically to go with Gishash, both to get a second trigger and to set up possible one-shot commander damage kills.
The wheel around which everything stems is the Enrage mechanic, even if that's the non-keyworded version of the ability, such as on Fungusaur or Stuffy Doll. The Enrage suite takes into account the Dinosaurs and other creatures, the cards which deal the damage or make the creatures more difficult to kiil, and a recovery path should things not go the way we want.
Bellowing Aegisaur: Part beatstick and part support, Bellowing Aegisaur makes our team larger and more difficult to kill.
Fungusaur: The original Enrage creature, Fungusaur has been given errata to be a Dinosaur, so it merits inclusion.
Ranging Raptors: Some ramp in a nice little package, Ranging Raptors will not doubt be worth its weight in not just putting lands onto the battlefield but in thinning the deck so that more Dinosaurs come up off Gishath triggers.
Raptor Hatchling: For the most part, this will be a one-shot, but once one of those buffers such as Vanquisher's Banner or Mirari's Wake is online, Raptor Hatchling will start spawning even more friends.
Ripjaw Raptor: I'm thoroughly excited by Ripjaw Raptor, and not just for this deck. I can see it being a fine card draw engine in a number of builds.
Snapping Sailback: There will be a fair number of counters getting generated, so expect Snapping Sailback to get rather large.
Boros Reckoner: You can't much have Blasphemous Act and Chain Reaction (and now Star of Extinction!) in a R/W/X deck without playing Boros Reckoner. Players low on life have to be careful that they don't get killed by someone swinging a large attacker into you. That low life might happen as Boros Reckoner continues to get small bits of damage every now and again.
Spitemare: Boros Reckoner's slightly more expensive older cousin, Spitemare will also get you there.
Stuffy Doll: Ditto (tritto?) for Stuffy Doll, which also has the advantage of not ever going away unless it gets exiled or bounced.
Adaptive Automaton: Not only does it become a Dinosaur, but Adaptive Automaton makes its companions larger.
Aether Flash: One of the first cards I thought of when building the deck because it gets lots of mileage in You Did This to Yourself. Not only will it trigger our Enrage abilities, but it will keep opponents from being able to develop swarms of small creatures. The tokens we create are large enough that we don't have to worry about Aether Flash killing them.
Asceticism: I normally include Asceticism for its hexproof ability. In this case, it's more about regeneration, which means a creature can take damage, trigger Enrage, and still survive. Hexproof is just icing on our thunder lizard cake.
Blasphemous Act: Destroying creatures with damage is an obvious choice for the Enrage suite. In the worst cases—those in which we don't have a recovery option—at least we still get some triggers.
Chain Reaction: Like with Blasphemous Act, Chain Reaction's relatively low casting cost gives us the opportunity to use some of our recovery options as well. Chain Reaction plus Faith's Reward is easily castable on one turn.
Fault Line: Still looking for this to somehow be available in foil. This will especially be valuable if we've gotten Verdant Sun's Avatar online and gained big piles of life.
Fiery Confluence: The little bit of flexibility we get from Fiery Confluence means that we'll be able to, for a reasonably small amount of mana, trigger our Enrage abilities and destroy a few artifacts.
Lightmine Field: Both an offensive and defensive weapon, Lightmine Field offers fine control over Enrage triggers. We can attack with just enough creatures so that the trigger won't kill them (although I suppose we still have to be aware of blocks—but hey, there's another trigger).
Magmaquake: Basically a Fault Line which damages planeswalkers instead of players—but the important part is, of course, creatures.
Mirari's Wake: You can't say enough good things about Mirari's Wake. You also can't complain when it gets blown up.
Powerstone Minefield: Powerstone Minefield is useable on the defensive side of the ball as well, so people are less likely to send meaningless attacks your way.
Scourge of Kher Ridges: Two damage at a time still isn't going to kill most of our Enragers, but I seriously considered Harbinger of the Hunt as a lower-cost replacement. Subterranean Spirit might also be worth a look, although it's not repeatable in a turn. If you want to go the chaos angle, there's Warmonger, but that offers opponents too much control. Scourge of Kher Ridges remains the highest-quality choice.
Star of Extinction: Remember that when a targeted spell no longer has targets it gets countered. Choose the land you want to blow up very carefully, and pay attention to whether or not there's a Wasteland, Strip Mine, or Tectonic Edge on the battlefield.
Thundering Spineback: This might also be one to protect with Hammer of Nazahn, since it can have children.
Vanquisher's Banner: The number of Dinosaurs might (for now) be a little low to get full value out of Vanquisher's Banner's triggered ability to draw cards, but remember you can always draw one by casting the commander.
Angelic Renewal: A serious hidden gem, Angelic Renewal allows you to save a creature with the added bonus of possibly getting another cool enters-the-battlefield trigger. Its low casting cost makes it something you can cast on an early turn to hang around until you need it or cast on the turn that you know the bodies will hit the floor.
Bear Umbra: Another card I expect that we would see way more of in the format, the cool thing about Bear Umbra is that the damage still gets dealt to the creature, triggering all the wonderful things we want to trigger. The whole thing about untapping all your lands is obviously strong, giving you the opportunity to cast twice as much stuff.
Boros Charm: Making all our permanents indestructible right before casting (or in response to) Blasphemous Act is good beats. The damage is still dealt, once again making our triggers happen, but we still get to hang onto the creatures. There might be an outside chance of using Boros Charm's double strike ability to engender a commander damage kill, but I can't see that happening all that often.
Faith's Reward: The obvious scenario is to deal lots of damage (such as with Blasphemous Act or its cousins), get Enrage triggers, then get all your creatures back. Even without that somewhat aggressive play, Faith's Reward is simply protection against a great deal of what happens in the format anyway.
Heroic Intervention, Make a Stand, Rootborn Defenses: Regardless of whatever else they do, all three of these cards are about one thing—making our creatures indestructible so that we can get triggers without worrying about losing our creatures. Like with Faith's Reward, they also have basic value outside of our strategies.
Kindred Boon: Another method of making creatures indestructible. If there were a Myojin that does something the deck wants to do, I'd put that on the list as well.
Lashknife Barrier: It might seem counterintuitive to have Lashknife Barrier in a deck in which we're trying to damage our own creatures, but hear me out. It only prevents one damage, so when we have things like Aether Flash, we get the best of both worlds. Plus, it replaces itself. If you're not playing this card in at least a few of your white decks, I implore you to give it a deeper look.
Yavimaya Hollow: Making regeneration cool since, um, a long time ago, when some of you were very young.
Congregation at Dawn: With Gishath's trigger on the stack, casting (okay, resolving) Congregation at Dawn means you'll get exactly what you want onto the battlefield. I'm comfortable playing it in the deck because there aren't any broken creature combos here. It's not like with having Mike and Trike available. Congregation at Dawn make me think about Lurking Predators, but I simply told myself that I'm playing that card in enough decks that I just don't want to go back to that well again.
Hazoret's Monument: Mostly there for making creatures cheaper to cast, the ability to filter through the deck also has value—although I most often find that if you play all really cool cards, you have trouble wanting to discard them.
Huatli, Warrior Poet: I want to see the situations in which it gets used in play before I make a definitive judgment about Huatli, Warrior Poet. It seems like it fills a nice utility role and the -X ability could lead to game-winning attacks when an opponent has not left back enough creatures, but we'll see.
Rhonas's Monument: Cast a few creature spells in a turn (more cheaply) and suddenly a creature gets immense, which is particularly good when that creature is your commander.
Terastodon: It sounds like it's a Dinosaur, and it provides a small measure of control over noncreature permanents. It'll probably come out in favor of new Dinosaurs from Rivals of Ixalan.
Xenagos, God of Revels: Helping Gishath to get to some commander damage kills (not to mention a larger selection of Dinosaurs) as well as just being an extremely strong combat element on its own.
Mark of Asylum: Along the lines of Lashknife Barrier, I thought about it and came to the conclusion that it might provide too much protection for the team.
Mogg Maniac: Part of the Boros Reckoner idea, it didn't make the cut because it can't survive the small stuff in order to get to the bigger.
Ravenous Daggertooth: Gaining the two life is fine, but with space at a premium and only the two toughness, it didn't have enough punch to be included.
Teferi's Protection: It's starting to look like this is an auto-include in all white decks due to its low casting cost and complete protection. Which is, of course, a reason to not include it.
True Conviction: Double strike with Gishath is wonderful, as it gives us a second trigger. As with other cards, it simply was a victim of space. If I'm really jonesing to play it, I'd probably swap out one of the three instants that give indestructible. We'll see how the deck performs for a bit before considering putting it in.
Angry, Angry Dinos looks like it will quickly become a fun deck to play when I want to go full Timmy. It stars every kid's dream creature and captures the format's battlecruiser mentality. I'll do my best to not make a bunch of silly noises when I send creatures thundering into the Red Zone.
This week's combo comes from Coco on the official Commander forums. It involves starting with Shapers' Sanctuary, Spellskite and Horizon Chimera. Cast Saheeli's Artistry, making a copy of Spellskite and Horizon Chimera. The next time an opponent plays a spell or an ability that could target Spellskite, change the target to either Spellskite. Shapers' Sanctuary triggers; you draw a card and subsequently gain two life. You can then use that life to change the target to the other Spellskite. Repeat until you're tired.
This week's Deck Without Comment is Lavinia Blinks.
Adun's Toolbox; Animar's Swarm; Ikra and Kydele; Karrthus, Who Rains Fire From The Sky; Demons of Kaalia; Merieke's Esper Dragons; Nath of the Value Leaf; Rith's Tokens; The Mill-Meoplasm; The Altar of Thraximundar; The Threat of Yasova; Zombies of Tresserhorn.


text:
Book Review – Tom McCarthy's C
I'm only four weeks in and already the 52-books-in-52-weeks project is starting to get overwhelming. This beast of a novel didn't help much. Tom McCarthy's C (2010) is a doozy:
Let's start off with the hype surrounding this book. Slate Magazine said it was "The Future of Fiction," and The Guardian said it was "steeped in both high modernism and continental philosophy." C (like Open City, which I reviewed a few weeks ago) is the sort of book that you're more likely to find in a literature prof's office than a beach or airport terminal. This, in my opinion, is not a positive trait.
Partitioned into four sections (Caul, Chute, Crash, and Call), this historical novel follows the adventures of Serge Carrefax. The setting, that of early 1900s Europe, allows the bizarre to become almost ubiquitous as we learn about everything from silkworm cultivation to the history of deaf education to colonial Egypt in painstakingly well-researched detail. Serge flies as an observer for the Royal Air Force during the First World War, a job which he takes about as seriously as he takes anything else in the novel (i.e. not at all):
"Narrative, Carrefax." The recording officer, seated behind a table with a stack of papers at the hangar's exit, stops him.
"What?" asks Serge, taking his glove off and wiping his hand across his face.
"Flight narrative for Corps HQQ. I have to remind you every time."
"Oh," says Serge. "Well…" His had has gathered a thick wedge of tar. He looks at it, then up at the recording officer. "We went up; we saw stuff; it was good."
As a character, Serge is almost a zombie in this novel. He's completely flat, and things just seem to happen to him in a very passive way. He doesn't move. He is moved. The plot also has a real flat quality to it – it's difficult to find a narrative thread that might pull the reader from one end to the other. But what McCarthy lacks in plot and character he makes up for with great prose and a phenomenal attention to detail. What I mean to say is that it's post-modern as hell. Three hundred pages of present continuous verb tense should have been my first clue.
It's hard to know what to say about a book that functions like this one. Do I care what happens to Serge? At no point in the novel. Am I interested in him as a character? There's nothing to be interested in. Do I get tired of seeing proper nouns that start with the letter C cropping up every 2 pages. Of course. But that's the type of reader I am. I don't necessarily care at all about "the future of Avant-garde fiction" (someone should care about this by the way, because it sounds like it might be important). I gravitate toward bread and butter novels. You know, characters and plots and stuff – so this just wasn't for me. At all.
Oh, there's a scene where Serge does a bunch of blow then goes up in a plane and… chokes his chicken over the German trenches. None of the other (rave) reviews I've seen have mentioned this, but I can't talk about the novel without mentioning it. That is probably the most illustrative difference between me and those other reviewers.
I give it one honorary literary criticism degree from Northwestern University (arbitrarily).
Previous Previous post: SAVE THE SKATE PARK! Old School Edition
Next Next post: Off the Grid:Taste of Paradise, University Falls


text:
28/02/2015 1:21 PM IST | Updated 15/07/2016 8:25 AM IST
Why AB De Villiers Deserves To Be In The Pantheon Of Top 10 Batting Legends
On Friday last, I've had to tweak my list of the Top 10 batsmen of all time. I suspect this would have been true of most people. AB De Villiers's astonishing 162 not out against the West Indies made this imperative.
Ayaz Memon Sports journalist and commentator
South Africa's AB De Villiers hits the ball to the boundary during their Cricket World Cup Pool B match against the West Indies in Sydney, Australia, Friday, Feb. 27, 2015. (AP Photo/Rick Rycroft)
A favourite pastime amongst cricket lovers of all ages is to debate on who is the best batsman/bowler/player in the history of the game.
Since the matter is so subjective, consensus is not easy. Despite the near 150 year sweep of the sport in terms of time, changes in these lists remain infrequent; which is why they are also so significant.
"Three who figure in everybody's list I've been acquainted with -- Sir Don Bradman, Sir Garfield Sobers and Sir Viv Richards."
It was not just the fact of making another century or the frenetic hitting, but the utter control and imagination in constructing an innings like that. There was both method and genius in the effort which makes De Villiers nudge ahead not just of other batsman playing currently, but barring very few from the past too.
Who makes the cut to be on the list of Top 10 batsmen is always contentious, though a handful I reckon would find universal favour. Three who figure in everybody's list I've been acquainted with -- Sir Don Bradman, Sir Garfield Sobers and Sir Viv Richards.
Bradman, for reasons that hardly need to be explained beyond stating that his average of 99.94 might never be achieved again, is unarguably first on everyone's list. He was a run machine like none before or after. Even in his worst series, he averaged 56-plus! Following his incredible exploits in the 1930s and 40s, Bradman became - and remains - the Bhishma Pitamah of batsmanship so to speak.
Sobers was not only the greatest cricketer of all time (according to me) but with an average in excess of 57, also a specialist batsman with few equals - then and now. If he wasn't also occupied with bowling, or imbued with an abundance of amateur spirit, or if he had played for statistical achievements, his career figures would have been far better. But then he wouldn't have been Sobers as we know him!
The relatively more contemporary Viv Richards comes some way behind both Bradman and Sobers where Test career average is concerned. But he batted with such power, glory and intrepidity that bowlers would fear his very entry into the playing arena. His career coincided with the rapid growth in limited overs cricket, and Richards showed himself to be a master and blaster in both formats.
"How difficult the task is for the fan, expert and cricket academic alike can be gauged when you gloss over names even of the last three or four decades: Lloyd, Gavaskar, Miandad, Greg Chappell, Greenidge, Border, Steve Waugh, Tendulkar, Lara, Ponting, Dravid, Kallis, Inzamam, Laxman, Sangakkara, Amla to name just some."
There is understandable crush and jostle to fill up the seven other spots because of several outstanding batsmen in the long history of the game, differentiated in such debates by batting average, significance of performances, nuance of technique and/or temperament.
How difficult the task is for the fan, expert and cricket academic alike can be gauged when you gloss over names even of the last three or four decades: Lloyd, Gavaskar, Miandad, Greg Chappell, Greenidge, Border, Steve Waugh, Tendulkar, Lara, Ponting, Dravid, Kallis, Inzamam, Laxman, Sangakkara, Amla to name just some.
Go further down in time to the origins of cricket and this list rapidly swells to more than 100 batsmen of excellent credentials. How does one narrow down the choices then, and why does De Villiers make the cut in my list?
There are three aspects of batting that define greatness. Technical virtuosity is a strong criteria, but not the pre-eminent one as was believed till not too long back. Thinking around the game has evolved considerably from this premise, especially since limited overs cricket has come into existence.
Prolific run-getting is obviously a very determinant, and this goes hand-in-hand with quality of strokeplay to create the batting persona. A batsman who appeals to fans, experts and statisticians alike gets to be on a pedestal all his own. This acquires even greater heft if he can make his efforts more productive by winning matches.
" He is the bulwark, the saviour, opportunist, the destroyer depending on the situation, relying as much on immense self-belief, imagination and ambition to excel as on superb technique."
Over the past few years, De Villiers has ticked all these boxes. He averages in excess of 50 in both Tests and ODIs which is stupendous in itself, but it is the manner in which he bats that sets him apart.
Across formats, De Villiers is quite simply the most creative, versatile, dependable and destructive batsman in the sport today. He can save or win a Test match; he is also the best finisher in limited overs cricket. He is the bulwark, the saviour, opportunist, the destroyer depending on the situation, relying as much on immense self-belief, imagination and ambition to excel as on superb technique.
After De Villiers's incredible knock against the West Indies, Sunil Gavaskar, who knows a thing or two about using the willow, said that the South African captain was the A, B, C, D...indeed the entire alphabetical order of batsmanship.
Gavaskar was not being facetious. The last couple of years have seen De Villiers become a more-rounded, perhaps the prototype of the most complete batsman that can be in an age where Test, ODI and T20 formats all exist simultaneously.
Which brings me back to the debate over the best batsmen of all time. De Villiers, without doubt, has forced his way into my Top Ten. Only 31, it is conceivable that he could get even better from here if his fitness holds. What will be the pecking order of batsmen by the time he finishes provides the start to a fascinating new debate.
Contact HuffPost India
Photo gallery Top Run Scorers At ICC World Cup 2015 See Gallery
Top Run Scorers At ICC World Cup 2015
MORE: AB de Villiers Cricket World Cup 2015 Sir Don Bradman Sir Garfield Sobers Sir Viv Richards
Five Reasons Why New Zealand Were No Match For Australia In the World Cup Final
Cricket World Cup 2015 Final Preview: Clarke's Swansong
Cricket World Cup 2015: Everything You Wanted To Know About India's Loss To Australia
It Takes More Than Mind Games To Win


The unique sera process of co-extrusion allows combining differently treated ingredients. The ring contains ingredients that are particularly easy to digest and relieve metabolism. The core consists, among others, of essential vitamins, minerals and trace elements for healthy growth and a strong immune system. Additional vitamin C furthermore strengthens disease resistance and reduces sensitivity against diseases.
Below 17°C (63°F), the metabolism of the fish is not fully effective any more. The food must therefore be particularly easy to digest. This is the only way Koi can prepare for winter or start into the year in spring.
sera KOI Professional Spring/Autumn Food considers the special nutritional requirements of Koi and other pond fish at temperatures below 17°C (63°F).
Microbe-Lift/ Mini Pellets Food For Young Fish Under 4" When your little fish deserve the very best! WILL NOT CLOUD WATER LEGACY™ Mini Pellets contains stabilized Vitamin C to help promote proper tissue development.


text:
use gl;
use version::Version;
use version::Api;

use CapabilitiesSource;
use backend::Facade;
use context::Context;
use ContextExt;

use std::{ffi, mem, ptr};
use std::rc::Rc;

use GlObject;
use Handle;

use program::ProgramCreationError;

/// A single, compiled but unlinked, shader.
pub struct Shader {
    context: Rc<Context>,
    id: Handle,
}

impl GlObject for Shader {
    type Id = Handle;

    #[inline]
    fn get_id(&self) -> Handle {
        self.id
    }
}

impl Drop for Shader {
    fn drop(&mut self) {
        let ctxt = self.context.make_current();

        unsafe {
            match self.id {
                Handle::Id(id) => {
                    assert!(ctxt.version >= &Version(Api::Gl, 2, 0) ||
                            ctxt.version >= &Version(Api::GlEs, 2, 0));
                    ctxt.gl.DeleteShader(id);
                },
                Handle::Handle(id) => {
                    assert!(ctxt.extensions.gl_arb_shader_objects);
                    ctxt.gl.DeleteObjectARB(id);
                }
            }
        }
    }
}

/// Builds an individual shader.
pub fn build_shader<F>(facade: &F, shader_type: gl::types::GLenum, source_code: &str)
                       -> Result<Shader, ProgramCreationError> where F: Facade
{
    unsafe {
        let mut ctxt = facade.get_context().make_current();

        if ctxt.capabilities.supported_glsl_versions.is_empty() {
            return Err(ProgramCreationError::CompilationNotSupported);
        }

        if !check_shader_type_compatibility(&mut ctxt, shader_type) {
            return Err(ProgramCreationError::ShaderTypeNotSupported);
        }

        let source_code = ffi::CString::new(source_code.as_bytes()).unwrap();

        let id = if ctxt.version >= &Version(Api::Gl, 2, 0) ||
                    ctxt.version >= &Version(Api::GlEs, 2, 0)
        {
            Handle::Id(ctxt.gl.CreateShader(shader_type))
        } else if ctxt.extensions.gl_arb_shader_objects {
            Handle::Handle(ctxt.gl.CreateShaderObjectARB(shader_type))
        } else {
            unreachable!()
        };

        if id == Handle::Id(0) || id == Handle::Handle(0 as gl::types::GLhandleARB) {
            return Err(ProgramCreationError::ShaderTypeNotSupported);
        }

        match id {
            Handle::Id(id) => {
                assert!(ctxt.version >= &Version(Api::Gl, 2, 0) ||
                        ctxt.version >= &Version(Api::GlEs, 2, 0));
                ctxt.gl.ShaderSource(id, 1, [ source_code.as_ptr() ].as_ptr(), ptr::null());
            },
            Handle::Handle(id) => {
                assert!(ctxt.extensions.gl_arb_shader_objects);
                ctxt.gl.ShaderSourceARB(id, 1, [ source_code.as_ptr() ].as_ptr(), ptr::null());
            }
        }

        // compiling
        {
            ctxt.report_debug_output_errors.set(false);

            match id {
                Handle::Id(id) => {
                    assert!(ctxt.version >= &Version(Api::Gl, 2, 0)||
                            ctxt.version >= &Version(Api::GlEs, 2, 0));
                    ctxt.gl.CompileShader(id);
                },
                Handle::Handle(id) => {
                    assert!(ctxt.extensions.gl_arb_shader_objects);
                    ctxt.gl.CompileShaderARB(id);
                }
            }

            ctxt.report_debug_output_errors.set(true);
        }

        // checking compilation success by reading a flag on the shader
        let compilation_success = {
            let mut compilation_success: gl::types::GLint = mem::uninitialized();
            match id {
                Handle::Id(id) => {
                    assert!(ctxt.version >= &Version(Api::Gl, 2, 0) ||
                            ctxt.version >= &Version(Api::GlEs, 2, 0));
                    ctxt.gl.GetShaderiv(id, gl::COMPILE_STATUS, &mut compilation_success);
                },
                Handle::Handle(id) => {
                    assert!(ctxt.extensions.gl_arb_shader_objects);
                    ctxt.gl.GetObjectParameterivARB(id, gl::OBJECT_COMPILE_STATUS_ARB,
                                                    &mut compilation_success);
                }
            }
            compilation_success
        };

        if compilation_success == 1 {
            Ok(Shader {
                context: facade.get_context().clone(),
                id: id
            })

        } else {
            // compilation error
            let mut error_log_size: gl::types::GLint = mem::uninitialized();

            match id {
                Handle::Id(id) => {
                    assert!(ctxt.version >= &Version(Api::Gl, 2, 0) ||
                            ctxt.version >= &Version(Api::GlEs, 2, 0));
                    ctxt.gl.GetShaderiv(id, gl::INFO_LOG_LENGTH, &mut error_log_size);
                },
                Handle::Handle(id) => {
                    assert!(ctxt.extensions.gl_arb_shader_objects);
                    ctxt.gl.GetObjectParameterivARB(id, gl::OBJECT_INFO_LOG_LENGTH_ARB,
                                                    &mut error_log_size);
                }
            }

            let mut error_log: Vec<u8> = Vec::with_capacity(error_log_size as usize);

            match id {
                Handle::Id(id) => {
                    assert!(ctxt.version >= &Version(Api::Gl, 2, 0) ||
                            ctxt.version >= &Version(Api::GlEs, 2, 0));
                    ctxt.gl.GetShaderInfoLog(id, error_log_size, &mut error_log_size,
                                             error_log.as_mut_ptr() as *mut gl::types::GLchar);
                },
                Handle::Handle(id) => {
                    assert!(ctxt.extensions.gl_arb_shader_objects);
                    ctxt.gl.GetInfoLogARB(id, error_log_size, &mut error_log_size,
                                          error_log.as_mut_ptr() as *mut gl::types::GLchar);
                }
            }

            error_log.set_len(error_log_size as usize);

            match String::from_utf8(error_log) {
                Ok(msg) => Err(ProgramCreationError::CompilationError(msg)),
                Err(_) => Err(
                    ProgramCreationError::CompilationError("Could not convert the log \
                                                            message to UTF-8".to_owned())
                ),
            }
        }
    }
}

pub fn check_shader_type_compatibility<C>(ctxt: &C, shader_type: gl::types::GLenum)
                                          -> bool where C: CapabilitiesSource
{
    match shader_type {
        gl::VERTEX_SHADER | gl::FRAGMENT_SHADER => (),
        gl::GEOMETRY_SHADER => {
            if !(ctxt.get_version() >= &Version(Api::Gl, 3, 2))
                && !(ctxt.get_version() >= &Version(Api::GlEs, 3, 2))
                && !ctxt.get_extensions().gl_arb_geometry_shader4
                && !ctxt.get_extensions().gl_ext_geometry_shader4
                && !ctxt.get_extensions().gl_ext_geometry_shader
                && !ctxt.get_extensions().gl_oes_geometry_shader
            {
                return false;
            }
        },
        gl::TESS_CONTROL_SHADER | gl::TESS_EVALUATION_SHADER => {
            if !(ctxt.get_version() >= &Version(Api::Gl, 4, 0))
                && !(ctxt.get_version() >= &Version(Api::GlEs, 3, 2))
                && !ctxt.get_extensions().gl_arb_tessellation_shader
                && !ctxt.get_extensions().gl_oes_tessellation_shader
            {
                return false;
            }
        },
        gl::COMPUTE_SHADER => {
            if !(ctxt.get_version() >= &Version(Api::Gl, 4, 3))
                && !(ctxt.get_version() >= &Version(Api::GlEs, 3, 1))
                && !ctxt.get_extensions().gl_arb_compute_shader
            {
                return false;
            }
        },
        _ => unreachable!()
    };

    true
}

redpajama_set_name: RedPajamaGithub


text:
New Books & Media
Back The New York Times Hardcover Fiction
The New York Times Hardcover Fiction
1 - Where the Crawdads Sing
Delia Owens · G.P. Putnam's Sons
#1 New York Times BestsellerA Reese Witherspoon x Hello Sunshine Book Club Pick"I can't even express how much I love this book! I didn't want this story to end!"--Reese Witherspoon"Painfully beautiful."--The New York Times Book Review"Perfect for fans of Barbara...
2 - Summer of '69
Elin Hilderbrand · Little, Brown and Company
Follow New York Times bestselling author Elin Hilderbrand back in time and join a Nantucket family as they experience the drama, intrigue, and upheaval of a 1960s summer. Welcome to the most tumultuous summer of the twentieth century! It's 1969, and for the Levin family, the times they...
3 - City of Girls: A Novel
Elizabeth Gilbert · Riverhead Books
From the # 1 New York Times bestselling author of Eat, Pray, Love and The Signature of All Things, a delicious novel of glamour, sex, and adventure, about a young woman discovering that you don't have to be a good girl to be a good person."Life is both fleeting and dangerous, and there...
4 - Untitled: A Thriller
Brad Thor · Atria/Emily Bestler Books
#1 New York Times, #1 Wall Street Journal, and #1 Publishers Weekly bestselling author Brad Thor is back with his most gripping thriller yet!In ancient texts, there are stories about men who struck from the shadows, seemingly beyond the reach of death itself. These men were considered part...
5 - Lost and Found: A Novel
Danielle Steel · Delacorte Press
Lost and Found is an unforgettable new novel from Danielle Steel, whose countless #1 New York Times bestsellers have made her one of America's favorite storytellers.
6 - Evvie Drake Starts Over: A Novel
Linda Holmes · Ballantine Books
From the host of NPR's Pop Culture Happy Hour podcast comes a heartfelt debut about the unlikely relationship between a young woman who's lost her husband and a major league pitcher who's lost his game."Charming, hopeful, and gently romantic . . . Evvie Drake is great company."...
7 - Mrs. Everything: A Novel
Jennifer Weiner · Atria Books
From Jennifer Weiner, the #1 New York Times bestselling author of Who Do You Love and In Her Shoes comes a smart, thoughtful, and timely exploration of two sisters' lives from the 1950s to the present as they struggle to find their places - and be true to themselves - in a rapidly evolving...
8 - Unsolved
James Patterson · Little, Brown and Company
The perfect murder always looks like an accident. FBI agent Emmy Dockery is absolutely relentless. She's young and driven, and her unique skill at seeing connections others miss has brought her an impressive string of arrests. But a shocking new case-unfolding across the country-has left...
9 - On Earth We're Briefly Gorgeous
Ocean Vuong · Penguin Press
Poet Ocean Vuong's debut novel is a shattering portrait of a family, a first love, and the redemptive power of storytellingOn Earth We're Briefly Gorgeous is a letter from a son to a mother who cannot read. Written when the speaker, Little Dog, is in his late twenties, the letter unearths...
10 - The Silent Patient
ALEX MICHAELIDES · Celadon Books
"That rarest of beasts: the perfect thriller. This extraordinary novel set my blood fizzing -- I quite literally couldn't put it down. I told myself I'd just dip in; eleven hours later -- it's now 5:47 a.m. -- I've finished it, absolutely dazzled." -- A. J. Finn, #1 New York...
11 - Whisper Network: A Novel
Chandler Baker · Flatiron Books
"Exciting and sprinkled with razor-sharp insights about what it is to be a woman today, Whisper Network is a witty and timely story that will make you cheer for sisterhood." -- Liv Constantine, USA Today bestselling author of The Last Mrs. Parrish"If only you'd listened to us, none...
About this Award
The New York Times Bestsellers — Hardcover Fiction Source
Ask or Contact Us
Download Audio & eBooks
Anaheim Library Locations
Anaheim Heritage Services
Historic Anaheim Photos
Copyright © 2019 DearReader.com a ReadingHouse company. All Rights Reserved. v3.0-7-g2259a7a


Trixie is a Shepherd / Chow mix that tricked me by jumping into my backyard and adopting me after avoiding animal control for two weeks. She is about 10 years old and still a big fluffy puppy. She has been doing therapy dog work for about 4 years and seems to enjoy it except for the bath part.
She loves to be petted and loves belly rubs along with shining the floor as she rubs her back. She would love to meet you and make you smile and is usually around on Saturdays and sometimes Sundays with her chauffeur Mike.
Don't let that sad look fool you since she is looking for food all the time because if she could talk she would say I haven't been fed in a week. Don't let the fluff fool you.
She has her Canine Good Citizen Award and is a member of Alliance of Therapy Dogs.


text:
The 2004 Buffalo Funds - NAIA Men's Division I  Basketball Tournament was held in March at Municipal Auditorium in Kansas City, Missouri. This was the 67th annual NAIA DI basketball tournament and featured 32 teams playing in a single-elimination format. This was the third year the tournament was held in Kansas City. The 2004 NAIA national championship game featured the #1 ranked Cougars of Mountain State and the #6 ranked Eagles of Concordia University (CA). This match up was a repeat of the 2003 tournament. The Cougars defeated the Eagles 74–70. The other teams that rounded out the NAIA national semifinals were Georgetown College (KY) and University of Mobile, respectively.

Awards and honors
Leading scorer: Zach Moss, Mountain State – in 5 games, Moss scored a total of 138 points, including 54 field goals and 30 free throws, averaging 27.6 points per game
Leading rebounder: Nick VanderLaan, Concordia (CA) – in 5 games, VanderLaan recorded 71 rebounds at 14.2 per game
Most consecutive tournament appearances: 13 – Georgetown (KY)
Most tournament appearances: Georgetown (KY) – 23rd of 28 appearances in the NAIA Tournament

2004 NAIA bracket

  * denotes overtime.

See also
2004 NAIA Division I women's basketball tournament
2004 NCAA Division I men's basketball tournament
2004 NCAA Division II men's basketball tournament
2004 NCAA Division III men's basketball tournament
2004 NAIA Division II men's basketball tournament

References

NAIA Men's Basketball Championship
Tournament
NAIA Division I men's basketball tournament
NAIA Division I men's basketball tournament

redpajama_set_name: RedPajamaWikipedia