TweetFollow Us on Twitter

Licensing II
Volume Number:9
Issue Number:1
Column Tag:Legal eagles

Issues in Licensing or
Assigning Computer Programs

Your program and the law, Part II.

By Patricia Mayer, Culver City, California

About the author

Patricia Mayer is an attorney practicing entertianment and intellectual property law in Los Angeles. You can reach her care of Xplain Corporation.

I. INTRODUCTION

Welcome to the second, albeit belated, installment of "Your Program and the Law". As promised, I will discuss some things to be aware of if you license your program.

This article is not intended to be all-inclusive or the last word on intellectual property licenses, neither is it intended to teach you to write your own license agreement. However, I hope that when a company hands you their form license agreement, this article will help you spot some of the issues (or at least help you to talk to your lawyer in an intelligent fashion). Obviously, I recommend that you get a lawyer who specializes in computer program licenses to look at any license agreement you enter into. It will be money well spent.

In this article I deal with three types of license agreements: (1) an agreement whereby I license the right to distribute your program, (2) an agreement whereby I license the right to use your program in my business, and (3) an agreement whereby I license the right to make a new program based on your existing program.

II. EXCLUSIVITY

You and I may enter into an agreement whereby you grant me the sole and exclusive rights in your program. That would make sense if the type of contract we are entering into allows me to distribute your program to wholesalers throughout the U.S.

Remember, entering into an exclusive arrangement means that you cannot re-license your program just because you feel that I didn't pay you enough money. In an exclusive license you can't change or add partners after the dance begins. A non-exclusive license would also be appropriate if I wanted to use your technology in my business.

If I just want to use your program as part of a bigger program I am making (i.e., I want to make a derivative work based on your program), you probably do not need to grant me exclusive rights. Indeed, you will want to license your program to various companies who will adapt it to their own needs.

III. TYPE OF LICENSE (I.E., WHAT THE PERSON YOU ARE LICENSING TO CAN DO)

There are all sorts of reasons I may want to license a program from you. My reasons could be as simple as wanting to use it in my office on my computer (at which point we probably do not need a written contract at all), or as complicated as wanting to distribute your program to wholesalers around the world, or as specific as wanting to translate your program for use in my operating system, or as unusual as wanting to base a television show on your computer game. The structure of our contract will depend on the rights I want from you.

You should think very carefully about what I will be doing with your software. Ask me lots of questions: If I say I just want to use your program on the computers in my office, ask how many computers I have. If I have a main-frame or a work-station set up, ask me how many people will be using the program. Make sure you only grant me the right to use the program on a certain number of computers or that you get paid on a per-computer or per-user basis. If I say I want to adapt your program to fit the needs of my company, ask me whether I will be selling the adaptation.

The key to this part of the negotiation is that you should try to limit what you are granting me. Don't grant me any more than I am paying you for. The only way to make sure that you don't grant me too much is to look very carefully at the language of our license agreement. If all I want to do is to manufacture and distribute copies of your program to wholesalers, don't grant me rights to "use" your program, certainly don't let me change it, just let me "manufacture and distribute" your program. If all I want to do is adapt your program for use by the employees in my business, only grant me the right to make a single "derivative work based on the program" and do not grant me the right to distribute that work. You may want to limit my use of your program to a particular location or a particular type of computer. You may want to prevent me from making my own copies of your program and you will certainly want to prevent my employees from making their own copies. Think about ways I would want to interpret the language of the contract to give myself expanded rights.

IV. HOLDBACKS, REVERSIONS, AND RIGHTS YOU DON'T GRANT

If you grant me the right to distribute copies of your program, you may not want me to alter or change your program in any way, you may not want me to be able to use your program as part of a bigger package of programs and, if your program is a computer game, you may not want me to be able to sell rights in your program to a television producer or a comic book publisher. Be sure to keep as many rights as you can while still allowing me to do my job - distributing your program.

Reversions sometimes can help you to force me to do my job. A reversion is the right to get your program back from me. Let's say that we make a deal and you give me exclusive worldwide rights to distribute your program (unchanged). What if I don't ever get around to doing the distribution? What if after 5 years I am not distributing the program at all? You should anticipate these possible problems and try to get me to agree up front that if I haven't distributed the program for, for example, 2 years, in a particular territory, all the rights you granted me in that territory will revert to you. That way, you could enter into a license agreement with another distributor.

V. LENGTH OF TERM OF GRANT

Obviously, I will want you to grant me the right to distribute your program forever. This may be just fine with you (especially if you have a reversion if I fail to distribute the program, see above). However, you might be more comfortable if we enter into a more limited agreement, let's say for five years. The disadvantage for me (and the reason I would not agree to such a short period) is that I will have spent lots of money manufacturing and advertising your program and I don't want another distributor to profit from my efforts.

If we enter into a license for a limited term, I will want you to give me a right of first negotiation and/or a right of last refusal to continue to distribute your program. If you give me a right of first negotiation then if you want to license to someone else, you will have to come to me first and allow me to negotiate with you for those rights. If we don't reach an agreement, you can license the rights to someone else. If you give me a right of last refusal, once you and a third party finish negotiating you then have to come to me and offer me the same deal you negotiated with that third party. If I don't want the deal, you can go ahead and license to the third party.

For a contract that allows me on a non-exclusive basis to make a derivative work based on your program, you will have to grant me rights forever. Otherwise, I won't be able to use my program I based on your program because I would be distributing an unlicensed derivative work (see my previous column, MacTutor, Vol. 8, No. 3, July, 1992, “Copyright Basics for the Programmer”).

VI. TERRITORY

Certainly the market for computer programs is vibrant in North America, Europe and Japan and almost non-existent in developing countries. It may be easiest for you to license me the worldwide right to distribute your program (this would certainly get me behind your program and efficiently using my company's resources to promote and distribute it). On the other hand, you may be able to negotiate more up-front money if you enter into distribution agreements with several distributors.

VII. OTHER GRANTS (ADVERTISEMENT; "GRANT BACK" CLAUSES)

A. Right to Advertise and Promote.

If you or your company is particularly well known and it might behoove me to use your company's name to advertise the program, I may ask you to grant me that right.

B. "Grant Back Clause"

As you know, programs are upgraded all the time. So, what happens when you license your program to me so that I can distribute it directly to the public but you then go and make a big improvement on the program? I wouldn't want to be left out in the cold with an old version of your program but you wouldn't be able to distribute your program without me because you have granted me an exclusive license in the original program (and your updated version would be considered a derivative work of the original program you licensed to me exclusively).

A great way to solve this problem is with a "grant back clause". A grant back clause (sometimes called an "improvement exchange clause") automatically gives me the right to distribute the new and improved version of your program. We both benefit because the better your program, the more I can sell and the more I sell the more money you make.

So, what if I write the new and updated version of your program? I can do that if (as is standard) you have granted me the right to "adapt" or "change" or even to make a derivative work from your original program. The grant back clause should cover that too. We can agree that I get to keep the copyright in the changes I made to your program, but I will give you a non-exclusive perpetual license to use my changes only as part of your program.

VIII. REPRESENTATIONS AND WARRANTIES

I am definitely going to want you to promise me that you wrote the program, that you didn't violate anyone else's rights under copyright, patent, trademark or trade secret in writing the program, that you haven't assigned or mortgaged any part of the program to anyone else and, maybe, that your program is suitable for the use I want to put it to. I certainly would want you to represent and warrant to me that you are the sole owner and inventor of your program and all the technology within your program.1

If your program might be infringing upon someone else's patent (i.e., if your program uses technology that may be patented), it could easily be worth your while to have a patent search done. Alternatively, you could place the burden on me to do the search. But I would want to take the cost of that search out of any payments I would make to you.

Especially if I am licensing your program to use it in my business, I will want you to represent and warrant that your program is right for my business and will work in the way I want it to. I will want these promises from you because I rely on your program to make my business run smoothly. If your program doesn't live up to my expectations, I will lose time, lose productivity and lose money and I will want to be able to sue you for all these damages. Try not to take on this kind of liability.

Be very careful about what you represent and warrant (i.e., promise) because I can come back and sue you if you are mistaken.

Of course, you may want me to represent and warrant various things to you. For example, if I am licensing your program to use it in my business, you may want me to promise that I will prevent, or at least try to prevent, my employees from copying your program and taking it home and using it on their home computers. You may want me to promise to put "no copying" notices on the program.

IX. INDEMNITIES

The other reason that you should be careful regarding representations and warranties is that I will ask you to "indemnify" me for any breach of your promise. That means, if you license your program to me and promise you haven't licensed it to anyone else and Joe down the street sues me saying you licensed him exclusive rights to your program, you will have to reimburse me for my attorney's fees, court costs, and for any money I have to pay to Joe.

X. CONSIDERATION (ADVANCES, DEFERMENTS, CONTINGENT COMPENSATION, ROYALTIES)

A. Fixed Compensation and Non-refundable Advances.

Remember a bird in the hand is the most valuable sort of bird, So, when you license me your program, make sure I pay you enough up-front money to make it worth your while. For example, let's say we enter into some sort of royalty relationship (see below), you should ask me to give you a non-refundable advance against your royalties. Even better, you may ask me to give you a chunk of cash in addition to the royalties I will be paying you.

B. Fixed Deferments.

A fixed deferment is an amount of money you will get in the future, pretty much no matter what. For example, I may tell you that I don't want to pay you too much money right now, but that I will pay you $20,000 each year over the term of the contract. No matter what happens (except the world coming to an end or my declaration of bankruptcy), I will pay you the money each year. You may want to structure this as part of your royalty package, as a minimum annual payment. Please note, however, that this sort of arrangement is unusual.

C. Royalties and Other Types of Contingent Compensation.

Contingent compensation is exactly what it sounds like it is: money you will only get if something that may or may not happen in the future actually does happen. A royalty is a pretty common form of contingent compensation: if a person buys a copy of your program, then you will get a percentage of the amount that person (or maybe the retailer) paid for that copy of your program. You would get nothing if no one buys any copies of your program. There are other types of contingent compensation as well. For example, you could ask for a bonus if 10,000 units of your program are sold in a certain period of time. That would be called a "contingent deferment". You could also enter into an arrangement (although this would be highly unusual) to get a percentage of the profits I get from distributing your program. This way if it costs me 5 cents to manufacture a copy of your program and another 10 cents to advertise it and I sell your program to wholesalers at $20 per copy, you will be able to tap into my profits.

Royalties are the most common form of contingent compensation. Make sure that your royalty clause defines the unit upon which your royalty will be based (is it per package of your program to the public? Is it per package of your program bought by a retailer? Must the sale to the retailer be final or could the retailer still return unsold copies of your program, if so would you still get your royalty?). Your royalty might be calculated based on a fixed amount per copy sold (e.g., $5 per copy) or on a percentage per copy sold (e.g., 5% of the wholesale selling price per copy sold to the public). If you go with the percentage basis (and this is more common) you should figure out whether it is better to get a smaller percentage of the retail price or a larger percentage of the wholesale price. Typically a licensee will want to give you a percentage of the wholesale price because retail prices fluctuate so much that it would be almost impossible to account on that basis.

One thing that I may want in our license agreement would be the option (exercisable in my sole discretion) to buy you out of your royalties by paying you some big chunk of money. Unless the money I offer you is really big, you probably should not take me up on this because I will only exercise my option if I think that in the end I will be paying you less money.

XI. ACCOUNTINGS AND AUDITS

If you are getting any form of contingent compensation, you should make sure that your license agreement requires me to send you statements every 6 months or every year and that, if you think I am monkeying with the statements, you can audit my books. This audit right will typically allow you to go in and look at my records regarding a statement I sent you less than a year ago. If you don't audit me promptly, you will give up that right. The lesson here is (1) make sure our contract allows you to audit me, (2) make sure you can protest a statement I send to you for at least one year (preferably two) after you receive the statement, and (3) make sure you actually do audit me every once in a while.

XII. CONFIDENTIALITY

There are two things you probably want to keep confidential about your license agreement. The first is the money terms of agreement itself (I shouldn't be able to run around town telling everyone how little I paid you for your program), the second is the plans you have to develop your program. The second is the more important consideration, especially if you and I enter into our agreement before you have had a chance to finish your program.

If my company is looking to create a virtual reality program using, among other things, your computer animation program, I might want to license your existing program while also working with you to adapt your program to my virtual reality environment. I would not want you to tell anyone about the program I'm creating and neither would you want me to discuss with my friends the thoughts you have on improving your program.

A confidentiality clause should, at a minimum, cover the following issues:

(1) It should define what a trade secret is, that if in the future I disclose to the public something that is secret now, then you are relieved from your obligation to keep that information a secret.

(2) It should bind the employees and contractors and the licensees and subdistributors of both our companies.

(3) It should be perpetual (i.e., it stays in effect even after the license has terminated).

(4) It should agree to comply with the import/export laws of all applicable countries.

(5) It can also contain a "liquidated damages" provision whereby you and I can agree on the amount the discloser of the trade secret must pay the damaged party.

XIII. OBLIGATIONS OF LICENSEE TO DISTRIBUTE AND PROMOTE

Especially if I am licensing the exclusive right to distribute your program from you, you may want to obligate me to actually distribute the program. After all, your royalty payments are dependent upon my doing a good job of distributing. At the least, you may want me to promise to spend X number of dollars in advertising your program or to manufacture X number of units.

I, of course, will resist this because I don't want our license agreement to interfere with my business judgement. If, for example, after you and I enter into a licensing agreement, a competitor comes out with a much better program, I will want to cut my losses and simply not expend the money to distribute your program.

XIV. ASSIGNMENTS AND SUBLICENSES

I will definitely want to be able to assign my rights under my agreement with you to someone else. This way, if I want to get out of the business of licensing your type of program, I can still make a little money off our agreement. Probably you would be able to profit too. But, what happens if I sell my license to a giant computer company that has a product which competes with your program and that giant company simply takes your program off the market? What happens if I sell my license to a tiny company that fails to account to you properly? You will want to protect against these possibilities.

The easiest way to protect yourself would be to require me to get your written permission any time I want to assign any of my rights in the license agreement. Alternatively, you could limit the type of people to whom I could assign the agreement. Whatever you decide, you should try to keep me on the hook if the person to whom I assign the agreement breaches it.

Sublicensing agreements also can be sticky. Especially if your contingent compensation is calculated from the money I take in. If I sublicense I may be taking in less money from each unit of your program (after all, my sublicensee has to get his or her cut). You will want me to be liable for any wrongdoing of my sublicensee and you will also want to make sure that any sublicensee takes on my obligations to you. That way you could sue either of us if we breach the agreement.

XV. TERMINATION OF GRANT

The economy being what it is you may want to provide that if I declare bankruptcy the grant of rights is automatically terminated (or that you have the right to terminate the grant if I go into bankruptcy). We both will want the right to terminate the license (except the confidentiality clause) if the other party breaches the contract.

One thing to think about is what happens to all the copies of your program when our license ends or is terminated. You may require that I destroy all extra copies or you could try to make me agree to return all extra copies to you.

XVI. BREACHES

If our agreement allows me to make and sell a derivative work based on your program I will definitely want you to agree that, if I breach my contract with you (for example, by failing to send you your royalty check on time), you can only sue me for damages and you cannot enjoin me (prevent me) from distributing my program based on yours. You are going to want to be able to terminate the agreement and enjoin me from distributing my program if I "materially" breach our agreement. That will give you a lot of bargaining power if I ever breach.

One thing you should ask for, but I will resist giving you, is a promise from me that, even if you have breached our agreement by failing to provide me with a program that does what I want it to do, I will still have to pay you for the program. Some people call this a "Hell or High Water" clause. If you can convince me to give you this, you are one heck of a bargainer.

XVII. CONCLUSION

Spend time thinking about any license agreement you enter into. If someone hands you their standard form, make sure you understand it. Make sure that you are only licensing what you want to license. Make sure you are making no promises you can't keep. Hiring a lawyer to review the contract will help but don't give up total control to a lawyer. You're the one licensing out your creation and no one will care as much about it as you.

1Be aware that the Uniform Commercial Code will apply to some license agreements and to all sale agreements involving the sale of goods. If you are selling me a pre-packaged piece of software, our agreement is almost certainly covered by the UCC. If you are merely licensing me the right to make a derivative work utilizing your technology, the UCC may not apply. This is relevant because the UCC contains warranties that are silently and automatically written into our agreement. There is an implied warranty of merchantability (that your program is fit for ordinary use) and also an implied warranty of fitness for a particular use (that, if I am relying on you to solve a particular problem I have described to you, that your program will do that job). You will probably want to disclaim these warranties and to license me your program "as is."

 
AAPL
$100.96
Apple Inc.
-0.83
MSFT
$47.52
Microsoft Corpora
+0.84
GOOG
$596.08
Google Inc.
+6.81

MacTech Search:
Community Search:

Software Updates via MacUpdate

Audio Hijack Pro 2.11.3 - Record and enh...
Audio Hijack Pro drastically changes the way you use audio on your computer, giving you the freedom to listen to audio when you want and how you want. Record and enhance any audio with Audio Hijack... Read more
Airfoil 4.8.9 - Send audio from any app...
Airfoil allows you to send any audio to AirPort Express units, Apple TVs, and even other Macs and PCs, all in sync! It's your audio - everywhere. With Airfoil you can take audio from any... Read more
WhatRoute 1.13.0 - Geographically trace...
WhatRoute is designed to find the names of all the routers an IP packet passes through on its way from your Mac to a destination host. It also measures the round-trip time from your Mac to the... Read more
Chromium 37.0.2062.122 - Fast and stable...
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all Internet users to experience the web. FreeSMUG-Free OpenSource Mac User Group build is... Read more
Attachment Tamer 3.1.14b9 - Take control...
Attachment Tamer gives you control over attachment handling in Apple Mail. It fixes the most annoying Apple Mail flaws, ensures compatibility with other email software, and allows you to set up how... Read more
Duplicate Annihilator 5.0 - Find and del...
Duplicate Annihilator takes on the time-consuming task of comparing the images in your iPhoto library using effective algorithms to make sure that no duplicate escapes. Duplicate Annihilator detects... Read more
jAlbum Pro 12.2 - Organize your digital...
jAlbum Pro has all the features you love in jAlbum, but comes with a commercial license. With jAlbum, you can create gorgeous custom photo galleries for the Web without writing a line of code!... Read more
jAlbum 12.2 - Create custom photo galler...
With jAlbum, you can create gorgeous custom photo galleries for the Web without writing a line of code! Beginner-friendly, with pro results Simply drag and drop photos into groups, choose a design... Read more
Quicken 2015 2.0.4 - Complete personal f...
Quicken 2015 helps you manage all your personal finances in one place, so you can see where you're spending and where you can save. Quicken automatically categorizes your financial transactions,... Read more
iMazing 1.0 - Complete iOS device manage...
iMazing (formerly DiskAid) is the ultimate iOS device manager with capabilities far beyond what iTunes offers. With iMazing and your iOS device (iPhone, iPad, or iPod), you can: Copy music to and... Read more

Latest Forum Discussions

See All

View Source – HTML, JavaScript and CSS...
View Source – HTML, JavaScript and CSS 1.0 Device: iOS Universal Category: Utilities Price: $.99, Version: 1.0 (iTunes) Description: View Source is an app plus an iOS 8 Safari extension that makes it easy to do one key web developer... | Read more »
Avenged Sevenfold’s Hail To The King: De...
Avenged Sevenfold’s Hail To The King: Deathbat is Coming to iOS on October 16th Posted by Jessica Fisher on September 19th, 2014 [ permalink ] Just in time for Halloween, on October 16 Avenged Sevenfold will be launching | Read more »
Talisman Has Gone Universal – Can Now be...
Talisman Has Gone Universal – Can Now be Played on the iPhone Posted by Jessica Fisher on September 19th, 2014 [ permalink ] | Read more »
Tap Army Review
Tap Army Review By Jennifer Allen on September 19th, 2014 Our Rating: :: SHOOT EM ALLUniversal App - Designed for iPhone and iPad Mindless but fun, Tap Army is a lane-based shooter that should help you relieve some stress.   | Read more »
Monsters! Volcanoes! Loot! Epic Island f...
Monsters! Volcanoes! Loot! | Read more »
Plunder Pirates: Tips, Tricks, Strategie...
Ahoy There, Seadogs: Interested in knowing our thoughts on all this plundering and pirating? Check out our Plunder Pirates Review! Have you just downloaded the rather enjoyable pirate-em-up Plunder Pirates and are in need of some assistance? Never... | Read more »
Goat Simulator Review
Goat Simulator Review By Lee Hamlet on September 19th, 2014 Our Rating: :: THE GRUFFEST OF BILLY GOATSUniversal App - Designed for iPhone and iPad Unleash chaos as a grumpy goat in this humorous but short-lived casual game.   | Read more »
A New and Improved Wunderlist is Here fo...
A New and Improved Wunderlist is Here for iOS 8 Posted by Jessica Fisher on September 19th, 2014 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
Evernote Update for iOS 8 Adds Web Clipp...
Evernote Update for iOS 8 Adds Web Clipping, Quick Notes, and More Posted by Ellis Spice on September 19th, 2014 [ permalink ] | Read more »
Apple Names Ultimate Productivity Bundl...
Apple Names Ultimate Productivity Bundle by Readdle as the Essential Bundle on the App Store Posted by Jessica Fisher on September 19th, 2014 [ permalink | Read more »

Price Scanner via MacPrices.net

iFixIt Tears Down iPhone 6; Awards Respectabl...
iFixit notes that even the smaller 4.7″ iPhone 6 is a giant among iPhones; so big that Apple couldn’t fit it into the familiar iPhone form factor. In a welcome reversal of a recent trend to more or... Read more
Phone 6 Guide – Tips Book For Both iPhone 6...
iOS Guides has announced its latest eBook: iPhone 6 Guide. Brought to you by the expert team at iOS Guides, and written by best-selling technology author Tom Rudderham, iPhone 6 Guide is packed with... Read more
How to Upgrade iPhone iPad to iOS 8 without D...
PhoneClean, a iPhone cleaner utility offered by iMobie Inc., reveals a solution for upgrading iPhone and iPad to iOS 8 without deleting photos, apps, the new U2 album or anything. Thanks to more than... Read more
Inpaint 6 – Photo Retouching Tool Gets Faster...
TeoreX has announced Inpaint 6, a simple retouching tool for end users that helps remove scratches, watermarks, and timestamps as well as more complex objects like strangers, unwanted elements and... Read more
Worldwide PC Monitor Market Sees Growth in To...
Worldwide PC monitor shipments totaled 32.5 million units in the second quarter of 2014 (2Q14), a year-over-year decline of -2.9%, according to the International Data Corporation (IDC) Worldwide... Read more
Updated Price Trackers
We’ve updated our Mac Price Trackers with the latest information on prices, bundles, and availability on systems from Apple’s authorized internet/catalog resellers: - 15″ MacBook Pros - 13″ MacBook... Read more
Mac Pros available for up to $260 off MSRP
Adorama has Mac Pros on sale for up to $260 off MSRP. Shipping is free, and Adorama charges sales tax in NY & NJ only: - 4-core Mac Pro: $2839.99, $160 off MSRP - 6-core Mac Pro: $3739.99, $260... Read more
13-inch 2.6GHz/256GB Retina MacBook Pros avai...
B&H Photo has the 13″ 2.6GHz/256GB Retina MacBook Pro on sale for $1379 including free shipping plus NY sales tax only. Their price is $120 off MSRP. Read more
Previous-generation 15-inch 2.0GHz Retina Mac...
B&H Photo has leftover previous-generation 15″ 2.0GHz Retina MacBook Pros now available for $1599 including free shipping plus NY sales tax only. Their price is $400 off original MSRP. B&H... Read more
21″ 2.7GHz iMac available for $1179, save $12...
Adorama has 21″ 2.7GHz Hawell iMacs on sale for $1179.99 including free shipping. Their price is $120 off MSRP. NY and NJ sales tax only. Read more

Jobs Board

*Apple* Retail - Multiple Positions (US) - A...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
Position Opening at *Apple* - Apple (United...
**Job Summary** At the Apple Store, you connect business professionals and entrepreneurs with the tools they need in order to put Apple solutions to work in their Read more
Position Opening at *Apple* - Apple (United...
**Job Summary** The Apple Store is a retail environment like no other - uniquely focused on delivering amazing customer experiences. As an Expert, you introduce people Read more
Position Opening at *Apple* - Apple (United...
**Job Summary** As businesses discover the power of Apple computers and mobile devices, it's your job - as a Solutions Engineer - to show them how to introduce these Read more
Position Opening at *Apple* - Apple (United...
…Summary** As a Specialist, you help create the energy and excitement around Apple products, providing the right solutions and getting products into customers' hands. You Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.