diff --git a/bpl/1960/1-in/bpl-1960-letter.txt b/bpl/1960/1-in/bpl-1960-letter.txt new file mode 100644 index 0000000..a49d36f --- /dev/null +++ b/bpl/1960/1-in/bpl-1960-letter.txt @@ -0,0 +1,219 @@ +1960 Letter + +WARREN E. BUFFETT + +5202 Underwood Ave. Omaha, Nebraska + +The General Stock Market in 1960: + +A year ago, I commented on the somewhat faulty picture presented in 1959 by the Dow-Jones Industrial +Average which had advanced from 583 to 679, or 16.4%. Although practically all investment companies +showed gains for that year, less than 10% of them were able to match or better the record of the Industrial +Average. The Dow-Jones Utility Average had a small decline and the Railroad Average recorded a substantial +one. + +In 1960, the picture was reversed. The Industrial Average declined from 679 to 616, or 9.3%. Adding back the +dividends which would have been received through ownership of the Average still left it with an overall loss of +6.3%. On the other hand, the Utility Average showed a good gain and, while all the results are not now +available, my guess is that about 90% of all investment companies outperformed the Industrial Average. The +majority of investment companies appear to have ended the year with overall results in the range of plus or +minus 5%. On the New York Stock Exchange, 653 common stocks registered losses for the year while 404 +showed gains. + +Results in 1960: + +My continual objective in managing partnership funds is to achieve a long-term performance record superior to +that of the Industrial Average. I believe this Average, over a period of years, will more or less parallel the results +of leading investment companies. Unless we do achieve this superior performance there is no reason for +existence of the partnerships. + +However, I have pointed out that any superior record which we might accomplish should not be expected to be +evidenced by a relatively constant advantage in performance compared to the Average. Rather it is likely that if +such an advantage is achieved, it will be through better-than-average performance in stable or declining markets +and average, or perhaps even poorer- than-average performance in rising markets. + +I would consider a year in which we declined 15% and the Average 30% to be much superior to a year when +both we and the Average advanced 20%. Over a period of time there are going to be good and bad years; there is +nothing to be gained by getting enthused or depressed about the sequence in which they occur. The important +thing is to be beating par; a four on a par three hole is not as good as a five on a par five hole and it is unrealistic +to assume we are not going to have our share of both par three's and par five's. + +The above dose of philosophy is being dispensed since we have a number of new partners this year and I want to +make sure they understand my objectives, my measure of attainment of these objectives, and some of my known +limitations. + +With this background it is not unexpected that 1960 was a better-than-average year for us. As contrasted with an +overall loss of 6.3% for the Industrial Average, we had a 22.8% gain for the seven partnerships operating +throughout the year. Our results for the four complete years of partnership operation after expenses but before +interest to limited partners or allocation to the general partner are: + +[TABLE] +Year & Partnerships Operating Entire Year & Partnership Gain & Dow-Jones Gain +1957 3 10.4% -8.4% +1958 5 40.9% 38.5% +1959 6 25.9% 19.9% +1960 7 22.8% -6.3% +[/TABLE] + +it should be emphasized again that these are the net results to the partnership; the net results to the limited +partners would depend on the partnership agreement that they had selected. + +The overall gain or loss is computed on a market to market basis. After allowing for any money added or +withdrawn, such a method gives results based upon what would have been realized upon liquidation of the +partnership at the beginning, of the year and what would have been realized upon liquidation at year end and is +different, of course, from our tax results, which value securities at cost and realize gains or losses only when +securities are actually sold. + +On a compounded basis, the cumulative results have been: + +[TABLE] +Year & Cumulative Partnership Gain & Cumulative Dow-Jones Gain +1957 10.4% -8.4% +1958 55.6% 26.9% +1959 95.9% 52.2% +1960 140.6% 42.6% +[/TABLE] + +Although four years is entirely too short a period from which to make deductions, what evidence there is points +toward confirming the proposition that our results should be relatively better in moderately declining or static +markets. To the extent that this is true, it indicates that our portfolio may be more conservatively, although +decidedly less conventionally, invested than if we owned "blue-chip" securities. During a strongly rising market +for the latter, we might have real difficulty in matching their performance. + +Multiplicity of Partnerships: + +A preceding table shows that the family is growing. There has been no partnership which has had a consistently +superior or inferior record compared to our group average, but there has been some variance each year despite +my efforts to "keep all partnerships invested in the same securities and in about the same proportions. This +variation, of course, could be eliminated by combining the present partnerships into one large partnership. Such +a move would also eliminate much detail and a moderate amount of expense. + +Frankly, I am hopeful of doing something along this line in the next few years. The problem is that various +partners have expressed preferences for varying partnership arrangements. Nothing will be done without +unanimous consent of partners. + +Advance Payments: + +Several partners have inquired about adding money during the year to their partnership. Although an exception +has been made, it is too difficult to amend partnership agreements during mid-year where we have more than +one family represented among the limited partners. Therefore, in mixed partnerships an additional interest can +only be acquired at the end of the year. + +We do accept advance payments during the year toward a partnership interest and pay interest at 6% on this +payment from the time received until the end of the year. At that time, subject to amendment of the agreement +by the partners, the payment plus interest is added to the partnership capital and thereafter participates in profits +and losses. + +Sanborn Map: + +Last year mention was made of an investment which accounted for a very high and unusual proportion (35%) of +our net assets along with the comment that I had some hope this investment would be concluded in 1960. This +hope materialized. The history of an investment of this magnitude may be of interest to you. +Sanborn Map Co. is engaged in the publication and continuous revision of extremely detailed maps of all cities +of the United States. For example, the volumes mapping Omaha would weigh perhaps fifty pounds and provide +minute details on each structure. The map would be revised by the paste-over method showing new +construction, changed occupancy, new fire protection facilities, changed structural materials, etc. These +revisions would be done approximately annually and a new map would be published every twenty or thirty years +when further pasteovers became impractical. The cost of keeping the map revised to an Omaha customer would +run around $100 per year. + +This detailed information showing diameter of water mains underlying streets, location of fire hydrants, +composition of roof, etc., was primarily of use to fire insurance companies. Their underwriting departments, +located in a central office, could evaluate business by agents nationally. The theory was that a picture was worth +a thousand words and such evaluation would decide whether the risk was properly rated, the degree of +conflagration exposure in an area, advisable reinsurance procedure, etc. The bulk of Sanborn's business was +done with about thirty insurance companies although maps were also sold to customers outside the insurance +industry such as public utilities, mortgage companies, and taxing authorities. + +For seventy-five years the business operated in a more or less monopolistic manner, with profits realized in +every year accompanied by almost complete immunity to recession and lack of need for any sales effort. In the +earlier years of the business, the insurance industry became fearful that Sanborn's profits would become too +great and placed a number of prominent insurance men on Sanborn's board of directors to act in a watch-dog +capacity. + +In the early 1950’s a competitive method of under-writing known as "carding" made inroads on Sanborn’s +business and after-tax profits of the map business fell from an average annual level of over $500,000 in the late +1930's to under $100,000 in 1958 and 1959. Considering the upward bias in the economy during this period, this +amounted to an almost complete elimination of what had been sizable, stable earning power. + +However, during the early 1930's Sanborn had begun to accumulate an investment portfolio. There were no +capital requirements to the business so that any retained earnings could be devoted to this project. Over a period +of time, about $2.5 million was invested, roughly half in bonds and half in stocks. Thus, in the last decade +particularly, the investment portfolio blossomed while the operating map business wilted. + +Let me give you some idea of the extreme divergence of these two factors. In 1938 when the Dow-Jones +Industrial Average was in the 100-120 range, Sanborn sold at $110 per share. In 1958 with the Average in the +550 area, Sanborn sold at $45 per share. Yet during that same period the value of the Sanborn investment +portfolio increased from about $20 per share to $65 per share. This means, in effect, that the buyer of Sanborn +stock in 1938 was placing a positive valuation of $90 per share on the map business ($110 less the $20 value of +the investments unrelated to the map business) in a year of depressed business and stock market conditions. In +the tremendously more vigorous climate of 1958 the same map business was evaluated at a minus $20 with the +buyer of the stock unwilling to pay more than 70 cents on the dollar for the investment portfolio with the map +business thrown in for nothing. + +How could this come about? Sanborn in 1958 as well as 1938 possessed a wealth of information of substantial +value to the insurance industry. To reproduce the detailed information they had gathered over the years would +have cost tens of millions of dollars. Despite “carding” over $500 million of fire premiums were underwritten +by “mapping” companies. However, the means of selling and packaging Sanborn’s product, information had +remained unchanged throughout the year and finally this inertia was reflected in the earnings. + +The very fact that the investment portfolio had done so well served to minimize in the eyes of most directors the +need for rejuvenation of the map business. Sanborn had a sales volume of about $2 million per year and owned +about $7 million worth of marketable securities. The income from the investment portfolio was substantial, the +business had no possible financial worries, the insurance companies were satisfied with the price paid for maps, +and the stockholders still received dividends. However, these dividends were cut five times in eight years +although I could never find any record of suggestions pertaining to cutting salaries or director's and committee +fees. + +Prior to my entry on the Board, of the fourteen directors, nine were prominent men from the insurance industry +who combined held 46 shares of stock out of 105,000 shares outstanding. Despite their top positions with very +large companies which would suggest the financial wherewithal to make at least a modest commitment, the +largest holding in this group was ten shares. In several cases, the insurance companies these men ran owned +small blocks of stock but these were token investments in relation to the portfolios in which they were held. For +the past decade the insurance companies had been only sellers in any transactions involving Sanborn stock. + +The tenth director was the company attorney, who held ten shares. The eleventh was a banker with ten shares +who recognized the problems of the company, actively pointed them out, and later added to his holdings. The +next two directors were the top officers of Sanborn who owned about 300 shares combined. The officers were +capable, aware of the problems of the business, but kept in a subservient role by the Board of Directors. The +final member of our cast was a son of a deceased president of Sanborn. The widow owned about 15,000 shares +of stock. + +In late 1958, the son, unhappy with the trend of the business, demanded the top position in the company, was +turned down, and submitted his resignation, which was accepted. Shortly thereafter we made a bid to his mother +for her block of stock, which was accepted. At the time there were two other large holdings, one of about 10,000 +shares (dispersed among customers of a brokerage firm) and one of about 8,000. These people were quite +unhappy with the situation and desired a separation of the investment portfolio from the map business, as did +we. + +Subsequently our holdings (including associates) were increased through open market purchases to about 24,000 +shares and the total represented by the three groups increased to 46,000 shares. We hoped to separate the two +businesses, realize the fair value of the investment portfolio and work to re-establish the earning power of the +map business. There appeared to be a real opportunity to multiply map profits through utilization of Sanborn's +wealth of raw material in conjunction with electronic means of converting this data to the most usable form for +the customer. + +There was considerable opposition on the Board to change of any type, particularly when initiated by an +outsider, although management was in complete accord with our plan and a similar plan had been recommended +by Booz, Allen & Hamilton (Management Experts). To avoid a proxy fight (which very probably would not +have been forthcoming and which we would have been certain of winning) and to avoid time delay with a large +portion of Sanborn’s money tied up in blue-chip stocks which I didn’t care for at current prices, a plan was +evolved taking out all stockholders at fair value who wanted out. The SEC ruled favorably on the fairness of the +plan. About 72% of the Sanborn stock, involving 50% of the 1,600 stockholders, was exchanged for portfolio +securities at fair value. The map business was left with over $l,25 million in government and municipal bonds as +a reserve fund, and a potential corporate capital gains tax of over $1 million was eliminated. The remaining +stockholders were left with a slightly improved asset value, substantially higher earnings per share, and an +increased dividend rate. + +Necessarily, the above little melodrama is a very abbreviated description of this investment operation. However, +it does point up the necessity for secrecy regarding our portfolio operations as well as the futility of measuring +our results over a short span of time such as a year. Such control situations may occur very infrequently. Our +bread-and-butter business is buying undervalued securities and selling when the undervaluation is corrected +along with investment in special situations where the profit is dependent on corporate rather than market action. +To the extent that partnership funds continue to grow, it is possible that more opportunities will be available in +“control situations.” + +The auditors should be mailing your financial statement and tax information within about a week. If you have +any questions at all regarding either their report or this letter, be sure to let me know. + +Warren E. Buffett 1-30-61 diff --git a/bpl/1960/bpl-1960.mp3 b/bpl/1960/bpl-1960.mp3 new file mode 100644 index 0000000..1017c46 Binary files /dev/null and b/bpl/1960/bpl-1960.mp3 differ diff --git a/bpl/1960/inputs-bpl-1960.txt b/bpl/1960/inputs-bpl-1960.txt new file mode 100644 index 0000000..89a8a80 --- /dev/null +++ b/bpl/1960/inputs-bpl-1960.txt @@ -0,0 +1,111 @@ +file 3-wavs/output-000.wav' +file 3-wavs/output-001.wav' +file 3-wavs/output-002.wav' +file 3-wavs/output-003.wav' +file 3-wavs/output-004.wav' +file 3-wavs/output-005.wav' +file 3-wavs/output-006.wav' +file 3-wavs/output-007.wav' +file 3-wavs/output-008.wav' +file 3-wavs/output-009.wav' +file 3-wavs/output-010.wav' +file 3-wavs/output-011.wav' +file 3-wavs/output-012.wav' +file 3-wavs/output-013.wav' +file 3-wavs/output-014.wav' +file 3-wavs/output-015.wav' +file 3-wavs/output-016.wav' +file 3-wavs/output-017.wav' +file 3-wavs/output-018.wav' +file 3-wavs/output-019.wav' +file 3-wavs/output-020.wav' +file 3-wavs/output-021.wav' +file 3-wavs/output-022.wav' +file 3-wavs/output-023.wav' +file 3-wavs/output-024.wav' +file 3-wavs/output-025.wav' +file 3-wavs/output-026.wav' +file 3-wavs/output-027.wav' +file 3-wavs/output-028.wav' +file 3-wavs/output-029.wav' +file 3-wavs/output-030.wav' +file 3-wavs/output-031.wav' +file 3-wavs/output-032.wav' +file 3-wavs/output-033.wav' +file 3-wavs/output-034.wav' +file 3-wavs/output-035.wav' +file 3-wavs/output-036.wav' +file 3-wavs/output-037.wav' +file 3-wavs/output-038.wav' +file 3-wavs/output-039.wav' +file 3-wavs/output-040.wav' +file 3-wavs/output-041.wav' +file 3-wavs/output-042.wav' +file 3-wavs/output-043.wav' +file 3-wavs/output-044.wav' +file 3-wavs/output-045.wav' +file 3-wavs/output-046.wav' +file 3-wavs/output-047.wav' +file 3-wavs/output-048.wav' +file 3-wavs/output-049.wav' +file 3-wavs/output-050.wav' +file 3-wavs/output-051.wav' +file 3-wavs/output-052.wav' +file 3-wavs/output-053.wav' +file 3-wavs/output-054.wav' +file 3-wavs/output-055.wav' +file 3-wavs/output-056.wav' +file 3-wavs/output-057.wav' +file 3-wavs/output-058.wav' +file 3-wavs/output-059.wav' +file 3-wavs/output-060.wav' +file 3-wavs/output-061.wav' +file 3-wavs/output-062.wav' +file 3-wavs/output-063.wav' +file 3-wavs/output-064.wav' +file 3-wavs/output-065.wav' +file 3-wavs/output-066.wav' +file 3-wavs/output-067.wav' +file 3-wavs/output-068.wav' +file 3-wavs/output-069.wav' +file 3-wavs/output-070.wav' +file 3-wavs/output-071.wav' +file 3-wavs/output-072.wav' +file 3-wavs/output-073.wav' +file 3-wavs/output-074.wav' +file 3-wavs/output-075.wav' +file 3-wavs/output-076.wav' +file 3-wavs/output-077.wav' +file 3-wavs/output-078.wav' +file 3-wavs/output-079.wav' +file 3-wavs/output-080.wav' +file 3-wavs/output-081.wav' +file 3-wavs/output-082.wav' +file 3-wavs/output-083.wav' +file 3-wavs/output-084.wav' +file 3-wavs/output-085.wav' +file 3-wavs/output-086.wav' +file 3-wavs/output-087.wav' +file 3-wavs/output-088.wav' +file 3-wavs/output-089.wav' +file 3-wavs/output-090.wav' +file 3-wavs/output-091.wav' +file 3-wavs/output-092.wav' +file 3-wavs/output-093.wav' +file 3-wavs/output-094.wav' +file 3-wavs/output-095.wav' +file 3-wavs/output-096.wav' +file 3-wavs/output-097.wav' +file 3-wavs/output-098.wav' +file 3-wavs/output-099.wav' +file 3-wavs/output-100.wav' +file 3-wavs/output-101.wav' +file 3-wavs/output-102.wav' +file 3-wavs/output-103.wav' +file 3-wavs/output-104.wav' +file 3-wavs/output-105.wav' +file 3-wavs/output-106.wav' +file 3-wavs/output-107.wav' +file 3-wavs/output-108.wav' +file 3-wavs/output-109.wav' +file 3-wavs/output-110.wav' diff --git a/speak.py b/speak.py index df7c609..32cf56e 100644 --- a/speak.py +++ b/speak.py @@ -38,13 +38,39 @@ def synth_sentence(sentence, i): with open(fn) as f: lines = f.readlines() + table_flag = False + table_header_flag = False + table_headers = [] + # Do substitutions first, because often they affect sentence splitting for i in range(len(lines)): + if ((not table_flag) and (lines[i].strip() == "[TABLE]")): + table_flag = True + lines[i] = "" # Empty lines are pruned below + elif (table_flag): + if (not table_header_flag): + table_header_flag = True + table_headers = lines[i].strip().split(" & ") + print(table_headers) + elif (lines[i].strip() == "[/TABLE]"): + table_flag = False + table_header_flag = False + lines[i] = "" # Empty lines are pruned below + else: + # Process normal table row + table_row = lines[i].strip().split(" ") + processed_row = [ + f"{header} {value}" + for (header, value) in zip(table_headers, table_row) + ] + lines[i] = ", ".join(processed_row) + " ;" + print(lines[i]) + for (orig,subst) in SUBSTITUTIONS.items(): lines[i] = lines[i].replace(orig, subst) all_text = ''.join(lines) - sentence_ends = list(re.finditer(r"(\w\w+([\.:;][\s\n])|([\s\n][\s\n]+))", all_text)) + sentence_ends = list(re.finditer(r"(\w\w+([\.:;][\s\n])|([\s\n][\s\n]+)|(\s;\n))", all_text)) start = 0 count = len(sentence_ends)